mirror of https://github.com/GNOME/gimp.git
app: Add gimp_dockable_create_event_box_tab_widget()
This commit is contained in:
parent
5a9217e959
commit
e827e7f1bf
|
@ -75,72 +75,67 @@ struct _GimpDockbookPrivate
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
static void gimp_dockbook_dispose (GObject *object);
|
static void gimp_dockbook_dispose (GObject *object);
|
||||||
static void gimp_dockbook_finalize (GObject *object);
|
static void gimp_dockbook_finalize (GObject *object);
|
||||||
|
static void gimp_dockbook_style_set (GtkWidget *widget,
|
||||||
static void gimp_dockbook_style_set (GtkWidget *widget,
|
GtkStyle *prev_style);
|
||||||
GtkStyle *prev_style);
|
static void gimp_dockbook_drag_leave (GtkWidget *widget,
|
||||||
|
GdkDragContext *context,
|
||||||
static void gimp_dockbook_drag_leave (GtkWidget *widget,
|
guint time);
|
||||||
GdkDragContext *context,
|
static gboolean gimp_dockbook_drag_motion (GtkWidget *widget,
|
||||||
guint time);
|
GdkDragContext *context,
|
||||||
static gboolean gimp_dockbook_drag_motion (GtkWidget *widget,
|
gint x,
|
||||||
GdkDragContext *context,
|
gint y,
|
||||||
gint x,
|
guint time);
|
||||||
gint y,
|
static gboolean gimp_dockbook_drag_drop (GtkWidget *widget,
|
||||||
guint time);
|
GdkDragContext *context,
|
||||||
static gboolean gimp_dockbook_drag_drop (GtkWidget *widget,
|
gint x,
|
||||||
GdkDragContext *context,
|
gint y,
|
||||||
gint x,
|
guint time);
|
||||||
gint y,
|
static void gimp_dockbook_dockable_added (GimpDockbook *dockbook,
|
||||||
guint time);
|
GimpDockable *dockable);
|
||||||
|
static void gimp_dockbook_dockable_removed (GimpDockbook *dockbook,
|
||||||
static void gimp_dockbook_dockable_added (GimpDockbook *dockbook,
|
GimpDockable *dockable);
|
||||||
GimpDockable *dockable);
|
static void gimp_dockbook_update_tabs (GimpDockbook *dockbook,
|
||||||
static void gimp_dockbook_dockable_removed (GimpDockbook *dockbook,
|
gboolean added);
|
||||||
GimpDockable *dockable);
|
static void gimp_dockbook_recreate_tab_widgets (GimpDockbook *dockbook);
|
||||||
static void gimp_dockbook_update_tabs (GimpDockbook *dockbook,
|
static void gimp_dockbook_tab_drag_source_setup (GtkWidget *widget,
|
||||||
gboolean added);
|
GimpDockable *dockable);
|
||||||
|
static void gimp_dockbook_tab_drag_begin (GtkWidget *widget,
|
||||||
static void gimp_dockbook_recreate_tab_widgets
|
GdkDragContext *context,
|
||||||
(GimpDockbook *dockbook);
|
GimpDockable *dockable);
|
||||||
static void gimp_dockbook_tab_drag_source_setup (GtkWidget *widget,
|
static void gimp_dockbook_tab_drag_end (GtkWidget *widget,
|
||||||
GimpDockable *dockable);
|
GdkDragContext *context,
|
||||||
static void gimp_dockbook_tab_drag_begin (GtkWidget *widget,
|
GimpDockable *dockable);
|
||||||
GdkDragContext *context,
|
static void gimp_dockbook_tab_drag_leave (GtkWidget *widget,
|
||||||
GimpDockable *dockable);
|
GdkDragContext *context,
|
||||||
static void gimp_dockbook_tab_drag_end (GtkWidget *widget,
|
guint time,
|
||||||
GdkDragContext *context,
|
GimpDockable *dockable);
|
||||||
GimpDockable *dockable);
|
static gboolean gimp_dockbook_tab_drag_motion (GtkWidget *widget,
|
||||||
|
GdkDragContext *context,
|
||||||
static void gimp_dockbook_tab_drag_leave (GtkWidget *widget,
|
gint x,
|
||||||
GdkDragContext *context,
|
gint y,
|
||||||
guint time,
|
guint time,
|
||||||
GimpDockable *dockable);
|
GimpDockable *dockable);
|
||||||
static gboolean gimp_dockbook_tab_drag_motion (GtkWidget *widget,
|
static gboolean gimp_dockbook_tab_drag_drop (GtkWidget *widget,
|
||||||
GdkDragContext *context,
|
GdkDragContext *context,
|
||||||
gint x,
|
gint x,
|
||||||
gint y,
|
gint y,
|
||||||
guint time,
|
guint time);
|
||||||
GimpDockable *dockable);
|
static GtkWidget * gimp_dockable_create_event_box_tab_widget (GimpDockable *dockable,
|
||||||
static gboolean gimp_dockbook_tab_drag_drop (GtkWidget *widget,
|
GimpContext *context,
|
||||||
GdkDragContext *context,
|
GimpTabStyle tab_style,
|
||||||
gint x,
|
GtkIconSize size);
|
||||||
gint y,
|
static GtkIconSize gimp_dockbook_get_tab_icon_size (GimpDockbook *dockbook);
|
||||||
guint time);
|
static void gimp_dockbook_add_tab_timeout (GimpDockbook *dockbook,
|
||||||
|
GimpDockable *dockable);
|
||||||
static GtkIconSize
|
static void gimp_dockbook_remove_tab_timeout (GimpDockbook *dockbook);
|
||||||
gimp_dockbook_get_tab_icon_size (GimpDockbook *dockbook);
|
static gboolean gimp_dockbook_tab_timeout (GimpDockbook *dockbook);
|
||||||
static void gimp_dockbook_add_tab_timeout (GimpDockbook *dockbook,
|
static void gimp_dockbook_tab_locked_notify (GimpDockable *dockable,
|
||||||
GimpDockable *dockable);
|
GParamSpec *pspec,
|
||||||
static void gimp_dockbook_remove_tab_timeout (GimpDockbook *dockbook);
|
GimpDockbook *dockbook);
|
||||||
static gboolean gimp_dockbook_tab_timeout (GimpDockbook *dockbook);
|
static void gimp_dockbook_help_func (const gchar *help_id,
|
||||||
static void gimp_dockbook_tab_locked_notify (GimpDockable *dockable,
|
gpointer help_data);
|
||||||
GParamSpec *pspec,
|
|
||||||
GimpDockbook *dockbook);
|
|
||||||
|
|
||||||
static void gimp_dockbook_help_func (const gchar *help_id,
|
|
||||||
gpointer help_data);
|
|
||||||
|
|
||||||
|
|
||||||
G_DEFINE_TYPE (GimpDockbook, gimp_dockbook, GTK_TYPE_NOTEBOOK)
|
G_DEFINE_TYPE (GimpDockbook, gimp_dockbook, GTK_TYPE_NOTEBOOK)
|
||||||
|
@ -568,23 +563,10 @@ gimp_dockbook_create_tab_widget (GimpDockbook *dockbook,
|
||||||
GtkAction *action = NULL;
|
GtkAction *action = NULL;
|
||||||
|
|
||||||
tab_widget =
|
tab_widget =
|
||||||
gimp_dockable_create_tab_widget (dockable,
|
gimp_dockable_create_event_box_tab_widget (dockable,
|
||||||
gimp_dock_get_context (dockbook->p->dock),
|
gimp_dock_get_context (dockbook->p->dock),
|
||||||
gimp_dockable_get_tab_style (dockable),
|
gimp_dockable_get_tab_style (dockable),
|
||||||
gimp_dockbook_get_tab_icon_size (dockbook));
|
gimp_dockbook_get_tab_icon_size (dockbook));
|
||||||
|
|
||||||
if (! GIMP_IS_VIEW (tab_widget))
|
|
||||||
{
|
|
||||||
GtkWidget *event_box;
|
|
||||||
|
|
||||||
event_box = gtk_event_box_new ();
|
|
||||||
gtk_event_box_set_visible_window (GTK_EVENT_BOX (event_box), FALSE);
|
|
||||||
gtk_event_box_set_above_child (GTK_EVENT_BOX (event_box), TRUE);
|
|
||||||
gtk_container_add (GTK_CONTAINER (event_box), tab_widget);
|
|
||||||
gtk_widget_show (tab_widget);
|
|
||||||
|
|
||||||
tab_widget = event_box;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* EEK */
|
/* EEK */
|
||||||
dock_window = gimp_dock_window_from_dock (dockbook->p->dock);
|
dock_window = gimp_dock_window_from_dock (dockbook->p->dock);
|
||||||
|
@ -1012,6 +994,36 @@ gimp_dockbook_tab_drag_drop (GtkWidget *widget,
|
||||||
return handle;
|
return handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static GtkWidget *
|
||||||
|
gimp_dockable_create_event_box_tab_widget (GimpDockable *dockable,
|
||||||
|
GimpContext *context,
|
||||||
|
GimpTabStyle tab_style,
|
||||||
|
GtkIconSize size)
|
||||||
|
{
|
||||||
|
GtkWidget *tab_widget;
|
||||||
|
|
||||||
|
tab_widget =
|
||||||
|
gimp_dockable_create_tab_widget (dockable,
|
||||||
|
context,
|
||||||
|
tab_style,
|
||||||
|
size);
|
||||||
|
|
||||||
|
if (! GIMP_IS_VIEW (tab_widget))
|
||||||
|
{
|
||||||
|
GtkWidget *event_box;
|
||||||
|
|
||||||
|
event_box = gtk_event_box_new ();
|
||||||
|
gtk_event_box_set_visible_window (GTK_EVENT_BOX (event_box), FALSE);
|
||||||
|
gtk_event_box_set_above_child (GTK_EVENT_BOX (event_box), TRUE);
|
||||||
|
gtk_container_add (GTK_CONTAINER (event_box), tab_widget);
|
||||||
|
gtk_widget_show (tab_widget);
|
||||||
|
|
||||||
|
tab_widget = event_box;
|
||||||
|
}
|
||||||
|
|
||||||
|
return tab_widget;
|
||||||
|
}
|
||||||
|
|
||||||
static GtkIconSize
|
static GtkIconSize
|
||||||
gimp_dockbook_get_tab_icon_size (GimpDockbook *dockbook)
|
gimp_dockbook_get_tab_icon_size (GimpDockbook *dockbook)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue