fixed initial show of names in header window. Variable names only showed up after...
authorFriedrich Beckmann <friedrich.beckmann@gmx.de>
Sun, 3 May 2015 20:22:02 +0000 (22:22 +0200)
committerFriedrich Beckmann <friedrich.beckmann@gmx.de>
Sun, 3 May 2015 20:22:02 +0000 (22:22 +0200)
src/ui/gui/pspp-sheet-view-column.c
src/ui/gui/pspp-sheet-view-column.h
src/ui/gui/pspp-sheet-view.c

index 5e5804e812a87926e98d6b951d091081de002b82..d4633672014865078debf4ba50d05a9a74a1015e 100644 (file)
@@ -512,7 +512,6 @@ pspp_sheet_view_column_init (PsppSheetViewColumn *tree_column)
   tree_column->use_resized_width = FALSE;
   tree_column->title = g_strdup ("");
   tree_column->quick_edit = TRUE;
-  tree_column->need_button = FALSE;
 }
 
 static void
@@ -1021,10 +1020,8 @@ pspp_sheet_view_column_create_button (PsppSheetViewColumn *tree_column)
   g_return_if_fail (PSPP_IS_SHEET_VIEW (tree_view));
   g_return_if_fail (tree_column->button == NULL);
 
-  gtk_widget_push_composite_child ();
   tree_column->button = gtk_button_new ();
   gtk_widget_add_events (tree_column->button, GDK_POINTER_MOTION_MASK);
-  gtk_widget_pop_composite_child ();
 
   /* make sure we own a reference to it as well. */
   if (tree_view->priv->header_window)
@@ -1097,8 +1094,7 @@ pspp_sheet_view_column_update_button (PsppSheetViewColumn *tree_column)
     model = NULL;
 
   /* Create a button if necessary */
-  if (tree_column->need_button &&
-      tree_column->visible &&
+  if (tree_column->visible &&
       tree_column->button == NULL &&
       tree_column->tree_view &&
       gtk_widget_get_realized (tree_column->tree_view))
@@ -1212,7 +1208,7 @@ pspp_sheet_view_column_update_button (PsppSheetViewColumn *tree_column)
     {
       if (tree_column->visible)
        {
-         gtk_widget_show_now (tree_column->button);
+         gtk_widget_show (tree_column->button);
          if (tree_column->window)
            {
              if (tree_column->resizable)
@@ -1586,7 +1582,7 @@ _pspp_sheet_view_column_realize_button (PsppSheetViewColumn *column)
   g_return_if_fail (PSPP_IS_SHEET_VIEW (tree_view));
   g_return_if_fail (gtk_widget_get_realized (GTK_WIDGET (tree_view)));
   g_return_if_fail (tree_view->priv->header_window != NULL);
-  if (!column->need_button || !column->button)
+  if (!column->button)
     return;
 
   g_return_if_fail (column->button != NULL);
@@ -1654,8 +1650,7 @@ _pspp_sheet_view_column_set_tree_view (PsppSheetViewColumn *column,
   g_assert (column->tree_view == NULL);
 
   column->tree_view = GTK_WIDGET (tree_view);
-  if (column->need_button)
-    pspp_sheet_view_column_create_button (column);
+  pspp_sheet_view_column_create_button (column);
 
   column->property_changed_signal =
          g_signal_connect_swapped (tree_view,
@@ -4396,15 +4391,3 @@ pspp_sheet_view_column_can_focus (PsppSheetViewColumn       *tree_column)
 {
   return tree_column->reorderable || tree_column->clickable;
 }
-
-void
-pspp_sheet_view_column_set_need_button (PsppSheetViewColumn       *tree_column,
-                                        gboolean                   need_button)
-{
-  if (tree_column->need_button != need_button)
-    {
-      tree_column->need_button = need_button;
-      pspp_sheet_view_column_update_button (tree_column);
-      _pspp_sheet_view_column_realize_button (tree_column);
-    }
-}
index 9a0e9b5d600533c5e50da7274a573e653c592746..95ba779508dacfd376c3bffc233eda5537640e1f 100644 (file)
@@ -111,7 +111,6 @@ struct _PsppSheetViewColumn
   guint PSEAL (selectable)          : 1;
   guint PSEAL (row_head)            : 1;
   guint PSEAL (tabbable)            : 1;
-  guint PSEAL (need_button)         : 1;
 };
 
 struct _PsppSheetViewColumnClass
@@ -262,8 +261,6 @@ void                    pspp_sheet_view_column_size_request       (PsppSheetView
 void                    pspp_sheet_view_column_size_allocate       (PsppSheetViewColumn       *tree_column,
                                                                     GtkAllocation             *allocation);
 gboolean                pspp_sheet_view_column_can_focus           (PsppSheetViewColumn       *tree_column);
-void                    pspp_sheet_view_column_set_need_button     (PsppSheetViewColumn       *tree_column,
-                                                                    gboolean                   need_button);
 
 G_END_DECLS
 
index c2e3fe45796f03cbfb024e1b376e615a162ce856..7c80ec0c0284938e0d356d283a01e43e395b780e 100644 (file)
@@ -1979,12 +1979,6 @@ pspp_sheet_view_size_allocate_columns (GtkWidget *widget,
 
       pspp_sheet_view_column_size_allocate (column, &col_allocation);
 
-      if (span_intersects (col_allocation.x, col_allocation.width,
-                           gtk_adjustment_get_value (tree_view->priv->hadjustment),
-                           allocation.width)
-          && gtk_widget_get_realized (widget))
-        pspp_sheet_view_column_set_need_button (column, TRUE);
-
       if (column->window)
        gdk_window_move_resize (column->window,
                                 col_allocation.x + (rtl ? 0 : col_allocation.width) - TREE_VIEW_DRAG_WIDTH/2,
@@ -6713,13 +6707,6 @@ pspp_sheet_view_focus_column (PsppSheetView *tree_view,
   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 (focus_column->button == NULL)
-       return;
-    }
 
   if (gtk_container_get_focus_child (GTK_CONTAINER (tree_view)) != focus_column->button)
     gtk_widget_grab_focus (focus_column->button);
@@ -6850,7 +6837,6 @@ pspp_sheet_view_header_focus (PsppSheetView      *tree_view,
           if (column->visible &&
              pspp_sheet_view_column_can_focus (column))
             {
-              pspp_sheet_view_column_set_need_button (column, TRUE);
               if (column->button)
                 {
                   pspp_sheet_view_focus_column (tree_view, column,
@@ -8993,23 +8979,6 @@ pspp_sheet_view_adjustment_changed (GtkAdjustment *adjustment,
           if (!tree_view->priv->in_top_row_to_dy)
             pspp_sheet_view_dy_to_top_row (tree_view);
        }
-
-      for (list = tree_view->priv->columns; list; list = list->next)
-        {
-          PsppSheetViewColumn *column = list->data;
-          GtkAllocation *col_allocation = &column->allocation;
-         GtkAllocation widget_allocation;
-         gtk_widget_get_allocation (GTK_WIDGET (tree_view), &widget_allocation);
-
-          if (span_intersects (col_allocation->x, col_allocation->width,
-                               gtk_adjustment_get_value (tree_view->priv->hadjustment),
-                               widget_allocation.width))
-            {
-              pspp_sheet_view_column_set_need_button (column, TRUE);
-              if (!column->button)
-                pspp_sheet_view_column_update_button (column);
-            }
-        }
     }
 }