summaryrefslogtreecommitdiff
path: root/gtk/gtknotebook.h
diff options
context:
space:
mode:
authorTim Janik <timj@gimp.org>1998-02-19 05:13:46 +0000
committerTim Janik <timj@src.gnome.org>1998-02-19 05:13:46 +0000
commit3d4cc2f904cd5d0dd1acfa6938c5577264fab524 (patch)
tree39f79bd9a85d512f8e54a4d91ce542b2a73447f0 /gtk/gtknotebook.h
parent8923d60dba0e1990ca066ef7cf9b6b065a4c4b63 (diff)
downloadgtk+-3d4cc2f904cd5d0dd1acfa6938c5577264fab524.tar.gz
applied gtk-hamann_jeske-980218-0.patch.gz, a patch from Lars Hamann and
Thu Feb 19 05:40:51 1998 Tim Janik <timj@gimp.org> * gtk/gtknotebook.h: * gtk/gtknotebook.c: applied gtk-hamann_jeske-980218-0.patch.gz, a patch from Lars Hamann and Stefan Jeske which introduces major usability improvements. fixed bugs are: - container border_width>0 does now work correctly for show_tabs==TRUE and for tab_pos=GTK_POS_BOTTOM/GTK_POS_RIGHT. - toggleing visibility of the tab labels works now. - emission of GtkNotebook:switch_page and all page changes also the signature for the GtkNotebook:switch_page signal changed, callbacks should now look like: gint notebook_switch_page (GtkWidget *widget, GtkNotebookPage *page, gint page_num, gpointer data);
Diffstat (limited to 'gtk/gtknotebook.h')
-rw-r--r--gtk/gtknotebook.h83
1 files changed, 59 insertions, 24 deletions
diff --git a/gtk/gtknotebook.h b/gtk/gtknotebook.h
index 5cbcf6fc59..e02881b1a0 100644
--- a/gtk/gtknotebook.h
+++ b/gtk/gtknotebook.h
@@ -43,10 +43,24 @@ struct _GtkNotebook
GtkNotebookPage *cur_page;
GList *children;
+ GList *first_tab;
+ GList *focus_tab;
+
+ GtkWidget *menu;
+ GdkWindow *panel;
+
+ guint32 timer;
+
+ gint16 tab_border;
guint show_tabs : 1;
guint show_border : 1;
guint tab_pos : 2;
+ guint scrollable : 1;
+ guint in_child : 2;
+ guint click_child : 2;
+ guint button : 2;
+ guint need_timer : 1;
};
struct _GtkNotebookClass
@@ -61,6 +75,9 @@ struct _GtkNotebookPage
{
GtkWidget *child;
GtkWidget *tab_label;
+ GtkWidget *menu_label;
+ gint8 default_menu : 1;
+ gint8 default_tab : 1;
GtkRequisition requisition;
GtkAllocation allocation;
};
@@ -68,30 +85,48 @@ struct _GtkNotebookPage
guint gtk_notebook_get_type (void);
GtkWidget* gtk_notebook_new (void);
-void gtk_notebook_append_page (GtkNotebook *notebook,
- GtkWidget *child,
- GtkWidget *tab_label);
-void gtk_notebook_prepend_page (GtkNotebook *notebook,
- GtkWidget *child,
- GtkWidget *tab_label);
-void gtk_notebook_insert_page (GtkNotebook *notebook,
- GtkWidget *child,
- GtkWidget *tab_label,
- gint position);
-void gtk_notebook_remove_page (GtkNotebook *notebook,
- gint page_num);
-gint gtk_notebook_current_page (GtkNotebook *notebook);
-void gtk_notebook_set_page (GtkNotebook *notebook,
- gint page_num);
-void gtk_notebook_next_page (GtkNotebook *notebook);
-void gtk_notebook_prev_page (GtkNotebook *notebook);
-void gtk_notebook_set_tab_pos (GtkNotebook *notebook,
- GtkPositionType pos);
-void gtk_notebook_set_show_tabs (GtkNotebook *notebook,
- gint show_tabs);
-void gtk_notebook_set_show_border (GtkNotebook *notebook,
- gint show_border);
-
+void gtk_notebook_append_page (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label);
+void gtk_notebook_append_page_menu (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label,
+ GtkWidget *menu_label);
+void gtk_notebook_prepend_page (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label);
+void gtk_notebook_prepend_page_menu (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label,
+ GtkWidget *menu_label);
+void gtk_notebook_insert_page (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label,
+ gint position);
+void gtk_notebook_insert_page_menu (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label,
+ GtkWidget *menu_label,
+ gint position);
+void gtk_notebook_remove_page (GtkNotebook *notebook,
+ gint page_num);
+gint gtk_notebook_current_page (GtkNotebook *notebook);
+void gtk_notebook_set_page (GtkNotebook *notebook,
+ gint page_num);
+void gtk_notebook_next_page (GtkNotebook *notebook);
+void gtk_notebook_prev_page (GtkNotebook *notebook);
+void gtk_notebook_set_tab_pos (GtkNotebook *notebook,
+ GtkPositionType pos);
+void gtk_notebook_set_show_tabs (GtkNotebook *notebook,
+ gint show_tabs);
+void gtk_notebook_set_show_border (GtkNotebook *notebook,
+ gint show_border);
+void gtk_notebook_set_scrollable (GtkNotebook *notebook,
+ gint scrollable);
+void gtk_notebook_set_tab_border (GtkNotebook *notebook,
+ gint border_width);
+void gtk_notebook_popup_enable (GtkNotebook *notebook);
+void gtk_notebook_popup_disable (GtkNotebook *notebook);
#ifdef __cplusplus
}