app/disp_callbacks.[ch] app/gimpset.c patch from
1999-06-03 Michael Natterer <mitschel@cs.tu-berlin.de> * app/disp_callbacks.[ch] * app/gimpset.c * app/interface.c: patch from <Simon.Budig@unix-ag.org>. Cleans up the active image implementation. Now the button and key events of the whole gdisplay shell are connected to a separate active image callback. Don't let the arrow button of the gdisplay grab the focus and block it's events after any button_press_event, so the canvas always owns the keyboard focus and the button never grabs the pointer. * app/gdisplay.c: correct sensitive setting for the Layers/Stack submenu. * app/interface.c: make the query boxes insensitive after pressing "OK" (may be useful if they're once used for operations which take longer than just shrink/grow/...). * app/layers_dialog.c: switch to the active image when the "Auto" button is activated. * app/menus.c: bound the <Image>/Layers/Stack menu to some <modifier>+PageUp/Down combinations. * app/preferences_dialog.c: pop up with the "Interface" branch expanded.
This commit is contained in:
committed by
Michael Natterer
parent
e5bce5789e
commit
e5408cac3e
30
ChangeLog
30
ChangeLog
@ -1,3 +1,33 @@
|
||||
1999-06-03 Michael Natterer <mitschel@cs.tu-berlin.de>
|
||||
|
||||
* app/disp_callbacks.[ch]
|
||||
* app/gimpset.c
|
||||
* app/interface.c: patch from <Simon.Budig@unix-ag.org>. Cleans up
|
||||
the active image implementation. Now the button and key events of
|
||||
the whole gdisplay shell are connected to a separate active image
|
||||
callback.
|
||||
|
||||
Don't let the arrow button of the gdisplay grab the focus and
|
||||
block it's events after any button_press_event, so the canvas
|
||||
always owns the keyboard focus and the button never grabs the
|
||||
pointer.
|
||||
|
||||
* app/gdisplay.c: correct sensitive setting for the Layers/Stack
|
||||
submenu.
|
||||
|
||||
* app/interface.c: make the query boxes insensitive after pressing
|
||||
"OK" (may be useful if they're once used for operations which take
|
||||
longer than just shrink/grow/...).
|
||||
|
||||
* app/layers_dialog.c: switch to the active image when the "Auto"
|
||||
button is activated.
|
||||
|
||||
* app/menus.c: bound the <Image>/Layers/Stack menu to some
|
||||
<modifier>+PageUp/Down combinations.
|
||||
|
||||
* app/preferences_dialog.c: pop up with the "Interface" branch
|
||||
expanded.
|
||||
|
||||
Thu Jun 3 16:51:18 MEST 1999 Sven Neumann <sven@gimp.org>
|
||||
|
||||
* app/paint_core.c: Improved the line draw preview a bit. It's still
|
||||
|
||||
@ -1546,6 +1546,8 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
|
||||
GimpDrawable *drawable;
|
||||
gint base_type;
|
||||
gint type;
|
||||
gint lind;
|
||||
gint lnum;
|
||||
|
||||
fs = (gimage_floating_sel (gdisp->gimage) != NULL);
|
||||
aux = (gimage_get_active_channel (gdisp->gimage) != NULL);
|
||||
@ -1558,18 +1560,22 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
|
||||
alpha = layer && layer_has_alpha (layer);
|
||||
|
||||
type = -1;
|
||||
lind = -1;
|
||||
lnum = -1;
|
||||
if (lp)
|
||||
{
|
||||
drawable = gimage_active_drawable (gdisp->gimage);
|
||||
type = drawable_type (drawable);
|
||||
lind = gimage_get_layer_index (gdisp->gimage, gdisp->gimage->active_layer);
|
||||
lnum = g_slist_length (gdisp->gimage->layers);
|
||||
}
|
||||
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Previous Layer"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Next Layer"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise Layer"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower Layer"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise to Top"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower to Bottom"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Previous Layer"), !fs && !aux && lp && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Next Layer"), !fs && !aux && lp && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise Layer"), !fs && !aux && lp && alpha && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower Layer"), !fs && !aux && lp && alpha && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Layer to Top"), !fs && !aux && lp && alpha && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Layer to Bottom"), !fs && !aux && lp && alpha && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Anchor Layer"), fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Merge Visible Layers"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Flatten Image"), !fs && !aux && lp);
|
||||
|
||||
@ -1935,6 +1935,9 @@ file_pref_cmd_callback (GtkWidget *widget,
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0);
|
||||
gtk_widget_show (label);
|
||||
|
||||
/* Expand the "Interface" branch */
|
||||
gtk_ctree_expand (GTK_CTREE (ctree), top_insert);
|
||||
|
||||
/* Environment */
|
||||
vbox = file_prefs_notebook_append_page (GTK_NOTEBOOK (notebook),
|
||||
_("Environment Settings"),
|
||||
|
||||
@ -90,7 +90,7 @@ gdisplay_check_device_cursor (GDisplay *gdisp)
|
||||
}
|
||||
|
||||
static int
|
||||
key_to_state(int key)
|
||||
key_to_state (int key)
|
||||
{
|
||||
switch (key)
|
||||
{
|
||||
@ -105,6 +105,25 @@ key_to_state(int key)
|
||||
}
|
||||
}
|
||||
|
||||
gint
|
||||
gdisplay_shell_events (GtkWidget *w,
|
||||
GdkEvent *event,
|
||||
GDisplay *gdisp)
|
||||
{
|
||||
/* Set the active Image to the image where the user clicked/typed */
|
||||
|
||||
switch (event->type)
|
||||
{
|
||||
case GDK_BUTTON_PRESS:
|
||||
case GDK_KEY_PRESS:
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
gint
|
||||
gdisplay_canvas_events (GtkWidget *canvas,
|
||||
GdkEvent *event)
|
||||
@ -197,9 +216,6 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
||||
bevent = (GdkEventButton *) event;
|
||||
state = bevent->state;
|
||||
|
||||
/* Set the active Image to the image where the user clicked */
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
|
||||
switch (bevent->button)
|
||||
{
|
||||
case 1:
|
||||
@ -388,9 +404,6 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
||||
kevent = (GdkEventKey *) event;
|
||||
state = kevent->state;
|
||||
|
||||
/* Set the active Image to the image where the user typed */
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
|
||||
switch (kevent->keyval)
|
||||
{
|
||||
case GDK_Left: case GDK_Right:
|
||||
@ -531,12 +544,13 @@ gdisplay_origin_button_press (GtkWidget *widget,
|
||||
gdisp = data;
|
||||
popup_shell = gdisp->shell;
|
||||
gdisplay_set_menu_sensitivity (gdisp);
|
||||
gtk_menu_popup (GTK_MENU (gdisp->popup), NULL, NULL, NULL, NULL, 1, event->time);
|
||||
|
||||
/* Stop the signal emission so the button doesn't grab the
|
||||
* pointer away from us */
|
||||
gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "button_press_event");
|
||||
gtk_menu_popup (GTK_MENU (gdisp->popup),
|
||||
NULL, NULL, NULL, NULL, 1, event->time);
|
||||
}
|
||||
|
||||
/* Stop the signal emission so the button doesn't grab the
|
||||
* pointer away from us */
|
||||
gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "button_press_event");
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | \
|
||||
GDK_PROXIMITY_OUT_MASK
|
||||
|
||||
gint gdisplay_shell_events (GtkWidget *, GdkEvent *, GDisplay *);
|
||||
gint gdisplay_canvas_events (GtkWidget *, GdkEvent *);
|
||||
gint gdisplay_hruler_button_press (GtkWidget *, GdkEventButton *, gpointer);
|
||||
gint gdisplay_vruler_button_press (GtkWidget *, GdkEventButton *, gpointer);
|
||||
|
||||
@ -90,7 +90,7 @@ gdisplay_check_device_cursor (GDisplay *gdisp)
|
||||
}
|
||||
|
||||
static int
|
||||
key_to_state(int key)
|
||||
key_to_state (int key)
|
||||
{
|
||||
switch (key)
|
||||
{
|
||||
@ -105,6 +105,25 @@ key_to_state(int key)
|
||||
}
|
||||
}
|
||||
|
||||
gint
|
||||
gdisplay_shell_events (GtkWidget *w,
|
||||
GdkEvent *event,
|
||||
GDisplay *gdisp)
|
||||
{
|
||||
/* Set the active Image to the image where the user clicked/typed */
|
||||
|
||||
switch (event->type)
|
||||
{
|
||||
case GDK_BUTTON_PRESS:
|
||||
case GDK_KEY_PRESS:
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
gint
|
||||
gdisplay_canvas_events (GtkWidget *canvas,
|
||||
GdkEvent *event)
|
||||
@ -197,9 +216,6 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
||||
bevent = (GdkEventButton *) event;
|
||||
state = bevent->state;
|
||||
|
||||
/* Set the active Image to the image where the user clicked */
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
|
||||
switch (bevent->button)
|
||||
{
|
||||
case 1:
|
||||
@ -388,9 +404,6 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
||||
kevent = (GdkEventKey *) event;
|
||||
state = kevent->state;
|
||||
|
||||
/* Set the active Image to the image where the user typed */
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
|
||||
switch (kevent->keyval)
|
||||
{
|
||||
case GDK_Left: case GDK_Right:
|
||||
@ -531,12 +544,13 @@ gdisplay_origin_button_press (GtkWidget *widget,
|
||||
gdisp = data;
|
||||
popup_shell = gdisp->shell;
|
||||
gdisplay_set_menu_sensitivity (gdisp);
|
||||
gtk_menu_popup (GTK_MENU (gdisp->popup), NULL, NULL, NULL, NULL, 1, event->time);
|
||||
|
||||
/* Stop the signal emission so the button doesn't grab the
|
||||
* pointer away from us */
|
||||
gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "button_press_event");
|
||||
gtk_menu_popup (GTK_MENU (gdisp->popup),
|
||||
NULL, NULL, NULL, NULL, 1, event->time);
|
||||
}
|
||||
|
||||
/* Stop the signal emission so the button doesn't grab the
|
||||
* pointer away from us */
|
||||
gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "button_press_event");
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | \
|
||||
GDK_PROXIMITY_OUT_MASK
|
||||
|
||||
gint gdisplay_shell_events (GtkWidget *, GdkEvent *, GDisplay *);
|
||||
gint gdisplay_canvas_events (GtkWidget *, GdkEvent *);
|
||||
gint gdisplay_hruler_button_press (GtkWidget *, GdkEventButton *, gpointer);
|
||||
gint gdisplay_vruler_button_press (GtkWidget *, GdkEventButton *, gpointer);
|
||||
|
||||
@ -1546,6 +1546,8 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
|
||||
GimpDrawable *drawable;
|
||||
gint base_type;
|
||||
gint type;
|
||||
gint lind;
|
||||
gint lnum;
|
||||
|
||||
fs = (gimage_floating_sel (gdisp->gimage) != NULL);
|
||||
aux = (gimage_get_active_channel (gdisp->gimage) != NULL);
|
||||
@ -1558,18 +1560,22 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
|
||||
alpha = layer && layer_has_alpha (layer);
|
||||
|
||||
type = -1;
|
||||
lind = -1;
|
||||
lnum = -1;
|
||||
if (lp)
|
||||
{
|
||||
drawable = gimage_active_drawable (gdisp->gimage);
|
||||
type = drawable_type (drawable);
|
||||
lind = gimage_get_layer_index (gdisp->gimage, gdisp->gimage->active_layer);
|
||||
lnum = g_slist_length (gdisp->gimage->layers);
|
||||
}
|
||||
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Previous Layer"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Next Layer"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise Layer"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower Layer"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise to Top"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower to Bottom"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Previous Layer"), !fs && !aux && lp && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Next Layer"), !fs && !aux && lp && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise Layer"), !fs && !aux && lp && alpha && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower Layer"), !fs && !aux && lp && alpha && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Layer to Top"), !fs && !aux && lp && alpha && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Layer to Bottom"), !fs && !aux && lp && alpha && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Anchor Layer"), fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Merge Visible Layers"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Flatten Image"), !fs && !aux && lp);
|
||||
|
||||
@ -90,7 +90,7 @@ gdisplay_check_device_cursor (GDisplay *gdisp)
|
||||
}
|
||||
|
||||
static int
|
||||
key_to_state(int key)
|
||||
key_to_state (int key)
|
||||
{
|
||||
switch (key)
|
||||
{
|
||||
@ -105,6 +105,25 @@ key_to_state(int key)
|
||||
}
|
||||
}
|
||||
|
||||
gint
|
||||
gdisplay_shell_events (GtkWidget *w,
|
||||
GdkEvent *event,
|
||||
GDisplay *gdisp)
|
||||
{
|
||||
/* Set the active Image to the image where the user clicked/typed */
|
||||
|
||||
switch (event->type)
|
||||
{
|
||||
case GDK_BUTTON_PRESS:
|
||||
case GDK_KEY_PRESS:
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
gint
|
||||
gdisplay_canvas_events (GtkWidget *canvas,
|
||||
GdkEvent *event)
|
||||
@ -197,9 +216,6 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
||||
bevent = (GdkEventButton *) event;
|
||||
state = bevent->state;
|
||||
|
||||
/* Set the active Image to the image where the user clicked */
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
|
||||
switch (bevent->button)
|
||||
{
|
||||
case 1:
|
||||
@ -388,9 +404,6 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
||||
kevent = (GdkEventKey *) event;
|
||||
state = kevent->state;
|
||||
|
||||
/* Set the active Image to the image where the user typed */
|
||||
gimp_set_set_active(image_context, gdisp->gimage);
|
||||
|
||||
switch (kevent->keyval)
|
||||
{
|
||||
case GDK_Left: case GDK_Right:
|
||||
@ -531,12 +544,13 @@ gdisplay_origin_button_press (GtkWidget *widget,
|
||||
gdisp = data;
|
||||
popup_shell = gdisp->shell;
|
||||
gdisplay_set_menu_sensitivity (gdisp);
|
||||
gtk_menu_popup (GTK_MENU (gdisp->popup), NULL, NULL, NULL, NULL, 1, event->time);
|
||||
|
||||
/* Stop the signal emission so the button doesn't grab the
|
||||
* pointer away from us */
|
||||
gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "button_press_event");
|
||||
gtk_menu_popup (GTK_MENU (gdisp->popup),
|
||||
NULL, NULL, NULL, NULL, 1, event->time);
|
||||
}
|
||||
|
||||
/* Stop the signal emission so the button doesn't grab the
|
||||
* pointer away from us */
|
||||
gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "button_press_event");
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | \
|
||||
GDK_PROXIMITY_OUT_MASK
|
||||
|
||||
gint gdisplay_shell_events (GtkWidget *, GdkEvent *, GDisplay *);
|
||||
gint gdisplay_canvas_events (GtkWidget *, GdkEvent *);
|
||||
gint gdisplay_hruler_button_press (GtkWidget *, GdkEventButton *, gpointer);
|
||||
gint gdisplay_vruler_button_press (GtkWidget *, GdkEventButton *, gpointer);
|
||||
|
||||
@ -639,7 +639,7 @@ create_display_shell (GDisplay* gdisp,
|
||||
gtk_window_set_wmclass (GTK_WINDOW (gdisp->shell), "image_window", "Gimp");
|
||||
gtk_window_set_policy (GTK_WINDOW (gdisp->shell), TRUE, TRUE, TRUE);
|
||||
gtk_object_set_user_data (GTK_OBJECT (gdisp->shell), (gpointer) gdisp);
|
||||
gtk_widget_set_events (gdisp->shell, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_KEY_RELEASE_MASK);
|
||||
gtk_widget_set_events (gdisp->shell, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK);
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "delete_event",
|
||||
GTK_SIGNAL_FUNC (gdisplay_delete),
|
||||
gdisp);
|
||||
@ -648,6 +648,14 @@ create_display_shell (GDisplay* gdisp,
|
||||
(GtkSignalFunc) gdisplay_destroy,
|
||||
gdisp);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "button_press_event",
|
||||
(GtkSignalFunc) gdisplay_shell_events,
|
||||
gdisp);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "key_press_event",
|
||||
(GtkSignalFunc) gdisplay_shell_events,
|
||||
gdisp);
|
||||
|
||||
/* the vbox, table containing all widgets */
|
||||
vbox = gtk_vbox_new (FALSE, 2);
|
||||
gtk_container_add (GTK_CONTAINER (gdisp->shell), vbox);
|
||||
@ -672,6 +680,7 @@ create_display_shell (GDisplay* gdisp,
|
||||
|
||||
/* scrollbars, rulers, canvas, menu popup button */
|
||||
gdisp->origin = gtk_button_new ();
|
||||
GTK_WIDGET_UNSET_FLAGS (gdisp->origin, GTK_CAN_FOCUS);
|
||||
gtk_widget_set_events (GTK_WIDGET (gdisp->origin),
|
||||
GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->origin), "button_press_event",
|
||||
@ -1095,6 +1104,8 @@ string_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1120,6 +1131,8 @@ int_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1147,6 +1160,8 @@ double_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1174,6 +1189,8 @@ size_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
|
||||
@ -639,7 +639,7 @@ create_display_shell (GDisplay* gdisp,
|
||||
gtk_window_set_wmclass (GTK_WINDOW (gdisp->shell), "image_window", "Gimp");
|
||||
gtk_window_set_policy (GTK_WINDOW (gdisp->shell), TRUE, TRUE, TRUE);
|
||||
gtk_object_set_user_data (GTK_OBJECT (gdisp->shell), (gpointer) gdisp);
|
||||
gtk_widget_set_events (gdisp->shell, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_KEY_RELEASE_MASK);
|
||||
gtk_widget_set_events (gdisp->shell, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK);
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "delete_event",
|
||||
GTK_SIGNAL_FUNC (gdisplay_delete),
|
||||
gdisp);
|
||||
@ -648,6 +648,14 @@ create_display_shell (GDisplay* gdisp,
|
||||
(GtkSignalFunc) gdisplay_destroy,
|
||||
gdisp);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "button_press_event",
|
||||
(GtkSignalFunc) gdisplay_shell_events,
|
||||
gdisp);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "key_press_event",
|
||||
(GtkSignalFunc) gdisplay_shell_events,
|
||||
gdisp);
|
||||
|
||||
/* the vbox, table containing all widgets */
|
||||
vbox = gtk_vbox_new (FALSE, 2);
|
||||
gtk_container_add (GTK_CONTAINER (gdisp->shell), vbox);
|
||||
@ -672,6 +680,7 @@ create_display_shell (GDisplay* gdisp,
|
||||
|
||||
/* scrollbars, rulers, canvas, menu popup button */
|
||||
gdisp->origin = gtk_button_new ();
|
||||
GTK_WIDGET_UNSET_FLAGS (gdisp->origin, GTK_CAN_FOCUS);
|
||||
gtk_widget_set_events (GTK_WIDGET (gdisp->origin),
|
||||
GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->origin), "button_press_event",
|
||||
@ -1095,6 +1104,8 @@ string_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1120,6 +1131,8 @@ int_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1147,6 +1160,8 @@ double_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1174,6 +1189,8 @@ size_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
|
||||
@ -1546,6 +1546,8 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
|
||||
GimpDrawable *drawable;
|
||||
gint base_type;
|
||||
gint type;
|
||||
gint lind;
|
||||
gint lnum;
|
||||
|
||||
fs = (gimage_floating_sel (gdisp->gimage) != NULL);
|
||||
aux = (gimage_get_active_channel (gdisp->gimage) != NULL);
|
||||
@ -1558,18 +1560,22 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
|
||||
alpha = layer && layer_has_alpha (layer);
|
||||
|
||||
type = -1;
|
||||
lind = -1;
|
||||
lnum = -1;
|
||||
if (lp)
|
||||
{
|
||||
drawable = gimage_active_drawable (gdisp->gimage);
|
||||
type = drawable_type (drawable);
|
||||
lind = gimage_get_layer_index (gdisp->gimage, gdisp->gimage->active_layer);
|
||||
lnum = g_slist_length (gdisp->gimage->layers);
|
||||
}
|
||||
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Previous Layer"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Next Layer"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise Layer"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower Layer"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise to Top"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower to Bottom"), !fs && !aux && lp && alpha);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Previous Layer"), !fs && !aux && lp && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Next Layer"), !fs && !aux && lp && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Raise Layer"), !fs && !aux && lp && alpha && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Lower Layer"), !fs && !aux && lp && alpha && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Layer to Top"), !fs && !aux && lp && alpha && lind > 0);
|
||||
menus_set_sensitive (_("<Image>/Layers/Stack/Layer to Bottom"), !fs && !aux && lp && alpha && lind < (lnum - 1));
|
||||
menus_set_sensitive (_("<Image>/Layers/Anchor Layer"), fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Merge Visible Layers"), !fs && !aux && lp);
|
||||
menus_set_sensitive (_("<Image>/Layers/Flatten Image"), !fs && !aux && lp);
|
||||
|
||||
@ -230,7 +230,7 @@ void
|
||||
gimp_set_set_active (GimpSet* set, gpointer ob)
|
||||
{
|
||||
if (ob != set->active_element && gimp_set_have(set, ob)) {
|
||||
/* g_warning("Gimp_Set got new active element"); */
|
||||
g_warning("Gimp_Set got new active element");
|
||||
set->active_element = ob;
|
||||
gtk_signal_emit (GTK_OBJECT(set), gimp_set_signals[ACTIVE_CHANGED], ob);
|
||||
}
|
||||
|
||||
@ -173,9 +173,10 @@ static void layers_dialog_flatten_image_callback (GtkWidget *, gpointer);
|
||||
static void layers_dialog_alpha_select_callback (GtkWidget *, gpointer);
|
||||
static void layers_dialog_mask_select_callback (GtkWidget *, gpointer);
|
||||
static void layers_dialog_add_alpha_channel_callback (GtkWidget *, gpointer);
|
||||
static gint lc_dialog_auto_callback (GtkWidget *, gpointer);
|
||||
static gint lc_dialog_close_callback (GtkWidget *, gpointer);
|
||||
|
||||
/* the dialog's toplevel callbacks */
|
||||
static void lc_dialog_auto_callback (GtkWidget *, gpointer);
|
||||
static gint lc_dialog_close_callback (GtkWidget *, gpointer);
|
||||
static void lc_dialog_update_cb (GimpSet *, GimpImage *, gpointer);
|
||||
static void lc_dialog_change_image (GimpSet *, GimpImage *, gpointer);
|
||||
|
||||
@ -264,7 +265,7 @@ static MenuItem layers_ops[] =
|
||||
layers_dialog_raise_layer_to_top_callback, NULL, NULL, NULL },
|
||||
{ N_("Layer to Bottom"), 'U', GDK_CONTROL_MASK,
|
||||
layers_dialog_lower_layer_to_bottom_callback, NULL, NULL, NULL },
|
||||
{ NULL, 0, 0, NULL, NULL, NULL, NULL },
|
||||
{ NULL, 0, 0, NULL, NULL, NULL, NULL },
|
||||
};
|
||||
|
||||
/* the option menu items -- the paint modes */
|
||||
@ -2008,13 +2009,20 @@ layers_dialog_add_alpha_channel_callback (GtkWidget *w,
|
||||
}
|
||||
|
||||
|
||||
static gint
|
||||
lc_dialog_auto_callback (GtkWidget *toggle_button, gpointer client_data)
|
||||
static void
|
||||
lc_dialog_auto_callback (GtkWidget *toggle_button,
|
||||
gpointer client_data)
|
||||
{
|
||||
if (layersD)
|
||||
layersD->auto_follow_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(toggle_button));
|
||||
if (layersD)
|
||||
{
|
||||
layersD->auto_follow_active =
|
||||
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (toggle_button));
|
||||
|
||||
return TRUE;
|
||||
if (layersD->auto_follow_active)
|
||||
lc_dialog_change_image (image_context,
|
||||
(GimpImage *) gimp_set_get_active (image_context),
|
||||
NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -155,12 +155,12 @@ static const GtkItemFactoryEntry image_entries[] =
|
||||
{ N_("/Image/---"), NULL, NULL, 0, "<Separator>" },
|
||||
|
||||
{ N_("/Layers/Layers & Channels..."), "<control>L", dialogs_lc_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), NULL, layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), NULL, layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<control>F", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<control>B", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise to Top"), "<control>T", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower to Bottom"), "<control>U", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), "Prior", layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), "Next", layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<shift>Prior", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<shift>Next", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Top"), "<control>Prior", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Bottom"), "<control>Next", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/---"), NULL, NULL, 0, "<Separator>" },
|
||||
{ N_("/Layers/Anchor Layer"), "<control>H", layers_anchor_cmd_callback, 0 },
|
||||
{ N_("/Layers/Merge Visible Layers"), "<control>M", layers_merge_cmd_callback, 0 },
|
||||
|
||||
@ -1935,6 +1935,9 @@ file_pref_cmd_callback (GtkWidget *widget,
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0);
|
||||
gtk_widget_show (label);
|
||||
|
||||
/* Expand the "Interface" branch */
|
||||
gtk_ctree_expand (GTK_CTREE (ctree), top_insert);
|
||||
|
||||
/* Environment */
|
||||
vbox = file_prefs_notebook_append_page (GTK_NOTEBOOK (notebook),
|
||||
_("Environment Settings"),
|
||||
|
||||
@ -639,7 +639,7 @@ create_display_shell (GDisplay* gdisp,
|
||||
gtk_window_set_wmclass (GTK_WINDOW (gdisp->shell), "image_window", "Gimp");
|
||||
gtk_window_set_policy (GTK_WINDOW (gdisp->shell), TRUE, TRUE, TRUE);
|
||||
gtk_object_set_user_data (GTK_OBJECT (gdisp->shell), (gpointer) gdisp);
|
||||
gtk_widget_set_events (gdisp->shell, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_KEY_RELEASE_MASK);
|
||||
gtk_widget_set_events (gdisp->shell, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK);
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "delete_event",
|
||||
GTK_SIGNAL_FUNC (gdisplay_delete),
|
||||
gdisp);
|
||||
@ -648,6 +648,14 @@ create_display_shell (GDisplay* gdisp,
|
||||
(GtkSignalFunc) gdisplay_destroy,
|
||||
gdisp);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "button_press_event",
|
||||
(GtkSignalFunc) gdisplay_shell_events,
|
||||
gdisp);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->shell), "key_press_event",
|
||||
(GtkSignalFunc) gdisplay_shell_events,
|
||||
gdisp);
|
||||
|
||||
/* the vbox, table containing all widgets */
|
||||
vbox = gtk_vbox_new (FALSE, 2);
|
||||
gtk_container_add (GTK_CONTAINER (gdisp->shell), vbox);
|
||||
@ -672,6 +680,7 @@ create_display_shell (GDisplay* gdisp,
|
||||
|
||||
/* scrollbars, rulers, canvas, menu popup button */
|
||||
gdisp->origin = gtk_button_new ();
|
||||
GTK_WIDGET_UNSET_FLAGS (gdisp->origin, GTK_CAN_FOCUS);
|
||||
gtk_widget_set_events (GTK_WIDGET (gdisp->origin),
|
||||
GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
|
||||
gtk_signal_connect (GTK_OBJECT (gdisp->origin), "button_press_event",
|
||||
@ -1095,6 +1104,8 @@ string_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1120,6 +1131,8 @@ int_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1147,6 +1160,8 @@ double_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
@ -1174,6 +1189,8 @@ size_query_box_ok_callback (GtkWidget *w,
|
||||
|
||||
query_box = (QueryBox *) client_data;
|
||||
|
||||
gtk_widget_set_sensitive (query_box->qbox, FALSE);
|
||||
|
||||
/* disconnect, if we are connected to some signal */
|
||||
if (query_box->object)
|
||||
gtk_signal_disconnect_by_data (query_box->object, query_box);
|
||||
|
||||
@ -173,9 +173,10 @@ static void layers_dialog_flatten_image_callback (GtkWidget *, gpointer);
|
||||
static void layers_dialog_alpha_select_callback (GtkWidget *, gpointer);
|
||||
static void layers_dialog_mask_select_callback (GtkWidget *, gpointer);
|
||||
static void layers_dialog_add_alpha_channel_callback (GtkWidget *, gpointer);
|
||||
static gint lc_dialog_auto_callback (GtkWidget *, gpointer);
|
||||
static gint lc_dialog_close_callback (GtkWidget *, gpointer);
|
||||
|
||||
/* the dialog's toplevel callbacks */
|
||||
static void lc_dialog_auto_callback (GtkWidget *, gpointer);
|
||||
static gint lc_dialog_close_callback (GtkWidget *, gpointer);
|
||||
static void lc_dialog_update_cb (GimpSet *, GimpImage *, gpointer);
|
||||
static void lc_dialog_change_image (GimpSet *, GimpImage *, gpointer);
|
||||
|
||||
@ -264,7 +265,7 @@ static MenuItem layers_ops[] =
|
||||
layers_dialog_raise_layer_to_top_callback, NULL, NULL, NULL },
|
||||
{ N_("Layer to Bottom"), 'U', GDK_CONTROL_MASK,
|
||||
layers_dialog_lower_layer_to_bottom_callback, NULL, NULL, NULL },
|
||||
{ NULL, 0, 0, NULL, NULL, NULL, NULL },
|
||||
{ NULL, 0, 0, NULL, NULL, NULL, NULL },
|
||||
};
|
||||
|
||||
/* the option menu items -- the paint modes */
|
||||
@ -2008,13 +2009,20 @@ layers_dialog_add_alpha_channel_callback (GtkWidget *w,
|
||||
}
|
||||
|
||||
|
||||
static gint
|
||||
lc_dialog_auto_callback (GtkWidget *toggle_button, gpointer client_data)
|
||||
static void
|
||||
lc_dialog_auto_callback (GtkWidget *toggle_button,
|
||||
gpointer client_data)
|
||||
{
|
||||
if (layersD)
|
||||
layersD->auto_follow_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(toggle_button));
|
||||
if (layersD)
|
||||
{
|
||||
layersD->auto_follow_active =
|
||||
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (toggle_button));
|
||||
|
||||
return TRUE;
|
||||
if (layersD->auto_follow_active)
|
||||
lc_dialog_change_image (image_context,
|
||||
(GimpImage *) gimp_set_get_active (image_context),
|
||||
NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
12
app/menus.c
12
app/menus.c
@ -155,12 +155,12 @@ static const GtkItemFactoryEntry image_entries[] =
|
||||
{ N_("/Image/---"), NULL, NULL, 0, "<Separator>" },
|
||||
|
||||
{ N_("/Layers/Layers & Channels..."), "<control>L", dialogs_lc_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), NULL, layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), NULL, layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<control>F", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<control>B", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise to Top"), "<control>T", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower to Bottom"), "<control>U", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), "Prior", layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), "Next", layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<shift>Prior", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<shift>Next", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Top"), "<control>Prior", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Bottom"), "<control>Next", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/---"), NULL, NULL, 0, "<Separator>" },
|
||||
{ N_("/Layers/Anchor Layer"), "<control>H", layers_anchor_cmd_callback, 0 },
|
||||
{ N_("/Layers/Merge Visible Layers"), "<control>M", layers_merge_cmd_callback, 0 },
|
||||
|
||||
@ -155,12 +155,12 @@ static const GtkItemFactoryEntry image_entries[] =
|
||||
{ N_("/Image/---"), NULL, NULL, 0, "<Separator>" },
|
||||
|
||||
{ N_("/Layers/Layers & Channels..."), "<control>L", dialogs_lc_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), NULL, layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), NULL, layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<control>F", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<control>B", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise to Top"), "<control>T", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower to Bottom"), "<control>U", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), "Prior", layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), "Next", layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<shift>Prior", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<shift>Next", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Top"), "<control>Prior", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Bottom"), "<control>Next", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/---"), NULL, NULL, 0, "<Separator>" },
|
||||
{ N_("/Layers/Anchor Layer"), "<control>H", layers_anchor_cmd_callback, 0 },
|
||||
{ N_("/Layers/Merge Visible Layers"), "<control>M", layers_merge_cmd_callback, 0 },
|
||||
|
||||
@ -1935,6 +1935,9 @@ file_pref_cmd_callback (GtkWidget *widget,
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0);
|
||||
gtk_widget_show (label);
|
||||
|
||||
/* Expand the "Interface" branch */
|
||||
gtk_ctree_expand (GTK_CTREE (ctree), top_insert);
|
||||
|
||||
/* Environment */
|
||||
vbox = file_prefs_notebook_append_page (GTK_NOTEBOOK (notebook),
|
||||
_("Environment Settings"),
|
||||
|
||||
@ -155,12 +155,12 @@ static const GtkItemFactoryEntry image_entries[] =
|
||||
{ N_("/Image/---"), NULL, NULL, 0, "<Separator>" },
|
||||
|
||||
{ N_("/Layers/Layers & Channels..."), "<control>L", dialogs_lc_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), NULL, layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), NULL, layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<control>F", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<control>B", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise to Top"), "<control>T", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower to Bottom"), "<control>U", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Previous Layer"), "Prior", layers_previous_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Next Layer"), "Next", layers_next_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Raise Layer"), "<shift>Prior", layers_raise_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Lower Layer"), "<shift>Next", layers_lower_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Top"), "<control>Prior", layers_raise_to_top_cmd_callback, 0 },
|
||||
{ N_("/Layers/Stack/Layer to Bottom"), "<control>Next", layers_lower_to_bottom_cmd_callback, 0 },
|
||||
{ N_("/Layers/---"), NULL, NULL, 0, "<Separator>" },
|
||||
{ N_("/Layers/Anchor Layer"), "<control>H", layers_anchor_cmd_callback, 0 },
|
||||
{ N_("/Layers/Merge Visible Layers"), "<control>M", layers_merge_cmd_callback, 0 },
|
||||
|
||||
Reference in New Issue
Block a user