+static void
+pspp_sheet_view_focus_column (PsppSheetView *tree_view,
+ PsppSheetViewColumn *focus_column,
+ gboolean clamp_column_visible)
+{
+ g_return_if_fail (focus_column != NULL);
+
+ tree_view->priv->focus_column = focus_column;
+ if (!focus_column->button)
+ {
+ pspp_sheet_view_column_set_need_button (focus_column, TRUE);
+ g_return_if_fail (focus_column->button != NULL);
+ }
+
+ if (GTK_CONTAINER (tree_view)->focus_child != focus_column->button)
+ gtk_widget_grab_focus (focus_column->button);
+
+ if (clamp_column_visible)
+ pspp_sheet_view_clamp_column_visible (tree_view, focus_column, FALSE);
+}
+