]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/private.cpp
guarding scrollbar
[wxWidgets.git] / src / gtk / private.cpp
index 37f4ecfef62e3d85715c07e6910b391f21d3c404..29ffce697f599c0ec54a0483d316ed31de09325e 100644 (file)
@@ -115,12 +115,10 @@ GtkWidget *GetEntryWidget()
 // differently if the button is in a treeview.
 static GtkWidget *s_first_button = NULL;
 static GtkWidget *s_other_button = NULL;
-    
-GtkWidget *GetHeaderButtonWidgetFirst()
-{
+static GtkWidget *s_last_button = NULL;
 
-    if ( !s_first_button )
-    {
+static void CreateHeaderButtons()
+{
         // Get the dummy tree widget, give it a column, and then use the
         // widget in the column header for the rendering code.
         GtkWidget* treewidget = GetTreeWidget();
@@ -132,27 +130,32 @@ GtkWidget *GetHeaderButtonWidgetFirst()
         column = gtk_tree_view_column_new();
         gtk_tree_view_append_column(GTK_TREE_VIEW(treewidget), column);
         s_other_button = column->button;
-    }
+        
+        column = gtk_tree_view_column_new();
+        gtk_tree_view_append_column(GTK_TREE_VIEW(treewidget), column);
+        s_last_button = column->button;
+}
+    
+GtkWidget *GetHeaderButtonWidgetFirst()
+{
+    if (!s_first_button)
+      CreateHeaderButtons();
 
     return s_first_button;
 }
 
+GtkWidget *GetHeaderButtonWidgetLast()
+{
+    if (!s_last_button)
+      CreateHeaderButtons();
+
+    return s_last_button;
+}
+
 GtkWidget *GetHeaderButtonWidget()
 {
-    if ( !s_other_button )
-    {
-        // Get the dummy tree widget, give it a column, and then use the
-        // widget in the column header for the rendering code.
-        GtkWidget* treewidget = GetTreeWidget();
-        
-        GtkTreeViewColumn *column = gtk_tree_view_column_new();
-        gtk_tree_view_append_column(GTK_TREE_VIEW(treewidget), column);
-        s_first_button = column->button;
-        
-        column = gtk_tree_view_column_new();
-        gtk_tree_view_append_column(GTK_TREE_VIEW(treewidget), column);
-        s_other_button = column->button;
-    }
+    if (!s_other_button)
+      CreateHeaderButtons();
 
     return s_other_button;
 }