summaryrefslogtreecommitdiff
path: root/gtk/gtknotebook.h
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2006-02-23 17:59:33 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2006-02-23 17:59:33 +0000
commit2bec6c3f7ea0d9e04c17a9dded750f041a114ae8 (patch)
treea6a1d832dc00a7cb55f899e6057c5ffedb8eb14d /gtk/gtknotebook.h
parent6560be3bc81470b22a6e717681a7dedb43474bed (diff)
downloadgtk+-2bec6c3f7ea0d9e04c17a9dded750f041a114ae8.tar.gz
Add a reorder_tab keynav signal and an insert_page vfunc to GtkNotebook.
2006-02-23 Matthias Clasen <mclasen@redhat.com> * gtk/gtknotebook.h: Add a reorder_tab keynav signal and an insert_page vfunc to GtkNotebook. * gtk/gtk.symbols: * gtk/gtknotebook.c: Support notebook DND. New API includes gtk_notebook_set_window_creation_hook, gtk_notebook_[gs]et_group_id, gtk_notebook_[gs]et_tab_reorderable, gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
Diffstat (limited to 'gtk/gtknotebook.h')
-rw-r--r--gtk/gtknotebook.h40
1 files changed, 37 insertions, 3 deletions
diff --git a/gtk/gtknotebook.h b/gtk/gtknotebook.h
index 2482bbd8b7..e99f399bed 100644
--- a/gtk/gtknotebook.h
+++ b/gtk/gtknotebook.h
@@ -1,3 +1,4 @@
+/* -*- Mode: C; c-file-style: "gnu"; tab-width: 8 -*- */
/* GTK - The GIMP Toolkit
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
*
@@ -104,14 +105,27 @@ struct _GtkNotebookClass
gint offset);
void (* move_focus_out) (GtkNotebook *notebook,
GtkDirectionType direction);
+ void (* reorder_tab) (GtkNotebook *notebook,
+ GtkDirectionType direction,
+ gboolean move_to_last);
+
+ /* More vfuncs */
+ gint (* insert_page) (GtkNotebook *notebook,
+ GtkWidget *child,
+ GtkWidget *tab_label,
+ GtkWidget *menu_label,
+ gint position);
- /* Padding for future expansion */
void (*_gtk_reserved1) (void);
void (*_gtk_reserved2) (void);
- void (*_gtk_reserved3) (void);
- void (*_gtk_reserved4) (void);
};
+typedef GtkNotebook* (*GtkNotebookWindowCreationFunc) (GtkNotebook *source,
+ GtkWidget *page,
+ gint x,
+ gint y,
+ gpointer data);
+
/***********************************************************
* Creation, insertion, deletion *
***********************************************************/
@@ -145,6 +159,16 @@ void gtk_notebook_remove_page (GtkNotebook *notebook,
gint page_num);
/***********************************************************
+ * Tabs drag and drop *
+ ***********************************************************/
+
+void gtk_notebook_set_window_creation_hook (GtkNotebookWindowCreationFunc func,
+ gpointer data);
+void gtk_notebook_set_group_id (GtkNotebook *notebook,
+ gint group_id);
+gint gtk_notebook_get_group_id (GtkNotebook *notebook);
+
+/***********************************************************
* query, set current NoteebookPage *
***********************************************************/
@@ -232,6 +256,16 @@ void gtk_notebook_set_tab_label_packing (GtkNotebook *notebook,
void gtk_notebook_reorder_child (GtkNotebook *notebook,
GtkWidget *child,
gint position);
+gboolean gtk_notebook_get_tab_reorderable (GtkNotebook *notebook,
+ GtkWidget *child);
+void gtk_notebook_set_tab_reorderable (GtkNotebook *notebook,
+ GtkWidget *child,
+ gboolean reorderable);
+gboolean gtk_notebook_get_tab_detachable (GtkNotebook *notebook,
+ GtkWidget *child);
+void gtk_notebook_set_tab_detachable (GtkNotebook *notebook,
+ GtkWidget *child,
+ gboolean reorderable);
#ifndef GTK_DISABLE_DEPRECATED
#define gtk_notebook_current_page gtk_notebook_get_current_page