mirror of https://github.com/GNOME/gimp.git
app/devices.[ch] app/gui/about-dialog.[ch] app/gui/preferences-dialog.[ch]
2001-04-18 Michael Natterer <mitch@gimp.org> * app/devices.[ch] * app/gui/about-dialog.[ch] * app/gui/preferences-dialog.[ch] * app/gui/tips-dialog.[ch]: return a GtkWidget from the constructor. * app/gui/dialogs.c * app/gui/dialogs-constructors.[ch]: register them with the dialog factory. * app/gui/commands.[ch] * app/gui/menus.c: removed their old callbacks. * app/gui/brush-select.c * app/gui/gradient-select.c * app/gui/palette-editor.[ch]: no need to show or raise the shell (that's done by the dialog factory now). * app/widgets/gimpdialogfactory.c: actually do what the "singleton" and "session_managed" flags say.
This commit is contained in:
parent
d25f8933bb
commit
9147176686
22
ChangeLog
22
ChangeLog
|
@ -1,3 +1,25 @@
|
|||
2001-04-18 Michael Natterer <mitch@gimp.org>
|
||||
|
||||
* app/devices.[ch]
|
||||
* app/gui/about-dialog.[ch]
|
||||
* app/gui/preferences-dialog.[ch]
|
||||
* app/gui/tips-dialog.[ch]: return a GtkWidget from the constructor.
|
||||
|
||||
* app/gui/dialogs.c
|
||||
* app/gui/dialogs-constructors.[ch]: register them with the dialog
|
||||
factory.
|
||||
|
||||
* app/gui/commands.[ch]
|
||||
* app/gui/menus.c: removed their old callbacks.
|
||||
|
||||
* app/gui/brush-select.c
|
||||
* app/gui/gradient-select.c
|
||||
* app/gui/palette-editor.[ch]: no need to show or raise the shell
|
||||
(that's done by the dialog factory now).
|
||||
|
||||
* app/widgets/gimpdialogfactory.c: actually do what the
|
||||
"singleton" and "session_managed" flags say.
|
||||
|
||||
2001-04-18 Michael Natterer <mitch@gimp.org>
|
||||
|
||||
* app/Makefile.am: commented the sections of the file list.
|
||||
|
|
|
@ -33,22 +33,16 @@
|
|||
#include "tools/gimptoolinfo.h"
|
||||
#include "tools/tool_manager.h"
|
||||
|
||||
#include "about-dialog.h"
|
||||
#include "color-area.h"
|
||||
#include "colormap-dialog.h"
|
||||
#include "errorconsole.h"
|
||||
#include "info-dialog.h"
|
||||
#include "info-window.h"
|
||||
#include "layer-select.h"
|
||||
#include "preferences-dialog.h"
|
||||
#include "tips-dialog.h"
|
||||
|
||||
#include "app_procs.h"
|
||||
#include "commands.h"
|
||||
#include "context_manager.h"
|
||||
#include "convert.h"
|
||||
#include "desaturate.h"
|
||||
#include "devices.h"
|
||||
#include "channel_ops.h"
|
||||
#include "equalize.h"
|
||||
#include "file-open.h"
|
||||
|
@ -70,18 +64,11 @@
|
|||
#include "invert.h"
|
||||
#include "lc_dialog.h"
|
||||
#include "layers_dialogP.h"
|
||||
#include "module_db.h"
|
||||
#include "plug_in.h"
|
||||
#include "resize.h"
|
||||
#include "scale.h"
|
||||
#include "selection.h"
|
||||
#include "toolbox.h"
|
||||
#include "undo.h"
|
||||
#include "undo_history.h"
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
#include "gdisplay_color_ui.h"
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
|
@ -1095,13 +1082,6 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
|
|||
|
||||
/***** Tools *****/
|
||||
|
||||
void
|
||||
tools_toolbox_raise_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
toolbox_raise ();
|
||||
}
|
||||
|
||||
void
|
||||
tools_default_colors_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
|
@ -1192,118 +1172,6 @@ filters_repeat_cmd_callback (GtkWidget *widget,
|
|||
plug_in_repeat (callback_action);
|
||||
}
|
||||
|
||||
/***** Dialogs ******/
|
||||
|
||||
void
|
||||
dialogs_preferences_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
preferences_dialog_create ();
|
||||
}
|
||||
|
||||
static void
|
||||
dialogs_indexed_palette_select_callback (GimpColormapDialog *dialog,
|
||||
gpointer data)
|
||||
{
|
||||
GimpImage *image;
|
||||
GimpRGB color;
|
||||
gint index;
|
||||
|
||||
image = gimp_colormap_dialog_image (dialog);
|
||||
index = gimp_colormap_dialog_col_index (dialog);
|
||||
|
||||
gimp_rgba_set_uchar (&color,
|
||||
image->cmap[index * 3],
|
||||
image->cmap[index * 3 + 1],
|
||||
image->cmap[index * 3 + 2],
|
||||
255);
|
||||
|
||||
if (active_color == FOREGROUND)
|
||||
gimp_context_set_foreground (gimp_context_get_user (), &color);
|
||||
else if (active_color == BACKGROUND)
|
||||
gimp_context_set_background (gimp_context_get_user (), &color);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_indexed_palette_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
static GimpColormapDialog *cmap_dlg;
|
||||
|
||||
if (!cmap_dlg)
|
||||
{
|
||||
cmap_dlg = gimp_colormap_dialog_create (image_context);
|
||||
|
||||
gtk_signal_connect
|
||||
(GTK_OBJECT (cmap_dlg), "selected",
|
||||
GTK_SIGNAL_FUNC (dialogs_indexed_palette_select_callback),
|
||||
NULL);
|
||||
}
|
||||
|
||||
if (! GTK_WIDGET_VISIBLE (cmap_dlg))
|
||||
gtk_widget_show (GTK_WIDGET (cmap_dlg));
|
||||
else
|
||||
gdk_window_raise (GTK_WIDGET (cmap_dlg)->window);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_input_devices_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
input_dialog_create ();
|
||||
}
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
void
|
||||
dialogs_display_filters_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
|
||||
gdisp = gdisplay_active ();
|
||||
if (!gdisp)
|
||||
gdisp = color_area_gdisp;
|
||||
|
||||
if (!gdisp->cd_ui)
|
||||
gdisplay_color_ui_new (gdisp);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (gdisp->cd_ui))
|
||||
gtk_widget_show (gdisp->cd_ui);
|
||||
else
|
||||
gdk_window_raise (gdisp->cd_ui->window);
|
||||
}
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
void
|
||||
dialogs_undo_history_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
GimpImage *gimage;
|
||||
return_if_no_display (gdisp);
|
||||
|
||||
gimage = gdisp->gimage;
|
||||
|
||||
if (!gimage->undo_history)
|
||||
gimage->undo_history = undo_history_new (gimage);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (gimage->undo_history))
|
||||
gtk_widget_show (gimage->undo_history);
|
||||
else
|
||||
gdk_window_raise (gimage->undo_history->window);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_module_browser_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GtkWidget *module_browser;
|
||||
|
||||
module_browser = module_db_browser_new ();
|
||||
gtk_widget_show (module_browser);
|
||||
}
|
||||
|
||||
|
||||
/***** Help *****/
|
||||
|
||||
void
|
||||
|
@ -1320,20 +1188,6 @@ help_context_help_cmd_callback (GtkWidget *widget,
|
|||
gimp_context_help ();
|
||||
}
|
||||
|
||||
void
|
||||
help_tips_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
tips_dialog_create ();
|
||||
}
|
||||
|
||||
void
|
||||
help_about_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
about_dialog_create ();
|
||||
}
|
||||
|
||||
|
||||
/*****************************/
|
||||
/***** Local functions *****/
|
||||
|
|
|
@ -104,7 +104,6 @@ void layers_add_alpha_channel_cmd_callback (GtkWidget *, gpointer);
|
|||
void layers_alpha_select_cmd_callback (GtkWidget *, gpointer);
|
||||
void layers_resize_to_image_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
void tools_toolbox_raise_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_default_colors_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_swap_colors_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_swap_contexts_cmd_callback (GtkWidget *, gpointer);
|
||||
|
@ -116,20 +115,8 @@ void filters_repeat_cmd_callback (GtkWidget *widget,
|
|||
gpointer callback_data,
|
||||
guint callback_action);
|
||||
|
||||
void dialogs_preferences_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_indexed_palette_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_input_devices_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_undo_history_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_module_browser_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
void dialogs_display_filters_cmd_callback (GtkWidget *, gpointer);
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
void help_help_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_context_help_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_tips_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_about_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
|
||||
#endif /* __COMMANDS_H__ */
|
||||
|
|
108
app/devices.c
108
app/devices.c
|
@ -209,73 +209,66 @@ device_info_get_by_name (gchar *name)
|
|||
|
||||
/* the gtk input dialog */
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
input_dialog_create (void)
|
||||
{
|
||||
static GtkWidget *inputd = NULL;
|
||||
GtkWidget *hbbox;
|
||||
|
||||
if (!inputd)
|
||||
{
|
||||
inputd = gtk_input_dialog_new ();
|
||||
if (inputd)
|
||||
return inputd;
|
||||
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
inputd = gtk_input_dialog_new ();
|
||||
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (inputd);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_MAPPED (inputd))
|
||||
gtk_widget_show (inputd);
|
||||
else
|
||||
gdk_window_raise (inputd->window);
|
||||
}
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
|
||||
return inputd;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -747,14 +740,7 @@ device_status_create (void)
|
|||
gint i;
|
||||
|
||||
if (deviceD)
|
||||
{
|
||||
if (! GTK_WIDGET_MAPPED (deviceD->shell))
|
||||
gtk_widget_show (deviceD->shell);
|
||||
else
|
||||
gdk_window_raise (deviceD->shell->window);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
return deviceD->shell;
|
||||
|
||||
deviceD = g_new (DeviceInfoDialog, 1);
|
||||
|
||||
|
@ -955,8 +941,6 @@ device_status_create (void)
|
|||
GTK_SIGNAL_FUNC (device_status_destroy_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (deviceD->shell);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
|
||||
|
|
|
@ -40,13 +40,13 @@ void devices_init (void);
|
|||
void devices_restore (void);
|
||||
|
||||
/* Create device info dialog */
|
||||
void input_dialog_create (void);
|
||||
GtkWidget * input_dialog_create (void);
|
||||
|
||||
/* Create the device status dialog */
|
||||
GtkWidget * device_status_create (void);
|
||||
|
||||
/* Returns TRUE, and makes necessary global changes
|
||||
* event is not for current_device
|
||||
* if event is not for current_device
|
||||
*/
|
||||
gint devices_check_change (GdkEvent *event);
|
||||
|
||||
|
|
|
@ -114,7 +114,7 @@ static gchar *hadja_text[] =
|
|||
#endif
|
||||
};
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
about_dialog_create (void)
|
||||
{
|
||||
GtkWidget *vbox;
|
||||
|
@ -127,7 +127,7 @@ about_dialog_create (void)
|
|||
gint i;
|
||||
gchar *label_text;
|
||||
|
||||
if (!about_dialog)
|
||||
if (! about_dialog)
|
||||
{
|
||||
about_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
|
||||
gtk_window_set_wmclass (GTK_WINDOW (about_dialog), "about_dialog", "Gimp");
|
||||
|
@ -167,7 +167,7 @@ about_dialog_create (void)
|
|||
{
|
||||
gtk_widget_destroy (about_dialog);
|
||||
about_dialog = NULL;
|
||||
return;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 1);
|
||||
|
@ -264,18 +264,18 @@ about_dialog_create (void)
|
|||
&scroll_area->style->white);
|
||||
}
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (about_dialog))
|
||||
if (! GTK_WIDGET_VISIBLE (about_dialog))
|
||||
{
|
||||
gtk_widget_show (about_dialog);
|
||||
|
||||
do_animation = TRUE;
|
||||
do_scrolling = FALSE;
|
||||
scroll_state = 0;
|
||||
frame = 0;
|
||||
offset = 0;
|
||||
do_animation = TRUE;
|
||||
do_scrolling = FALSE;
|
||||
scroll_state = 0;
|
||||
frame = 0;
|
||||
offset = 0;
|
||||
cur_scroll_text = 0;
|
||||
|
||||
if (!double_speed && hadja_state != 7)
|
||||
if (! double_speed && hadja_state != 7)
|
||||
{
|
||||
for (i = 0; i < nscroll_texts; i++)
|
||||
{
|
||||
|
@ -303,6 +303,8 @@ about_dialog_create (void)
|
|||
{
|
||||
gdk_window_raise (about_dialog->window);
|
||||
}
|
||||
|
||||
return about_dialog;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
@ -521,10 +523,10 @@ about_dialog_key (GtkWidget *widget,
|
|||
scroll_text[i]);
|
||||
}
|
||||
|
||||
scroll_state = 0;
|
||||
scroll_state = 0;
|
||||
cur_scroll_index = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
@ -537,9 +539,9 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
{
|
||||
GdkPixmap *pixmap = NULL;
|
||||
GdkBitmap *mask = NULL;
|
||||
gint width = 0;
|
||||
gint height = 0;
|
||||
gint i;
|
||||
gint width = 0;
|
||||
gint height = 0;
|
||||
gint i;
|
||||
|
||||
if (do_animation)
|
||||
return;
|
||||
|
@ -549,7 +551,7 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
|
||||
timer = gtk_timeout_add (75, about_dialog_timer, NULL);
|
||||
|
||||
frame = 0;
|
||||
frame = 0;
|
||||
do_animation = TRUE;
|
||||
do_scrolling = FALSE;
|
||||
|
||||
|
@ -560,11 +562,10 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
logo_area->allocation.width,
|
||||
logo_area->allocation.height);
|
||||
|
||||
pixmap =
|
||||
gdk_pixmap_create_from_xpm_d (widget->window,
|
||||
&mask,
|
||||
NULL,
|
||||
wilber2_xpm);
|
||||
pixmap = gdk_pixmap_create_from_xpm_d (widget->window,
|
||||
&mask,
|
||||
NULL,
|
||||
wilber2_xpm);
|
||||
|
||||
gdk_window_get_size (pixmap, &width, &height);
|
||||
|
||||
|
@ -602,10 +603,10 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
scroll_text[i]);
|
||||
}
|
||||
|
||||
scroll_state = 0;
|
||||
scroll_state = 0;
|
||||
cur_scroll_index = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
|
||||
double_speed = TRUE;
|
||||
}
|
||||
|
@ -640,7 +641,7 @@ about_dialog_timer (gpointer data)
|
|||
{
|
||||
do_animation = FALSE;
|
||||
do_scrolling = TRUE;
|
||||
frame = 0;
|
||||
frame = 0;
|
||||
|
||||
timer = gtk_timeout_add (75, about_dialog_timer, NULL);
|
||||
|
||||
|
@ -651,7 +652,7 @@ about_dialog_timer (gpointer data)
|
|||
|
||||
if (do_scrolling)
|
||||
{
|
||||
if (!scroll_pixmap)
|
||||
if (! scroll_pixmap)
|
||||
scroll_pixmap = gdk_pixmap_new (scroll_area->window,
|
||||
scroll_area->allocation.width,
|
||||
scroll_area->allocation.height,
|
||||
|
@ -678,7 +679,7 @@ about_dialog_timer (gpointer data)
|
|||
cur_scroll_index += 1;
|
||||
if (cur_scroll_index == nscroll_texts)
|
||||
cur_scroll_index = 0;
|
||||
|
||||
|
||||
cur_scroll_text = shuffle_array[cur_scroll_index];
|
||||
|
||||
offset = 0;
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
#ifndef __ABOUT_DIALOG_H__
|
||||
#define __ABOUT_DIALOG_H__
|
||||
|
||||
void about_dialog_create (void);
|
||||
|
||||
GtkWidget * about_dialog_create (void);
|
||||
|
||||
|
||||
#endif /* __ABOUT_DIALOG_H__ */
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "libgimpcolor/gimpcolor.h"
|
||||
#include "libgimpwidgets/gimpwidgets.h"
|
||||
|
||||
#include "apptypes.h"
|
||||
|
@ -36,7 +37,10 @@
|
|||
#include "widgets/gimpdockbook.h"
|
||||
#include "widgets/gimppreview.h"
|
||||
|
||||
#include "about-dialog.h"
|
||||
#include "brush-select.h"
|
||||
#include "color-area.h"
|
||||
#include "colormap-dialog.h"
|
||||
#include "devices.h"
|
||||
#include "dialogs-constructors.h"
|
||||
#include "docindex.h"
|
||||
|
@ -45,38 +49,49 @@
|
|||
#include "gradient-editor.h"
|
||||
#include "gradient-select.h"
|
||||
#include "lc_dialog.h"
|
||||
|
||||
#include "palette-editor.h"
|
||||
#include "pattern-select.h"
|
||||
#include "preferences-dialog.h"
|
||||
#include "tips-dialog.h"
|
||||
#include "toolbox.h"
|
||||
|
||||
#include "context_manager.h"
|
||||
#include "gdisplay.h"
|
||||
#include "gimpcontainer.h"
|
||||
#include "gimpcontext.h"
|
||||
#include "gimpdatafactory.h"
|
||||
#include "gimpimage.h"
|
||||
#include "gimprc.h"
|
||||
#include "module_db.h"
|
||||
#include "undo_history.h"
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
#include "gdisplay_color_ui.h"
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
|
||||
static GtkWidget * dialogs_brush_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_pattern_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_gradient_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_palette_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static void dialogs_indexed_palette_selected (GimpColormapDialog *dialog,
|
||||
GimpContext *context);
|
||||
|
||||
static GtkWidget * dialogs_dockable_new (GtkWidget *widget,
|
||||
const gchar *name,
|
||||
const gchar *short_name,
|
||||
GimpDockableGetTabFunc get_tab_func);
|
||||
static GtkWidget * dialogs_brush_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_pattern_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_gradient_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_palette_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
|
||||
static GtkWidget * dialogs_dockable_new (GtkWidget *widget,
|
||||
const gchar *name,
|
||||
const gchar *short_name,
|
||||
GimpDockableGetTabFunc get_tab_func);
|
||||
|
||||
|
||||
/* public functions */
|
||||
|
@ -145,6 +160,89 @@ dialogs_document_index_get (GimpDialogFactory *factory)
|
|||
return document_index_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_preferences_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return preferences_dialog_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_input_devices_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return input_dialog_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_module_browser_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return module_db_browser_new ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_indexed_palette_get (GimpDialogFactory *factory)
|
||||
{
|
||||
GimpColormapDialog *cmap_dlg;
|
||||
|
||||
cmap_dlg = gimp_colormap_dialog_create (image_context);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (cmap_dlg), "selected",
|
||||
GTK_SIGNAL_FUNC (dialogs_indexed_palette_selected),
|
||||
factory->context);
|
||||
|
||||
return GTK_WIDGET (cmap_dlg);
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_undo_history_get (GimpDialogFactory *factory)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
GimpImage *gimage;
|
||||
|
||||
gdisp = gimp_context_get_display (factory->context);
|
||||
|
||||
if (! gdisp)
|
||||
return NULL;
|
||||
|
||||
gimage = gdisp->gimage;
|
||||
|
||||
if (! gimage->undo_history)
|
||||
gimage->undo_history = undo_history_new (gimage);
|
||||
|
||||
return gimage->undo_history;
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_display_filters_get (GimpDialogFactory *factory)
|
||||
{
|
||||
#ifdef DISPLAY_FILTERS
|
||||
GDisplay *gdisp;
|
||||
|
||||
gdisp = gimp_context_get_display (factory->context);
|
||||
|
||||
if (! gdisp)
|
||||
gdisp = color_area_gdisp;
|
||||
|
||||
if (! gdisp->cd_ui)
|
||||
gdisplay_color_ui_new (gdisp);
|
||||
|
||||
return gdisp->cd_ui;
|
||||
#else
|
||||
return NULL;
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_tips_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return tips_dialog_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_about_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return about_dialog_create ();
|
||||
}
|
||||
|
||||
|
||||
GtkWidget *
|
||||
dialogs_image_list_view_new (GimpDialogFactory *factory)
|
||||
|
@ -348,6 +446,29 @@ dialogs_tool_grid_view_new (GimpDialogFactory *factory)
|
|||
|
||||
/* private functions */
|
||||
|
||||
static void
|
||||
dialogs_indexed_palette_selected (GimpColormapDialog *dialog,
|
||||
GimpContext *context)
|
||||
{
|
||||
GimpImage *gimage;
|
||||
GimpRGB color;
|
||||
gint index;
|
||||
|
||||
gimage = gimp_colormap_dialog_image (dialog);
|
||||
index = gimp_colormap_dialog_col_index (dialog);
|
||||
|
||||
gimp_rgba_set_uchar (&color,
|
||||
gimage->cmap[index * 3],
|
||||
gimage->cmap[index * 3 + 1],
|
||||
gimage->cmap[index * 3 + 2],
|
||||
255);
|
||||
|
||||
if (active_color == FOREGROUND)
|
||||
gimp_context_set_foreground (context, &color);
|
||||
else if (active_color == BACKGROUND)
|
||||
gimp_context_set_background (context, &color);
|
||||
}
|
||||
|
||||
static GtkWidget *
|
||||
dialogs_brush_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
|
|
|
@ -30,6 +30,14 @@ GtkWidget * dialogs_gradient_select_get (GimpDialogFactory *factory);
|
|||
GtkWidget * dialogs_palette_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_error_console_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_document_index_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_preferences_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_input_devices_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_module_browser_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_indexed_palette_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_undo_history_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_display_filters_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_tips_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_about_get (GimpDialogFactory *factory);
|
||||
|
||||
GtkWidget * dialogs_image_list_view_new (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_brush_list_view_new (GimpDialogFactory *factory);
|
||||
|
|
|
@ -31,39 +31,36 @@
|
|||
#include "gimpcontext.h"
|
||||
|
||||
|
||||
typedef struct _DialogEntry DialogEntry;
|
||||
|
||||
struct _DialogEntry
|
||||
{
|
||||
const gchar *identifier;
|
||||
GimpDialogNewFunc new_func;
|
||||
gboolean singleton;
|
||||
gboolean session_managed;
|
||||
};
|
||||
|
||||
|
||||
GimpDialogFactory *global_dialog_factory = NULL;
|
||||
GimpDialogFactory *global_dock_factory = NULL;
|
||||
GimpDialogFactory *global_image_dock_factory = NULL;
|
||||
|
||||
|
||||
static const DialogEntry toplevel_entries[] =
|
||||
static const GimpDialogFactoryEntry toplevel_entries[] =
|
||||
{
|
||||
{ "gimp:toolbox", dialogs_toolbox_get, TRUE, TRUE },
|
||||
{ "gimp:lc-dialog", dialogs_lc_get, TRUE, TRUE },
|
||||
{ "gimp:tool-options-dialog", dialogs_tool_options_get, TRUE, TRUE },
|
||||
{ "gimp:device-status-dialog", dialogs_device_status_get, TRUE, TRUE },
|
||||
{ "gimp:brush-select-dialog", dialogs_brush_select_get, TRUE, TRUE },
|
||||
{ "gimp:pattern-select-dialog", dialogs_pattern_select_get, TRUE, TRUE },
|
||||
{ "gimp:gradient-select-dialog", dialogs_gradient_select_get, TRUE, TRUE },
|
||||
{ "gimp:palette-dialog", dialogs_palette_get, TRUE, TRUE },
|
||||
{ "gimp:error-console-dialog", dialogs_error_console_get, TRUE, TRUE },
|
||||
{ "gimp:document-index-dialog", dialogs_document_index_get, TRUE, TRUE }
|
||||
{ "gimp:toolbox", dialogs_toolbox_get, TRUE, TRUE },
|
||||
{ "gimp:lc-dialog", dialogs_lc_get, TRUE, TRUE },
|
||||
{ "gimp:tool-options-dialog", dialogs_tool_options_get, TRUE, TRUE },
|
||||
{ "gimp:device-status-dialog", dialogs_device_status_get, TRUE, TRUE },
|
||||
{ "gimp:brush-select-dialog", dialogs_brush_select_get, TRUE, TRUE },
|
||||
{ "gimp:pattern-select-dialog", dialogs_pattern_select_get, TRUE, TRUE },
|
||||
{ "gimp:gradient-select-dialog", dialogs_gradient_select_get, TRUE, TRUE },
|
||||
{ "gimp:palette-dialog", dialogs_palette_get, TRUE, TRUE },
|
||||
{ "gimp:error-console-dialog", dialogs_error_console_get, TRUE, TRUE },
|
||||
{ "gimp:document-index-dialog", dialogs_document_index_get, TRUE, TRUE },
|
||||
{ "gimp:preferences-dialog", dialogs_preferences_get, TRUE, FALSE },
|
||||
{ "gimp:input-devices-dialog", dialogs_input_devices_get, TRUE, FALSE },
|
||||
{ "gimp:module-browser-dialog", dialogs_module_browser_get, TRUE, FALSE },
|
||||
{ "gimp:indexed-palette-dialog", dialogs_indexed_palette_get, TRUE, FALSE },
|
||||
{ "gimp:undo-history-dialog", dialogs_undo_history_get, FALSE, FALSE },
|
||||
{ "gimp:display-filters-dialog", dialogs_display_filters_get, FALSE, FALSE },
|
||||
{ "gimp:tips-dialog", dialogs_tips_get, TRUE, FALSE },
|
||||
{ "gimp:about-dialog", dialogs_about_get, TRUE, FALSE }
|
||||
};
|
||||
static const gint n_toplevel_entries = (sizeof (toplevel_entries) /
|
||||
sizeof (toplevel_entries[0]));
|
||||
|
||||
static const DialogEntry dock_entries[] =
|
||||
static const GimpDialogFactoryEntry dock_entries[] =
|
||||
{
|
||||
{ "gimp:image-list", dialogs_image_list_view_new, FALSE, FALSE },
|
||||
{ "gimp:brush-list", dialogs_brush_list_view_new, FALSE, FALSE },
|
||||
|
@ -82,7 +79,7 @@ static const gint n_dock_entries = (sizeof (dock_entries) /
|
|||
sizeof (dock_entries[0]));
|
||||
|
||||
/*
|
||||
static const DialogEntry image_dock_entries[] =
|
||||
static const GimpDialogFactoryEntry image_dock_entries[] =
|
||||
{
|
||||
};
|
||||
static const gint n_image_dock_entries = (sizeof (image_dock_entries) /
|
||||
|
|
|
@ -1345,7 +1345,7 @@ prefs_help_func (const gchar *help_data)
|
|||
/************************************************************************
|
||||
* create the preferences dialog
|
||||
*/
|
||||
void
|
||||
GtkWidget *
|
||||
preferences_dialog_create (void)
|
||||
{
|
||||
GtkWidget *ctree;
|
||||
|
@ -1381,10 +1381,7 @@ preferences_dialog_create (void)
|
|||
gchar *pixels_per_unit;
|
||||
|
||||
if (prefs_dlg)
|
||||
{
|
||||
gdk_window_raise (GTK_WIDGET (prefs_dlg)->window);
|
||||
return;
|
||||
}
|
||||
return prefs_dlg;
|
||||
|
||||
if (edit_temp_path == NULL)
|
||||
{
|
||||
|
@ -2612,5 +2609,5 @@ preferences_dialog_create (void)
|
|||
gtk_widget_show (ctree);
|
||||
gtk_widget_show (notebook);
|
||||
|
||||
gtk_widget_show (prefs_dlg);
|
||||
return prefs_dlg;
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#define __PREFERENCES_DIALOG_H__
|
||||
|
||||
|
||||
void preferences_dialog_create (void);
|
||||
GtkWidget * preferences_dialog_create (void);
|
||||
|
||||
|
||||
#endif /* __PREFERENCES_DIALOG_H__ */
|
||||
|
|
|
@ -60,7 +60,7 @@ static gint tips_count = 0;
|
|||
static gint old_show_tips = 0;
|
||||
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
tips_dialog_create (void)
|
||||
{
|
||||
GtkWidget *vbox;
|
||||
|
@ -86,118 +86,109 @@ tips_dialog_create (void)
|
|||
if (last_tip >= tips_count || last_tip < 0)
|
||||
last_tip = 0;
|
||||
|
||||
if (!tips_dialog)
|
||||
{
|
||||
tips_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
|
||||
gtk_window_set_wmclass (GTK_WINDOW (tips_dialog), "tip_of_the_day", "Gimp");
|
||||
gtk_window_set_title (GTK_WINDOW (tips_dialog), _("GIMP Tip of the Day"));
|
||||
gtk_window_set_position (GTK_WINDOW (tips_dialog), GTK_WIN_POS_CENTER);
|
||||
gtk_window_set_policy (GTK_WINDOW (tips_dialog), FALSE, TRUE, FALSE);
|
||||
if (tips_dialog)
|
||||
return tips_dialog;
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "delete_event",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&tips_dialog);
|
||||
tips_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
|
||||
gtk_window_set_wmclass (GTK_WINDOW (tips_dialog), "tip_of_the_day", "Gimp");
|
||||
gtk_window_set_title (GTK_WINDOW (tips_dialog), _("GIMP Tip of the Day"));
|
||||
gtk_window_set_position (GTK_WINDOW (tips_dialog), GTK_WIN_POS_CENTER);
|
||||
gtk_window_set_policy (GTK_WINDOW (tips_dialog), FALSE, TRUE, FALSE);
|
||||
|
||||
/* destroy the tips window if the mainlevel gtk_main() function is left */
|
||||
gtk_quit_add_destroy (1, GTK_OBJECT (tips_dialog));
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "delete_event",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&tips_dialog);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 0);
|
||||
gtk_container_add (GTK_CONTAINER (tips_dialog), vbox);
|
||||
gtk_widget_show (vbox);
|
||||
/* destroy the tips window if the mainlevel gtk_main() function is left */
|
||||
gtk_quit_add_destroy (1, GTK_OBJECT (tips_dialog));
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 5);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
vbox = gtk_vbox_new (FALSE, 0);
|
||||
gtk_container_add (GTK_CONTAINER (tips_dialog), vbox);
|
||||
gtk_widget_show (vbox);
|
||||
|
||||
tips_label = gtk_label_new (tips_text[last_tip]);
|
||||
gtk_label_set_justify (GTK_LABEL (tips_label), GTK_JUSTIFY_LEFT);
|
||||
gtk_misc_set_alignment (GTK_MISC (tips_label), 0.5, 0.5);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), tips_label, TRUE, TRUE, 3);
|
||||
gtk_widget_show (tips_label);
|
||||
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), vbox2, FALSE, FALSE, 0);
|
||||
gtk_widget_show (vbox2);
|
||||
hbox = gtk_hbox_new (FALSE, 5);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
frame = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), frame, TRUE, FALSE, 0);
|
||||
gtk_widget_show (frame);
|
||||
tips_label = gtk_label_new (tips_text[last_tip]);
|
||||
gtk_label_set_justify (GTK_LABEL (tips_label), GTK_JUSTIFY_LEFT);
|
||||
gtk_misc_set_alignment (GTK_MISC (tips_label), 0.5, 0.5);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), tips_label, TRUE, TRUE, 3);
|
||||
gtk_widget_show (tips_label);
|
||||
|
||||
pixmap = gimp_pixmap_new (wilber3_xpm);
|
||||
gtk_container_add (GTK_CONTAINER (frame), pixmap);
|
||||
gtk_widget_show (pixmap);
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 15);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_end (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
button =
|
||||
gtk_check_button_new_with_label (_("Show tip next time GIMP starts"));
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
|
||||
show_tips);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "toggled",
|
||||
GTK_SIGNAL_FUNC (tips_toggle_update),
|
||||
(gpointer) &show_tips);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), vbox2, FALSE, FALSE, 0);
|
||||
gtk_widget_show (vbox2);
|
||||
|
||||
old_show_tips = show_tips;
|
||||
frame = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), frame, TRUE, FALSE, 0);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
pixmap = gimp_pixmap_new (wilber3_xpm);
|
||||
gtk_container_add (GTK_CONTAINER (frame), pixmap);
|
||||
gtk_widget_show (pixmap);
|
||||
|
||||
button = gtk_button_new_with_label (_("Close"));
|
||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||
gtk_window_set_default (GTK_WINDOW (tips_dialog), button);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
hbox = gtk_hbox_new (FALSE, 15);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_end (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_END);
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 5);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
button = gtk_check_button_new_with_label (_("Show tip next time GIMP starts"));
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), show_tips);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "toggled",
|
||||
GTK_SIGNAL_FUNC (tips_toggle_update),
|
||||
&show_tips);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
|
||||
button = gtk_button_new_with_label (_("Previous Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_previous),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
old_show_tips = show_tips;
|
||||
|
||||
button = gtk_button_new_with_label (_("Next Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_next),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (tips_dialog,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/tip_of_the_day.html");
|
||||
}
|
||||
button = gtk_button_new_with_label (_("Close"));
|
||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||
gtk_window_set_default (GTK_WINDOW (tips_dialog), button);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (tips_dialog))
|
||||
{
|
||||
gtk_widget_show (tips_dialog);
|
||||
}
|
||||
else
|
||||
{
|
||||
gdk_window_raise (tips_dialog->window);
|
||||
}
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_END);
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 5);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
|
||||
button = gtk_button_new_with_label (_("Previous Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_previous),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
|
||||
button = gtk_button_new_with_label (_("Next Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_next),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (tips_dialog,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/tip_of_the_day.html");
|
||||
|
||||
return tips_dialog;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#define __TIPS_DIALOG_H__
|
||||
|
||||
|
||||
void tips_dialog_create (void);
|
||||
GtkWidget * tips_dialog_create (void);
|
||||
|
||||
|
||||
#endif /* __TIPS_DIALOG_H__ */
|
||||
|
|
|
@ -114,7 +114,7 @@ static gchar *hadja_text[] =
|
|||
#endif
|
||||
};
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
about_dialog_create (void)
|
||||
{
|
||||
GtkWidget *vbox;
|
||||
|
@ -127,7 +127,7 @@ about_dialog_create (void)
|
|||
gint i;
|
||||
gchar *label_text;
|
||||
|
||||
if (!about_dialog)
|
||||
if (! about_dialog)
|
||||
{
|
||||
about_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
|
||||
gtk_window_set_wmclass (GTK_WINDOW (about_dialog), "about_dialog", "Gimp");
|
||||
|
@ -167,7 +167,7 @@ about_dialog_create (void)
|
|||
{
|
||||
gtk_widget_destroy (about_dialog);
|
||||
about_dialog = NULL;
|
||||
return;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 1);
|
||||
|
@ -264,18 +264,18 @@ about_dialog_create (void)
|
|||
&scroll_area->style->white);
|
||||
}
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (about_dialog))
|
||||
if (! GTK_WIDGET_VISIBLE (about_dialog))
|
||||
{
|
||||
gtk_widget_show (about_dialog);
|
||||
|
||||
do_animation = TRUE;
|
||||
do_scrolling = FALSE;
|
||||
scroll_state = 0;
|
||||
frame = 0;
|
||||
offset = 0;
|
||||
do_animation = TRUE;
|
||||
do_scrolling = FALSE;
|
||||
scroll_state = 0;
|
||||
frame = 0;
|
||||
offset = 0;
|
||||
cur_scroll_text = 0;
|
||||
|
||||
if (!double_speed && hadja_state != 7)
|
||||
if (! double_speed && hadja_state != 7)
|
||||
{
|
||||
for (i = 0; i < nscroll_texts; i++)
|
||||
{
|
||||
|
@ -303,6 +303,8 @@ about_dialog_create (void)
|
|||
{
|
||||
gdk_window_raise (about_dialog->window);
|
||||
}
|
||||
|
||||
return about_dialog;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
@ -521,10 +523,10 @@ about_dialog_key (GtkWidget *widget,
|
|||
scroll_text[i]);
|
||||
}
|
||||
|
||||
scroll_state = 0;
|
||||
scroll_state = 0;
|
||||
cur_scroll_index = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
@ -537,9 +539,9 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
{
|
||||
GdkPixmap *pixmap = NULL;
|
||||
GdkBitmap *mask = NULL;
|
||||
gint width = 0;
|
||||
gint height = 0;
|
||||
gint i;
|
||||
gint width = 0;
|
||||
gint height = 0;
|
||||
gint i;
|
||||
|
||||
if (do_animation)
|
||||
return;
|
||||
|
@ -549,7 +551,7 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
|
||||
timer = gtk_timeout_add (75, about_dialog_timer, NULL);
|
||||
|
||||
frame = 0;
|
||||
frame = 0;
|
||||
do_animation = TRUE;
|
||||
do_scrolling = FALSE;
|
||||
|
||||
|
@ -560,11 +562,10 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
logo_area->allocation.width,
|
||||
logo_area->allocation.height);
|
||||
|
||||
pixmap =
|
||||
gdk_pixmap_create_from_xpm_d (widget->window,
|
||||
&mask,
|
||||
NULL,
|
||||
wilber2_xpm);
|
||||
pixmap = gdk_pixmap_create_from_xpm_d (widget->window,
|
||||
&mask,
|
||||
NULL,
|
||||
wilber2_xpm);
|
||||
|
||||
gdk_window_get_size (pixmap, &width, &height);
|
||||
|
||||
|
@ -602,10 +603,10 @@ about_dialog_tool_drop (GtkWidget *widget,
|
|||
scroll_text[i]);
|
||||
}
|
||||
|
||||
scroll_state = 0;
|
||||
scroll_state = 0;
|
||||
cur_scroll_index = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
cur_scroll_text = 0;
|
||||
offset = 0;
|
||||
|
||||
double_speed = TRUE;
|
||||
}
|
||||
|
@ -640,7 +641,7 @@ about_dialog_timer (gpointer data)
|
|||
{
|
||||
do_animation = FALSE;
|
||||
do_scrolling = TRUE;
|
||||
frame = 0;
|
||||
frame = 0;
|
||||
|
||||
timer = gtk_timeout_add (75, about_dialog_timer, NULL);
|
||||
|
||||
|
@ -651,7 +652,7 @@ about_dialog_timer (gpointer data)
|
|||
|
||||
if (do_scrolling)
|
||||
{
|
||||
if (!scroll_pixmap)
|
||||
if (! scroll_pixmap)
|
||||
scroll_pixmap = gdk_pixmap_new (scroll_area->window,
|
||||
scroll_area->allocation.width,
|
||||
scroll_area->allocation.height,
|
||||
|
@ -678,7 +679,7 @@ about_dialog_timer (gpointer data)
|
|||
cur_scroll_index += 1;
|
||||
if (cur_scroll_index == nscroll_texts)
|
||||
cur_scroll_index = 0;
|
||||
|
||||
|
||||
cur_scroll_text = shuffle_array[cur_scroll_index];
|
||||
|
||||
offset = 0;
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
#ifndef __ABOUT_DIALOG_H__
|
||||
#define __ABOUT_DIALOG_H__
|
||||
|
||||
void about_dialog_create (void);
|
||||
|
||||
GtkWidget * about_dialog_create (void);
|
||||
|
||||
|
||||
#endif /* __ABOUT_DIALOG_H__ */
|
||||
|
|
|
@ -104,13 +104,6 @@ brush_dialog_create (void)
|
|||
{
|
||||
brush_select_dialog = brush_select_new (NULL, NULL, 0.0, 0, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_VISIBLE (brush_select_dialog->shell))
|
||||
gtk_widget_show (brush_select_dialog->shell);
|
||||
else
|
||||
gdk_window_raise (brush_select_dialog->shell->window);
|
||||
}
|
||||
|
||||
return brush_select_dialog->shell;
|
||||
}
|
||||
|
|
|
@ -33,22 +33,16 @@
|
|||
#include "tools/gimptoolinfo.h"
|
||||
#include "tools/tool_manager.h"
|
||||
|
||||
#include "about-dialog.h"
|
||||
#include "color-area.h"
|
||||
#include "colormap-dialog.h"
|
||||
#include "errorconsole.h"
|
||||
#include "info-dialog.h"
|
||||
#include "info-window.h"
|
||||
#include "layer-select.h"
|
||||
#include "preferences-dialog.h"
|
||||
#include "tips-dialog.h"
|
||||
|
||||
#include "app_procs.h"
|
||||
#include "commands.h"
|
||||
#include "context_manager.h"
|
||||
#include "convert.h"
|
||||
#include "desaturate.h"
|
||||
#include "devices.h"
|
||||
#include "channel_ops.h"
|
||||
#include "equalize.h"
|
||||
#include "file-open.h"
|
||||
|
@ -70,18 +64,11 @@
|
|||
#include "invert.h"
|
||||
#include "lc_dialog.h"
|
||||
#include "layers_dialogP.h"
|
||||
#include "module_db.h"
|
||||
#include "plug_in.h"
|
||||
#include "resize.h"
|
||||
#include "scale.h"
|
||||
#include "selection.h"
|
||||
#include "toolbox.h"
|
||||
#include "undo.h"
|
||||
#include "undo_history.h"
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
#include "gdisplay_color_ui.h"
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
|
@ -1095,13 +1082,6 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
|
|||
|
||||
/***** Tools *****/
|
||||
|
||||
void
|
||||
tools_toolbox_raise_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
toolbox_raise ();
|
||||
}
|
||||
|
||||
void
|
||||
tools_default_colors_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
|
@ -1192,118 +1172,6 @@ filters_repeat_cmd_callback (GtkWidget *widget,
|
|||
plug_in_repeat (callback_action);
|
||||
}
|
||||
|
||||
/***** Dialogs ******/
|
||||
|
||||
void
|
||||
dialogs_preferences_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
preferences_dialog_create ();
|
||||
}
|
||||
|
||||
static void
|
||||
dialogs_indexed_palette_select_callback (GimpColormapDialog *dialog,
|
||||
gpointer data)
|
||||
{
|
||||
GimpImage *image;
|
||||
GimpRGB color;
|
||||
gint index;
|
||||
|
||||
image = gimp_colormap_dialog_image (dialog);
|
||||
index = gimp_colormap_dialog_col_index (dialog);
|
||||
|
||||
gimp_rgba_set_uchar (&color,
|
||||
image->cmap[index * 3],
|
||||
image->cmap[index * 3 + 1],
|
||||
image->cmap[index * 3 + 2],
|
||||
255);
|
||||
|
||||
if (active_color == FOREGROUND)
|
||||
gimp_context_set_foreground (gimp_context_get_user (), &color);
|
||||
else if (active_color == BACKGROUND)
|
||||
gimp_context_set_background (gimp_context_get_user (), &color);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_indexed_palette_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
static GimpColormapDialog *cmap_dlg;
|
||||
|
||||
if (!cmap_dlg)
|
||||
{
|
||||
cmap_dlg = gimp_colormap_dialog_create (image_context);
|
||||
|
||||
gtk_signal_connect
|
||||
(GTK_OBJECT (cmap_dlg), "selected",
|
||||
GTK_SIGNAL_FUNC (dialogs_indexed_palette_select_callback),
|
||||
NULL);
|
||||
}
|
||||
|
||||
if (! GTK_WIDGET_VISIBLE (cmap_dlg))
|
||||
gtk_widget_show (GTK_WIDGET (cmap_dlg));
|
||||
else
|
||||
gdk_window_raise (GTK_WIDGET (cmap_dlg)->window);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_input_devices_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
input_dialog_create ();
|
||||
}
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
void
|
||||
dialogs_display_filters_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
|
||||
gdisp = gdisplay_active ();
|
||||
if (!gdisp)
|
||||
gdisp = color_area_gdisp;
|
||||
|
||||
if (!gdisp->cd_ui)
|
||||
gdisplay_color_ui_new (gdisp);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (gdisp->cd_ui))
|
||||
gtk_widget_show (gdisp->cd_ui);
|
||||
else
|
||||
gdk_window_raise (gdisp->cd_ui->window);
|
||||
}
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
void
|
||||
dialogs_undo_history_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
GimpImage *gimage;
|
||||
return_if_no_display (gdisp);
|
||||
|
||||
gimage = gdisp->gimage;
|
||||
|
||||
if (!gimage->undo_history)
|
||||
gimage->undo_history = undo_history_new (gimage);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (gimage->undo_history))
|
||||
gtk_widget_show (gimage->undo_history);
|
||||
else
|
||||
gdk_window_raise (gimage->undo_history->window);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_module_browser_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GtkWidget *module_browser;
|
||||
|
||||
module_browser = module_db_browser_new ();
|
||||
gtk_widget_show (module_browser);
|
||||
}
|
||||
|
||||
|
||||
/***** Help *****/
|
||||
|
||||
void
|
||||
|
@ -1320,20 +1188,6 @@ help_context_help_cmd_callback (GtkWidget *widget,
|
|||
gimp_context_help ();
|
||||
}
|
||||
|
||||
void
|
||||
help_tips_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
tips_dialog_create ();
|
||||
}
|
||||
|
||||
void
|
||||
help_about_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
about_dialog_create ();
|
||||
}
|
||||
|
||||
|
||||
/*****************************/
|
||||
/***** Local functions *****/
|
||||
|
|
|
@ -104,7 +104,6 @@ void layers_add_alpha_channel_cmd_callback (GtkWidget *, gpointer);
|
|||
void layers_alpha_select_cmd_callback (GtkWidget *, gpointer);
|
||||
void layers_resize_to_image_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
void tools_toolbox_raise_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_default_colors_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_swap_colors_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_swap_contexts_cmd_callback (GtkWidget *, gpointer);
|
||||
|
@ -116,20 +115,8 @@ void filters_repeat_cmd_callback (GtkWidget *widget,
|
|||
gpointer callback_data,
|
||||
guint callback_action);
|
||||
|
||||
void dialogs_preferences_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_indexed_palette_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_input_devices_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_undo_history_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_module_browser_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
void dialogs_display_filters_cmd_callback (GtkWidget *, gpointer);
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
void help_help_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_context_help_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_tips_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_about_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
|
||||
#endif /* __COMMANDS_H__ */
|
||||
|
|
|
@ -209,73 +209,66 @@ device_info_get_by_name (gchar *name)
|
|||
|
||||
/* the gtk input dialog */
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
input_dialog_create (void)
|
||||
{
|
||||
static GtkWidget *inputd = NULL;
|
||||
GtkWidget *hbbox;
|
||||
|
||||
if (!inputd)
|
||||
{
|
||||
inputd = gtk_input_dialog_new ();
|
||||
if (inputd)
|
||||
return inputd;
|
||||
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
inputd = gtk_input_dialog_new ();
|
||||
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (inputd);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_MAPPED (inputd))
|
||||
gtk_widget_show (inputd);
|
||||
else
|
||||
gdk_window_raise (inputd->window);
|
||||
}
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
|
||||
return inputd;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -747,14 +740,7 @@ device_status_create (void)
|
|||
gint i;
|
||||
|
||||
if (deviceD)
|
||||
{
|
||||
if (! GTK_WIDGET_MAPPED (deviceD->shell))
|
||||
gtk_widget_show (deviceD->shell);
|
||||
else
|
||||
gdk_window_raise (deviceD->shell->window);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
return deviceD->shell;
|
||||
|
||||
deviceD = g_new (DeviceInfoDialog, 1);
|
||||
|
||||
|
@ -955,8 +941,6 @@ device_status_create (void)
|
|||
GTK_SIGNAL_FUNC (device_status_destroy_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (deviceD->shell);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "libgimpcolor/gimpcolor.h"
|
||||
#include "libgimpwidgets/gimpwidgets.h"
|
||||
|
||||
#include "apptypes.h"
|
||||
|
@ -36,7 +37,10 @@
|
|||
#include "widgets/gimpdockbook.h"
|
||||
#include "widgets/gimppreview.h"
|
||||
|
||||
#include "about-dialog.h"
|
||||
#include "brush-select.h"
|
||||
#include "color-area.h"
|
||||
#include "colormap-dialog.h"
|
||||
#include "devices.h"
|
||||
#include "dialogs-constructors.h"
|
||||
#include "docindex.h"
|
||||
|
@ -45,38 +49,49 @@
|
|||
#include "gradient-editor.h"
|
||||
#include "gradient-select.h"
|
||||
#include "lc_dialog.h"
|
||||
|
||||
#include "palette-editor.h"
|
||||
#include "pattern-select.h"
|
||||
#include "preferences-dialog.h"
|
||||
#include "tips-dialog.h"
|
||||
#include "toolbox.h"
|
||||
|
||||
#include "context_manager.h"
|
||||
#include "gdisplay.h"
|
||||
#include "gimpcontainer.h"
|
||||
#include "gimpcontext.h"
|
||||
#include "gimpdatafactory.h"
|
||||
#include "gimpimage.h"
|
||||
#include "gimprc.h"
|
||||
#include "module_db.h"
|
||||
#include "undo_history.h"
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
#include "gdisplay_color_ui.h"
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
|
||||
static GtkWidget * dialogs_brush_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_pattern_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_gradient_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_palette_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static void dialogs_indexed_palette_selected (GimpColormapDialog *dialog,
|
||||
GimpContext *context);
|
||||
|
||||
static GtkWidget * dialogs_dockable_new (GtkWidget *widget,
|
||||
const gchar *name,
|
||||
const gchar *short_name,
|
||||
GimpDockableGetTabFunc get_tab_func);
|
||||
static GtkWidget * dialogs_brush_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_pattern_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_gradient_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
static GtkWidget * dialogs_palette_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
gint size);
|
||||
|
||||
static GtkWidget * dialogs_dockable_new (GtkWidget *widget,
|
||||
const gchar *name,
|
||||
const gchar *short_name,
|
||||
GimpDockableGetTabFunc get_tab_func);
|
||||
|
||||
|
||||
/* public functions */
|
||||
|
@ -145,6 +160,89 @@ dialogs_document_index_get (GimpDialogFactory *factory)
|
|||
return document_index_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_preferences_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return preferences_dialog_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_input_devices_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return input_dialog_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_module_browser_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return module_db_browser_new ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_indexed_palette_get (GimpDialogFactory *factory)
|
||||
{
|
||||
GimpColormapDialog *cmap_dlg;
|
||||
|
||||
cmap_dlg = gimp_colormap_dialog_create (image_context);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (cmap_dlg), "selected",
|
||||
GTK_SIGNAL_FUNC (dialogs_indexed_palette_selected),
|
||||
factory->context);
|
||||
|
||||
return GTK_WIDGET (cmap_dlg);
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_undo_history_get (GimpDialogFactory *factory)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
GimpImage *gimage;
|
||||
|
||||
gdisp = gimp_context_get_display (factory->context);
|
||||
|
||||
if (! gdisp)
|
||||
return NULL;
|
||||
|
||||
gimage = gdisp->gimage;
|
||||
|
||||
if (! gimage->undo_history)
|
||||
gimage->undo_history = undo_history_new (gimage);
|
||||
|
||||
return gimage->undo_history;
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_display_filters_get (GimpDialogFactory *factory)
|
||||
{
|
||||
#ifdef DISPLAY_FILTERS
|
||||
GDisplay *gdisp;
|
||||
|
||||
gdisp = gimp_context_get_display (factory->context);
|
||||
|
||||
if (! gdisp)
|
||||
gdisp = color_area_gdisp;
|
||||
|
||||
if (! gdisp->cd_ui)
|
||||
gdisplay_color_ui_new (gdisp);
|
||||
|
||||
return gdisp->cd_ui;
|
||||
#else
|
||||
return NULL;
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_tips_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return tips_dialog_create ();
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
dialogs_about_get (GimpDialogFactory *factory)
|
||||
{
|
||||
return about_dialog_create ();
|
||||
}
|
||||
|
||||
|
||||
GtkWidget *
|
||||
dialogs_image_list_view_new (GimpDialogFactory *factory)
|
||||
|
@ -348,6 +446,29 @@ dialogs_tool_grid_view_new (GimpDialogFactory *factory)
|
|||
|
||||
/* private functions */
|
||||
|
||||
static void
|
||||
dialogs_indexed_palette_selected (GimpColormapDialog *dialog,
|
||||
GimpContext *context)
|
||||
{
|
||||
GimpImage *gimage;
|
||||
GimpRGB color;
|
||||
gint index;
|
||||
|
||||
gimage = gimp_colormap_dialog_image (dialog);
|
||||
index = gimp_colormap_dialog_col_index (dialog);
|
||||
|
||||
gimp_rgba_set_uchar (&color,
|
||||
gimage->cmap[index * 3],
|
||||
gimage->cmap[index * 3 + 1],
|
||||
gimage->cmap[index * 3 + 2],
|
||||
255);
|
||||
|
||||
if (active_color == FOREGROUND)
|
||||
gimp_context_set_foreground (context, &color);
|
||||
else if (active_color == BACKGROUND)
|
||||
gimp_context_set_background (context, &color);
|
||||
}
|
||||
|
||||
static GtkWidget *
|
||||
dialogs_brush_tab_func (GimpDockable *dockable,
|
||||
GimpDockbook *dockbook,
|
||||
|
|
|
@ -30,6 +30,14 @@ GtkWidget * dialogs_gradient_select_get (GimpDialogFactory *factory);
|
|||
GtkWidget * dialogs_palette_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_error_console_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_document_index_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_preferences_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_input_devices_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_module_browser_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_indexed_palette_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_undo_history_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_display_filters_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_tips_get (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_about_get (GimpDialogFactory *factory);
|
||||
|
||||
GtkWidget * dialogs_image_list_view_new (GimpDialogFactory *factory);
|
||||
GtkWidget * dialogs_brush_list_view_new (GimpDialogFactory *factory);
|
||||
|
|
|
@ -31,39 +31,36 @@
|
|||
#include "gimpcontext.h"
|
||||
|
||||
|
||||
typedef struct _DialogEntry DialogEntry;
|
||||
|
||||
struct _DialogEntry
|
||||
{
|
||||
const gchar *identifier;
|
||||
GimpDialogNewFunc new_func;
|
||||
gboolean singleton;
|
||||
gboolean session_managed;
|
||||
};
|
||||
|
||||
|
||||
GimpDialogFactory *global_dialog_factory = NULL;
|
||||
GimpDialogFactory *global_dock_factory = NULL;
|
||||
GimpDialogFactory *global_image_dock_factory = NULL;
|
||||
|
||||
|
||||
static const DialogEntry toplevel_entries[] =
|
||||
static const GimpDialogFactoryEntry toplevel_entries[] =
|
||||
{
|
||||
{ "gimp:toolbox", dialogs_toolbox_get, TRUE, TRUE },
|
||||
{ "gimp:lc-dialog", dialogs_lc_get, TRUE, TRUE },
|
||||
{ "gimp:tool-options-dialog", dialogs_tool_options_get, TRUE, TRUE },
|
||||
{ "gimp:device-status-dialog", dialogs_device_status_get, TRUE, TRUE },
|
||||
{ "gimp:brush-select-dialog", dialogs_brush_select_get, TRUE, TRUE },
|
||||
{ "gimp:pattern-select-dialog", dialogs_pattern_select_get, TRUE, TRUE },
|
||||
{ "gimp:gradient-select-dialog", dialogs_gradient_select_get, TRUE, TRUE },
|
||||
{ "gimp:palette-dialog", dialogs_palette_get, TRUE, TRUE },
|
||||
{ "gimp:error-console-dialog", dialogs_error_console_get, TRUE, TRUE },
|
||||
{ "gimp:document-index-dialog", dialogs_document_index_get, TRUE, TRUE }
|
||||
{ "gimp:toolbox", dialogs_toolbox_get, TRUE, TRUE },
|
||||
{ "gimp:lc-dialog", dialogs_lc_get, TRUE, TRUE },
|
||||
{ "gimp:tool-options-dialog", dialogs_tool_options_get, TRUE, TRUE },
|
||||
{ "gimp:device-status-dialog", dialogs_device_status_get, TRUE, TRUE },
|
||||
{ "gimp:brush-select-dialog", dialogs_brush_select_get, TRUE, TRUE },
|
||||
{ "gimp:pattern-select-dialog", dialogs_pattern_select_get, TRUE, TRUE },
|
||||
{ "gimp:gradient-select-dialog", dialogs_gradient_select_get, TRUE, TRUE },
|
||||
{ "gimp:palette-dialog", dialogs_palette_get, TRUE, TRUE },
|
||||
{ "gimp:error-console-dialog", dialogs_error_console_get, TRUE, TRUE },
|
||||
{ "gimp:document-index-dialog", dialogs_document_index_get, TRUE, TRUE },
|
||||
{ "gimp:preferences-dialog", dialogs_preferences_get, TRUE, FALSE },
|
||||
{ "gimp:input-devices-dialog", dialogs_input_devices_get, TRUE, FALSE },
|
||||
{ "gimp:module-browser-dialog", dialogs_module_browser_get, TRUE, FALSE },
|
||||
{ "gimp:indexed-palette-dialog", dialogs_indexed_palette_get, TRUE, FALSE },
|
||||
{ "gimp:undo-history-dialog", dialogs_undo_history_get, FALSE, FALSE },
|
||||
{ "gimp:display-filters-dialog", dialogs_display_filters_get, FALSE, FALSE },
|
||||
{ "gimp:tips-dialog", dialogs_tips_get, TRUE, FALSE },
|
||||
{ "gimp:about-dialog", dialogs_about_get, TRUE, FALSE }
|
||||
};
|
||||
static const gint n_toplevel_entries = (sizeof (toplevel_entries) /
|
||||
sizeof (toplevel_entries[0]));
|
||||
|
||||
static const DialogEntry dock_entries[] =
|
||||
static const GimpDialogFactoryEntry dock_entries[] =
|
||||
{
|
||||
{ "gimp:image-list", dialogs_image_list_view_new, FALSE, FALSE },
|
||||
{ "gimp:brush-list", dialogs_brush_list_view_new, FALSE, FALSE },
|
||||
|
@ -82,7 +79,7 @@ static const gint n_dock_entries = (sizeof (dock_entries) /
|
|||
sizeof (dock_entries[0]));
|
||||
|
||||
/*
|
||||
static const DialogEntry image_dock_entries[] =
|
||||
static const GimpDialogFactoryEntry image_dock_entries[] =
|
||||
{
|
||||
};
|
||||
static const gint n_image_dock_entries = (sizeof (image_dock_entries) /
|
||||
|
|
|
@ -75,13 +75,6 @@ gradient_dialog_create (void)
|
|||
{
|
||||
gradient_select_dialog = gradient_select_new (NULL, NULL);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_VISIBLE (gradient_select_dialog->shell))
|
||||
gtk_widget_show (gradient_select_dialog->shell);
|
||||
else
|
||||
gdk_window_raise (gradient_select_dialog->shell->window);
|
||||
}
|
||||
|
||||
return gradient_select_dialog->shell;
|
||||
}
|
||||
|
|
|
@ -33,22 +33,16 @@
|
|||
#include "tools/gimptoolinfo.h"
|
||||
#include "tools/tool_manager.h"
|
||||
|
||||
#include "about-dialog.h"
|
||||
#include "color-area.h"
|
||||
#include "colormap-dialog.h"
|
||||
#include "errorconsole.h"
|
||||
#include "info-dialog.h"
|
||||
#include "info-window.h"
|
||||
#include "layer-select.h"
|
||||
#include "preferences-dialog.h"
|
||||
#include "tips-dialog.h"
|
||||
|
||||
#include "app_procs.h"
|
||||
#include "commands.h"
|
||||
#include "context_manager.h"
|
||||
#include "convert.h"
|
||||
#include "desaturate.h"
|
||||
#include "devices.h"
|
||||
#include "channel_ops.h"
|
||||
#include "equalize.h"
|
||||
#include "file-open.h"
|
||||
|
@ -70,18 +64,11 @@
|
|||
#include "invert.h"
|
||||
#include "lc_dialog.h"
|
||||
#include "layers_dialogP.h"
|
||||
#include "module_db.h"
|
||||
#include "plug_in.h"
|
||||
#include "resize.h"
|
||||
#include "scale.h"
|
||||
#include "selection.h"
|
||||
#include "toolbox.h"
|
||||
#include "undo.h"
|
||||
#include "undo_history.h"
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
#include "gdisplay_color_ui.h"
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
|
@ -1095,13 +1082,6 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
|
|||
|
||||
/***** Tools *****/
|
||||
|
||||
void
|
||||
tools_toolbox_raise_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
toolbox_raise ();
|
||||
}
|
||||
|
||||
void
|
||||
tools_default_colors_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
|
@ -1192,118 +1172,6 @@ filters_repeat_cmd_callback (GtkWidget *widget,
|
|||
plug_in_repeat (callback_action);
|
||||
}
|
||||
|
||||
/***** Dialogs ******/
|
||||
|
||||
void
|
||||
dialogs_preferences_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
preferences_dialog_create ();
|
||||
}
|
||||
|
||||
static void
|
||||
dialogs_indexed_palette_select_callback (GimpColormapDialog *dialog,
|
||||
gpointer data)
|
||||
{
|
||||
GimpImage *image;
|
||||
GimpRGB color;
|
||||
gint index;
|
||||
|
||||
image = gimp_colormap_dialog_image (dialog);
|
||||
index = gimp_colormap_dialog_col_index (dialog);
|
||||
|
||||
gimp_rgba_set_uchar (&color,
|
||||
image->cmap[index * 3],
|
||||
image->cmap[index * 3 + 1],
|
||||
image->cmap[index * 3 + 2],
|
||||
255);
|
||||
|
||||
if (active_color == FOREGROUND)
|
||||
gimp_context_set_foreground (gimp_context_get_user (), &color);
|
||||
else if (active_color == BACKGROUND)
|
||||
gimp_context_set_background (gimp_context_get_user (), &color);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_indexed_palette_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
static GimpColormapDialog *cmap_dlg;
|
||||
|
||||
if (!cmap_dlg)
|
||||
{
|
||||
cmap_dlg = gimp_colormap_dialog_create (image_context);
|
||||
|
||||
gtk_signal_connect
|
||||
(GTK_OBJECT (cmap_dlg), "selected",
|
||||
GTK_SIGNAL_FUNC (dialogs_indexed_palette_select_callback),
|
||||
NULL);
|
||||
}
|
||||
|
||||
if (! GTK_WIDGET_VISIBLE (cmap_dlg))
|
||||
gtk_widget_show (GTK_WIDGET (cmap_dlg));
|
||||
else
|
||||
gdk_window_raise (GTK_WIDGET (cmap_dlg)->window);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_input_devices_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
input_dialog_create ();
|
||||
}
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
void
|
||||
dialogs_display_filters_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
|
||||
gdisp = gdisplay_active ();
|
||||
if (!gdisp)
|
||||
gdisp = color_area_gdisp;
|
||||
|
||||
if (!gdisp->cd_ui)
|
||||
gdisplay_color_ui_new (gdisp);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (gdisp->cd_ui))
|
||||
gtk_widget_show (gdisp->cd_ui);
|
||||
else
|
||||
gdk_window_raise (gdisp->cd_ui->window);
|
||||
}
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
void
|
||||
dialogs_undo_history_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GDisplay *gdisp;
|
||||
GimpImage *gimage;
|
||||
return_if_no_display (gdisp);
|
||||
|
||||
gimage = gdisp->gimage;
|
||||
|
||||
if (!gimage->undo_history)
|
||||
gimage->undo_history = undo_history_new (gimage);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (gimage->undo_history))
|
||||
gtk_widget_show (gimage->undo_history);
|
||||
else
|
||||
gdk_window_raise (gimage->undo_history->window);
|
||||
}
|
||||
|
||||
void
|
||||
dialogs_module_browser_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
GtkWidget *module_browser;
|
||||
|
||||
module_browser = module_db_browser_new ();
|
||||
gtk_widget_show (module_browser);
|
||||
}
|
||||
|
||||
|
||||
/***** Help *****/
|
||||
|
||||
void
|
||||
|
@ -1320,20 +1188,6 @@ help_context_help_cmd_callback (GtkWidget *widget,
|
|||
gimp_context_help ();
|
||||
}
|
||||
|
||||
void
|
||||
help_tips_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
tips_dialog_create ();
|
||||
}
|
||||
|
||||
void
|
||||
help_about_cmd_callback (GtkWidget *widget,
|
||||
gpointer client_data)
|
||||
{
|
||||
about_dialog_create ();
|
||||
}
|
||||
|
||||
|
||||
/*****************************/
|
||||
/***** Local functions *****/
|
||||
|
|
|
@ -104,7 +104,6 @@ void layers_add_alpha_channel_cmd_callback (GtkWidget *, gpointer);
|
|||
void layers_alpha_select_cmd_callback (GtkWidget *, gpointer);
|
||||
void layers_resize_to_image_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
void tools_toolbox_raise_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_default_colors_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_swap_colors_cmd_callback (GtkWidget *, gpointer);
|
||||
void tools_swap_contexts_cmd_callback (GtkWidget *, gpointer);
|
||||
|
@ -116,20 +115,8 @@ void filters_repeat_cmd_callback (GtkWidget *widget,
|
|||
gpointer callback_data,
|
||||
guint callback_action);
|
||||
|
||||
void dialogs_preferences_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_indexed_palette_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_input_devices_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_undo_history_cmd_callback (GtkWidget *, gpointer);
|
||||
void dialogs_module_browser_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
#ifdef DISPLAY_FILTERS
|
||||
void dialogs_display_filters_cmd_callback (GtkWidget *, gpointer);
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
void help_help_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_context_help_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_tips_cmd_callback (GtkWidget *, gpointer);
|
||||
void help_about_cmd_callback (GtkWidget *, gpointer);
|
||||
|
||||
|
||||
#endif /* __COMMANDS_H__ */
|
||||
|
|
|
@ -209,73 +209,66 @@ device_info_get_by_name (gchar *name)
|
|||
|
||||
/* the gtk input dialog */
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
input_dialog_create (void)
|
||||
{
|
||||
static GtkWidget *inputd = NULL;
|
||||
GtkWidget *hbbox;
|
||||
|
||||
if (!inputd)
|
||||
{
|
||||
inputd = gtk_input_dialog_new ();
|
||||
if (inputd)
|
||||
return inputd;
|
||||
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
inputd = gtk_input_dialog_new ();
|
||||
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (inputd);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_MAPPED (inputd))
|
||||
gtk_widget_show (inputd);
|
||||
else
|
||||
gdk_window_raise (inputd->window);
|
||||
}
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
|
||||
return inputd;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -747,14 +740,7 @@ device_status_create (void)
|
|||
gint i;
|
||||
|
||||
if (deviceD)
|
||||
{
|
||||
if (! GTK_WIDGET_MAPPED (deviceD->shell))
|
||||
gtk_widget_show (deviceD->shell);
|
||||
else
|
||||
gdk_window_raise (deviceD->shell->window);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
return deviceD->shell;
|
||||
|
||||
deviceD = g_new (DeviceInfoDialog, 1);
|
||||
|
||||
|
@ -955,8 +941,6 @@ device_status_create (void)
|
|||
GTK_SIGNAL_FUNC (device_status_destroy_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (deviceD->shell);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
|
||||
|
|
|
@ -102,7 +102,6 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
{
|
||||
/* <Toolbox>/File */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_File"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/New..."), "<control>N", file_new_cmd_callback, 0 },
|
||||
|
@ -119,7 +118,7 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
{ { "/File/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/Preferences..."), NULL, dialogs_preferences_cmd_callback, 0 },
|
||||
{ { N_("/File/Preferences..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:preferences-dialog") },
|
||||
"file/dialogs/preferences/preferences.html", NULL },
|
||||
|
||||
/* <Toolbox>/File/Dialogs */
|
||||
|
@ -141,12 +140,12 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
"file/dialogs/gradient_selection.html", NULL },
|
||||
{ { N_("/File/Dialogs/Palette..."), "<control>P", dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:palette-dialog") },
|
||||
"file/dialogs/palette_selection.html", NULL },
|
||||
{ { N_("/File/Dialogs/Indexed Palette..."), NULL, dialogs_indexed_palette_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Indexed Palette..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:indexed-palette-dialog") },
|
||||
"file/dialogs/indexed_palette.html", NULL },
|
||||
|
||||
{ { "/File/Dialogs/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/Dialogs/Input Devices..."), NULL, dialogs_input_devices_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Input Devices..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:input-devices-dialog") },
|
||||
"file/dialogs/input_devices.html", NULL },
|
||||
{ { N_("/File/Dialogs/Device Status..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:device-status-dialog") },
|
||||
"file/dialogs/device_status.html", NULL },
|
||||
|
@ -158,7 +157,7 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
{ { N_("/File/Dialogs/Error Console..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:error-console-dialog") },
|
||||
"file/dialogs/error_console.html", NULL },
|
||||
#ifdef DISPLAY_FILTERS
|
||||
{ { N_("/File/Dialogs/Display Filters..."), NULL, dialogs_display_filters_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Display Filters..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:display-filters-dialog") },
|
||||
"file/dialogs/display_filters/display_filters.html", NULL },
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
|
@ -227,10 +226,9 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
/* <Toolbox>/Xtns */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_Xtns"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Xtns/Module Browser..."), NULL, dialogs_module_browser_cmd_callback, 0 },
|
||||
{ { N_("/Xtns/Module Browser..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:module-browser-dialog") },
|
||||
"dialogs/module_browser.html", NULL },
|
||||
|
||||
{ { "/Xtns/---", NULL, NULL, 0, "<Separator>" },
|
||||
|
@ -238,16 +236,15 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
/* <Toolbox>/Help */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_Help"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Help/Help..."), "F1", help_help_cmd_callback, 0 },
|
||||
"help/dialogs/help.html", NULL },
|
||||
{ { N_("/Help/Context Help..."), "<shift>F1", help_context_help_cmd_callback, 0 },
|
||||
"help/context_help.html", NULL },
|
||||
{ { N_("/Help/Tip of the Day..."), NULL, help_tips_cmd_callback, 0 },
|
||||
{ { N_("/Help/Tip of the Day..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:tips-dialog") },
|
||||
"help/dialogs/tip_of_the_day.html", NULL },
|
||||
{ { N_("/Help/About..."), NULL, help_about_cmd_callback, 0 },
|
||||
{ { N_("/Help/About..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:about-dialog") },
|
||||
"help/dialogs/about.html", NULL },
|
||||
#ifdef ENABLE_DEBUG_ENTRY
|
||||
{ { N_("/Help/Dump Items (Debug)"), NULL, menus_debug_cmd_callback, 0 },
|
||||
|
@ -534,7 +531,7 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
|
||||
/* <Image>/Tools */
|
||||
|
||||
{ { N_("/Tools/Toolbox"), NULL, tools_toolbox_raise_cmd_callback, 0 },
|
||||
{ { N_("/Tools/Toolbox"), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:toolbox") },
|
||||
"toolbox/toolbox.html", NULL },
|
||||
{ { N_("/Tools/Default Colors"), "D", tools_default_colors_cmd_callback, 0 },
|
||||
"toolbox/toolbox.html#default_colors", NULL },
|
||||
|
@ -563,12 +560,12 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
"dialogs/gradient_selection.html", NULL },
|
||||
{ { N_("/Dialogs/Palette..."), "<control>P", dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:palette-dialog") },
|
||||
"dialogs/palette_selection.html", NULL },
|
||||
{ { N_("/Dialogs/Indexed Palette..."), NULL, dialogs_indexed_palette_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Indexed Palette..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:indexed-palette-dialog") },
|
||||
"dialogs/indexed_palette.html", NULL },
|
||||
|
||||
{ { "/Dialogs/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Dialogs/Input Devices..."), NULL, dialogs_input_devices_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Input Devices..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:input-devices-dialog") },
|
||||
"dialogs/input_devices.html", NULL },
|
||||
{ { N_("/Dialogs/Device Status..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:device-status-dialog") },
|
||||
"dialogs/device_status.html", NULL },
|
||||
|
@ -580,10 +577,10 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
{ { N_("/Dialogs/Error Console..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:error-console-dialog") },
|
||||
"dialogs/error_console.html", NULL },
|
||||
#ifdef DISPLAY_FILTERS
|
||||
{ { N_("/Dialogs/Display Filters..."), NULL, dialogs_display_filters_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Display Filters..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:display-filters-dialogs") },
|
||||
"dialogs/display_filters/display_filters.html", NULL },
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
{ { N_("/Dialogs/Undo History..."), NULL, dialogs_undo_history_cmd_callback, 0},
|
||||
{ { N_("/Dialogs/Undo History..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:undo-history-dialog") },
|
||||
"dialogs/undo_history.html", NULL },
|
||||
|
||||
{ { "/---", NULL, NULL, 0, "<Separator>" },
|
||||
|
|
|
@ -181,15 +181,6 @@ palette_dialog_create (void)
|
|||
top_level_palette = palette_dialog_new (FALSE);
|
||||
|
||||
dialog_register (top_level_palette->shell);
|
||||
|
||||
gtk_widget_show (top_level_palette->shell);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (! GTK_WIDGET_VISIBLE (top_level_palette->shell))
|
||||
gtk_widget_show (top_level_palette->shell);
|
||||
else
|
||||
gdk_window_raise (top_level_palette->shell->window);
|
||||
}
|
||||
|
||||
return top_level_palette->shell;
|
||||
|
|
|
@ -82,13 +82,6 @@ pattern_dialog_create (void)
|
|||
{
|
||||
pattern_select_dialog = pattern_select_new (NULL, NULL);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_VISIBLE (pattern_select_dialog->shell))
|
||||
gtk_widget_show (pattern_select_dialog->shell);
|
||||
else
|
||||
gdk_window_raise (pattern_select_dialog->shell->window);
|
||||
}
|
||||
|
||||
return pattern_select_dialog->shell;
|
||||
}
|
||||
|
|
|
@ -1345,7 +1345,7 @@ prefs_help_func (const gchar *help_data)
|
|||
/************************************************************************
|
||||
* create the preferences dialog
|
||||
*/
|
||||
void
|
||||
GtkWidget *
|
||||
preferences_dialog_create (void)
|
||||
{
|
||||
GtkWidget *ctree;
|
||||
|
@ -1381,10 +1381,7 @@ preferences_dialog_create (void)
|
|||
gchar *pixels_per_unit;
|
||||
|
||||
if (prefs_dlg)
|
||||
{
|
||||
gdk_window_raise (GTK_WIDGET (prefs_dlg)->window);
|
||||
return;
|
||||
}
|
||||
return prefs_dlg;
|
||||
|
||||
if (edit_temp_path == NULL)
|
||||
{
|
||||
|
@ -2612,5 +2609,5 @@ preferences_dialog_create (void)
|
|||
gtk_widget_show (ctree);
|
||||
gtk_widget_show (notebook);
|
||||
|
||||
gtk_widget_show (prefs_dlg);
|
||||
return prefs_dlg;
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#define __PREFERENCES_DIALOG_H__
|
||||
|
||||
|
||||
void preferences_dialog_create (void);
|
||||
GtkWidget * preferences_dialog_create (void);
|
||||
|
||||
|
||||
#endif /* __PREFERENCES_DIALOG_H__ */
|
||||
|
|
|
@ -60,7 +60,7 @@ static gint tips_count = 0;
|
|||
static gint old_show_tips = 0;
|
||||
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
tips_dialog_create (void)
|
||||
{
|
||||
GtkWidget *vbox;
|
||||
|
@ -86,118 +86,109 @@ tips_dialog_create (void)
|
|||
if (last_tip >= tips_count || last_tip < 0)
|
||||
last_tip = 0;
|
||||
|
||||
if (!tips_dialog)
|
||||
{
|
||||
tips_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
|
||||
gtk_window_set_wmclass (GTK_WINDOW (tips_dialog), "tip_of_the_day", "Gimp");
|
||||
gtk_window_set_title (GTK_WINDOW (tips_dialog), _("GIMP Tip of the Day"));
|
||||
gtk_window_set_position (GTK_WINDOW (tips_dialog), GTK_WIN_POS_CENTER);
|
||||
gtk_window_set_policy (GTK_WINDOW (tips_dialog), FALSE, TRUE, FALSE);
|
||||
if (tips_dialog)
|
||||
return tips_dialog;
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "delete_event",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&tips_dialog);
|
||||
tips_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
|
||||
gtk_window_set_wmclass (GTK_WINDOW (tips_dialog), "tip_of_the_day", "Gimp");
|
||||
gtk_window_set_title (GTK_WINDOW (tips_dialog), _("GIMP Tip of the Day"));
|
||||
gtk_window_set_position (GTK_WINDOW (tips_dialog), GTK_WIN_POS_CENTER);
|
||||
gtk_window_set_policy (GTK_WINDOW (tips_dialog), FALSE, TRUE, FALSE);
|
||||
|
||||
/* destroy the tips window if the mainlevel gtk_main() function is left */
|
||||
gtk_quit_add_destroy (1, GTK_OBJECT (tips_dialog));
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "delete_event",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (tips_dialog), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&tips_dialog);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 0);
|
||||
gtk_container_add (GTK_CONTAINER (tips_dialog), vbox);
|
||||
gtk_widget_show (vbox);
|
||||
/* destroy the tips window if the mainlevel gtk_main() function is left */
|
||||
gtk_quit_add_destroy (1, GTK_OBJECT (tips_dialog));
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 5);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
vbox = gtk_vbox_new (FALSE, 0);
|
||||
gtk_container_add (GTK_CONTAINER (tips_dialog), vbox);
|
||||
gtk_widget_show (vbox);
|
||||
|
||||
tips_label = gtk_label_new (tips_text[last_tip]);
|
||||
gtk_label_set_justify (GTK_LABEL (tips_label), GTK_JUSTIFY_LEFT);
|
||||
gtk_misc_set_alignment (GTK_MISC (tips_label), 0.5, 0.5);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), tips_label, TRUE, TRUE, 3);
|
||||
gtk_widget_show (tips_label);
|
||||
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), vbox2, FALSE, FALSE, 0);
|
||||
gtk_widget_show (vbox2);
|
||||
hbox = gtk_hbox_new (FALSE, 5);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
frame = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), frame, TRUE, FALSE, 0);
|
||||
gtk_widget_show (frame);
|
||||
tips_label = gtk_label_new (tips_text[last_tip]);
|
||||
gtk_label_set_justify (GTK_LABEL (tips_label), GTK_JUSTIFY_LEFT);
|
||||
gtk_misc_set_alignment (GTK_MISC (tips_label), 0.5, 0.5);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), tips_label, TRUE, TRUE, 3);
|
||||
gtk_widget_show (tips_label);
|
||||
|
||||
pixmap = gimp_pixmap_new (wilber3_xpm);
|
||||
gtk_container_add (GTK_CONTAINER (frame), pixmap);
|
||||
gtk_widget_show (pixmap);
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 15);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_end (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
button =
|
||||
gtk_check_button_new_with_label (_("Show tip next time GIMP starts"));
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
|
||||
show_tips);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "toggled",
|
||||
GTK_SIGNAL_FUNC (tips_toggle_update),
|
||||
(gpointer) &show_tips);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), vbox2, FALSE, FALSE, 0);
|
||||
gtk_widget_show (vbox2);
|
||||
|
||||
old_show_tips = show_tips;
|
||||
frame = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), frame, TRUE, FALSE, 0);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
pixmap = gimp_pixmap_new (wilber3_xpm);
|
||||
gtk_container_add (GTK_CONTAINER (frame), pixmap);
|
||||
gtk_widget_show (pixmap);
|
||||
|
||||
button = gtk_button_new_with_label (_("Close"));
|
||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||
gtk_window_set_default (GTK_WINDOW (tips_dialog), button);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
hbox = gtk_hbox_new (FALSE, 15);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
|
||||
gtk_box_pack_end (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_END);
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 5);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
button = gtk_check_button_new_with_label (_("Show tip next time GIMP starts"));
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), show_tips);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "toggled",
|
||||
GTK_SIGNAL_FUNC (tips_toggle_update),
|
||||
&show_tips);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
|
||||
button = gtk_button_new_with_label (_("Previous Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_previous),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
old_show_tips = show_tips;
|
||||
|
||||
button = gtk_button_new_with_label (_("Next Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_next),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (tips_dialog,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/tip_of_the_day.html");
|
||||
}
|
||||
button = gtk_button_new_with_label (_("Close"));
|
||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||
gtk_window_set_default (GTK_WINDOW (tips_dialog), button);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_dialog_destroy),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (tips_dialog))
|
||||
{
|
||||
gtk_widget_show (tips_dialog);
|
||||
}
|
||||
else
|
||||
{
|
||||
gdk_window_raise (tips_dialog->window);
|
||||
}
|
||||
bbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_END);
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 5);
|
||||
gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (bbox);
|
||||
|
||||
button = gtk_button_new_with_label (_("Previous Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_previous),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
|
||||
button = gtk_button_new_with_label (_("Next Tip"));
|
||||
GTK_WIDGET_UNSET_FLAGS (button, GTK_RECEIVES_DEFAULT);
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (tips_show_next),
|
||||
NULL);
|
||||
gtk_container_add (GTK_CONTAINER (bbox), button);
|
||||
gtk_widget_show (button);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (tips_dialog,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/tip_of_the_day.html");
|
||||
|
||||
return tips_dialog;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#define __TIPS_DIALOG_H__
|
||||
|
||||
|
||||
void tips_dialog_create (void);
|
||||
GtkWidget * tips_dialog_create (void);
|
||||
|
||||
|
||||
#endif /* __TIPS_DIALOG_H__ */
|
||||
|
|
|
@ -102,7 +102,6 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
{
|
||||
/* <Toolbox>/File */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_File"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/New..."), "<control>N", file_new_cmd_callback, 0 },
|
||||
|
@ -119,7 +118,7 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
{ { "/File/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/Preferences..."), NULL, dialogs_preferences_cmd_callback, 0 },
|
||||
{ { N_("/File/Preferences..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:preferences-dialog") },
|
||||
"file/dialogs/preferences/preferences.html", NULL },
|
||||
|
||||
/* <Toolbox>/File/Dialogs */
|
||||
|
@ -141,12 +140,12 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
"file/dialogs/gradient_selection.html", NULL },
|
||||
{ { N_("/File/Dialogs/Palette..."), "<control>P", dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:palette-dialog") },
|
||||
"file/dialogs/palette_selection.html", NULL },
|
||||
{ { N_("/File/Dialogs/Indexed Palette..."), NULL, dialogs_indexed_palette_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Indexed Palette..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:indexed-palette-dialog") },
|
||||
"file/dialogs/indexed_palette.html", NULL },
|
||||
|
||||
{ { "/File/Dialogs/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/Dialogs/Input Devices..."), NULL, dialogs_input_devices_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Input Devices..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:input-devices-dialog") },
|
||||
"file/dialogs/input_devices.html", NULL },
|
||||
{ { N_("/File/Dialogs/Device Status..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:device-status-dialog") },
|
||||
"file/dialogs/device_status.html", NULL },
|
||||
|
@ -158,7 +157,7 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
{ { N_("/File/Dialogs/Error Console..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:error-console-dialog") },
|
||||
"file/dialogs/error_console.html", NULL },
|
||||
#ifdef DISPLAY_FILTERS
|
||||
{ { N_("/File/Dialogs/Display Filters..."), NULL, dialogs_display_filters_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Display Filters..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:display-filters-dialog") },
|
||||
"file/dialogs/display_filters/display_filters.html", NULL },
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
|
@ -227,10 +226,9 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
/* <Toolbox>/Xtns */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_Xtns"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Xtns/Module Browser..."), NULL, dialogs_module_browser_cmd_callback, 0 },
|
||||
{ { N_("/Xtns/Module Browser..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:module-browser-dialog") },
|
||||
"dialogs/module_browser.html", NULL },
|
||||
|
||||
{ { "/Xtns/---", NULL, NULL, 0, "<Separator>" },
|
||||
|
@ -238,16 +236,15 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
/* <Toolbox>/Help */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_Help"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Help/Help..."), "F1", help_help_cmd_callback, 0 },
|
||||
"help/dialogs/help.html", NULL },
|
||||
{ { N_("/Help/Context Help..."), "<shift>F1", help_context_help_cmd_callback, 0 },
|
||||
"help/context_help.html", NULL },
|
||||
{ { N_("/Help/Tip of the Day..."), NULL, help_tips_cmd_callback, 0 },
|
||||
{ { N_("/Help/Tip of the Day..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:tips-dialog") },
|
||||
"help/dialogs/tip_of_the_day.html", NULL },
|
||||
{ { N_("/Help/About..."), NULL, help_about_cmd_callback, 0 },
|
||||
{ { N_("/Help/About..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:about-dialog") },
|
||||
"help/dialogs/about.html", NULL },
|
||||
#ifdef ENABLE_DEBUG_ENTRY
|
||||
{ { N_("/Help/Dump Items (Debug)"), NULL, menus_debug_cmd_callback, 0 },
|
||||
|
@ -534,7 +531,7 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
|
||||
/* <Image>/Tools */
|
||||
|
||||
{ { N_("/Tools/Toolbox"), NULL, tools_toolbox_raise_cmd_callback, 0 },
|
||||
{ { N_("/Tools/Toolbox"), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:toolbox") },
|
||||
"toolbox/toolbox.html", NULL },
|
||||
{ { N_("/Tools/Default Colors"), "D", tools_default_colors_cmd_callback, 0 },
|
||||
"toolbox/toolbox.html#default_colors", NULL },
|
||||
|
@ -563,12 +560,12 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
"dialogs/gradient_selection.html", NULL },
|
||||
{ { N_("/Dialogs/Palette..."), "<control>P", dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:palette-dialog") },
|
||||
"dialogs/palette_selection.html", NULL },
|
||||
{ { N_("/Dialogs/Indexed Palette..."), NULL, dialogs_indexed_palette_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Indexed Palette..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:indexed-palette-dialog") },
|
||||
"dialogs/indexed_palette.html", NULL },
|
||||
|
||||
{ { "/Dialogs/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Dialogs/Input Devices..."), NULL, dialogs_input_devices_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Input Devices..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:input-devices-dialog") },
|
||||
"dialogs/input_devices.html", NULL },
|
||||
{ { N_("/Dialogs/Device Status..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:device-status-dialog") },
|
||||
"dialogs/device_status.html", NULL },
|
||||
|
@ -580,10 +577,10 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
{ { N_("/Dialogs/Error Console..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:error-console-dialog") },
|
||||
"dialogs/error_console.html", NULL },
|
||||
#ifdef DISPLAY_FILTERS
|
||||
{ { N_("/Dialogs/Display Filters..."), NULL, dialogs_display_filters_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Display Filters..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:display-filters-dialogs") },
|
||||
"dialogs/display_filters/display_filters.html", NULL },
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
{ { N_("/Dialogs/Undo History..."), NULL, dialogs_undo_history_cmd_callback, 0},
|
||||
{ { N_("/Dialogs/Undo History..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:undo-history-dialog") },
|
||||
"dialogs/undo_history.html", NULL },
|
||||
|
||||
{ { "/---", NULL, NULL, 0, "<Separator>" },
|
||||
|
|
|
@ -209,73 +209,66 @@ device_info_get_by_name (gchar *name)
|
|||
|
||||
/* the gtk input dialog */
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
input_dialog_create (void)
|
||||
{
|
||||
static GtkWidget *inputd = NULL;
|
||||
GtkWidget *hbbox;
|
||||
|
||||
if (!inputd)
|
||||
{
|
||||
inputd = gtk_input_dialog_new ();
|
||||
if (inputd)
|
||||
return inputd;
|
||||
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
inputd = gtk_input_dialog_new ();
|
||||
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (inputd);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_MAPPED (inputd))
|
||||
gtk_widget_show (inputd);
|
||||
else
|
||||
gdk_window_raise (inputd->window);
|
||||
}
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
|
||||
return inputd;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -747,14 +740,7 @@ device_status_create (void)
|
|||
gint i;
|
||||
|
||||
if (deviceD)
|
||||
{
|
||||
if (! GTK_WIDGET_MAPPED (deviceD->shell))
|
||||
gtk_widget_show (deviceD->shell);
|
||||
else
|
||||
gdk_window_raise (deviceD->shell->window);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
return deviceD->shell;
|
||||
|
||||
deviceD = g_new (DeviceInfoDialog, 1);
|
||||
|
||||
|
@ -955,8 +941,6 @@ device_status_create (void)
|
|||
GTK_SIGNAL_FUNC (device_status_destroy_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (deviceD->shell);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
|
||||
|
|
|
@ -209,73 +209,66 @@ device_info_get_by_name (gchar *name)
|
|||
|
||||
/* the gtk input dialog */
|
||||
|
||||
void
|
||||
GtkWidget *
|
||||
input_dialog_create (void)
|
||||
{
|
||||
static GtkWidget *inputd = NULL;
|
||||
GtkWidget *hbbox;
|
||||
|
||||
if (!inputd)
|
||||
{
|
||||
inputd = gtk_input_dialog_new ();
|
||||
if (inputd)
|
||||
return inputd;
|
||||
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
inputd = gtk_input_dialog_new ();
|
||||
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
/* register this one only */
|
||||
dialog_register (inputd);
|
||||
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
gtk_container_set_border_width
|
||||
(GTK_CONTAINER (GTK_DIALOG (inputd)->action_area), 2);
|
||||
gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (inputd)->action_area),
|
||||
FALSE);
|
||||
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
hbbox = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4);
|
||||
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->save_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->save_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
gtk_widget_reparent (GTK_INPUT_DIALOG (inputd)->close_button, hbbox);
|
||||
GTK_WIDGET_SET_FLAGS (GTK_INPUT_DIALOG (inputd)->close_button,
|
||||
GTK_CAN_DEFAULT);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (inputd)->action_area), hbbox,
|
||||
FALSE, FALSE, 0);
|
||||
gtk_widget_grab_default (GTK_INPUT_DIALOG (inputd)->close_button);
|
||||
gtk_widget_show(hbbox);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->save_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_write_rc),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (GTK_INPUT_DIALOG (inputd)->close_button),
|
||||
"clicked",
|
||||
GTK_SIGNAL_FUNC (devices_close_callback),
|
||||
inputd);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "destroy",
|
||||
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
|
||||
&inputd);
|
||||
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "enable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
gtk_signal_connect (GTK_OBJECT (inputd), "disable_device",
|
||||
GTK_SIGNAL_FUNC (input_dialog_able_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (inputd);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!GTK_WIDGET_MAPPED (inputd))
|
||||
gtk_widget_show (inputd);
|
||||
else
|
||||
gdk_window_raise (inputd->window);
|
||||
}
|
||||
/* Connect the "F1" help key */
|
||||
gimp_help_connect_help_accel (inputd,
|
||||
gimp_standard_help_func,
|
||||
"dialogs/input_devices.html");
|
||||
|
||||
return inputd;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -747,14 +740,7 @@ device_status_create (void)
|
|||
gint i;
|
||||
|
||||
if (deviceD)
|
||||
{
|
||||
if (! GTK_WIDGET_MAPPED (deviceD->shell))
|
||||
gtk_widget_show (deviceD->shell);
|
||||
else
|
||||
gdk_window_raise (deviceD->shell->window);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
return deviceD->shell;
|
||||
|
||||
deviceD = g_new (DeviceInfoDialog, 1);
|
||||
|
||||
|
@ -955,8 +941,6 @@ device_status_create (void)
|
|||
GTK_SIGNAL_FUNC (device_status_destroy_callback),
|
||||
NULL);
|
||||
|
||||
gtk_widget_show (deviceD->shell);
|
||||
|
||||
return deviceD->shell;
|
||||
}
|
||||
|
||||
|
|
|
@ -40,13 +40,13 @@ void devices_init (void);
|
|||
void devices_restore (void);
|
||||
|
||||
/* Create device info dialog */
|
||||
void input_dialog_create (void);
|
||||
GtkWidget * input_dialog_create (void);
|
||||
|
||||
/* Create the device status dialog */
|
||||
GtkWidget * device_status_create (void);
|
||||
|
||||
/* Returns TRUE, and makes necessary global changes
|
||||
* event is not for current_device
|
||||
* if event is not for current_device
|
||||
*/
|
||||
gint devices_check_change (GdkEvent *event);
|
||||
|
||||
|
|
|
@ -303,7 +303,7 @@ gimp_dialog_factory_dialog_new (GimpDialogFactory *factory,
|
|||
"gimp-dialog-factory-entry",
|
||||
entry);
|
||||
|
||||
if (entry->session_managed && GTK_WIDGET_TOPLEVEL (dialog))
|
||||
if (GTK_WIDGET_TOPLEVEL (dialog))
|
||||
{
|
||||
gimp_dialog_factory_add_toplevel (factory, dialog);
|
||||
}
|
||||
|
@ -365,10 +365,27 @@ gimp_dialog_factory_add_toplevel (GimpDialogFactory *factory,
|
|||
|
||||
if (info->toplevel_entry == entry)
|
||||
{
|
||||
if (entry->singleton)
|
||||
{
|
||||
if (info->widget)
|
||||
{
|
||||
g_warning ("%s(): singleton dialog \"%s\"created twice",
|
||||
G_GNUC_FUNCTION, entry->identifier);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if (info->widget)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
info->widget = toplevel;
|
||||
|
||||
gimp_dialog_factory_set_window_geometry (info->widget,
|
||||
info, FALSE);
|
||||
if (entry->session_managed)
|
||||
{
|
||||
gimp_dialog_factory_set_window_geometry (info->widget,
|
||||
info, FALSE);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
@ -477,6 +494,12 @@ gimp_dialog_factories_session_save_foreach (gchar *name,
|
|||
|
||||
info = (GimpSessionInfo *) list->data;
|
||||
|
||||
/* we keep session info entries for all dialogs created by the
|
||||
* factory but don't save them if they don't want to be managed
|
||||
*/
|
||||
if (info->toplevel_entry && ! info->toplevel_entry->session_managed)
|
||||
continue;
|
||||
|
||||
if (info->widget)
|
||||
gimp_dialog_factory_get_window_info (info->widget, info);
|
||||
|
||||
|
|
|
@ -102,7 +102,6 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
{
|
||||
/* <Toolbox>/File */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_File"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/New..."), "<control>N", file_new_cmd_callback, 0 },
|
||||
|
@ -119,7 +118,7 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
{ { "/File/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/Preferences..."), NULL, dialogs_preferences_cmd_callback, 0 },
|
||||
{ { N_("/File/Preferences..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:preferences-dialog") },
|
||||
"file/dialogs/preferences/preferences.html", NULL },
|
||||
|
||||
/* <Toolbox>/File/Dialogs */
|
||||
|
@ -141,12 +140,12 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
"file/dialogs/gradient_selection.html", NULL },
|
||||
{ { N_("/File/Dialogs/Palette..."), "<control>P", dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:palette-dialog") },
|
||||
"file/dialogs/palette_selection.html", NULL },
|
||||
{ { N_("/File/Dialogs/Indexed Palette..."), NULL, dialogs_indexed_palette_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Indexed Palette..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:indexed-palette-dialog") },
|
||||
"file/dialogs/indexed_palette.html", NULL },
|
||||
|
||||
{ { "/File/Dialogs/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/File/Dialogs/Input Devices..."), NULL, dialogs_input_devices_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Input Devices..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:input-devices-dialog") },
|
||||
"file/dialogs/input_devices.html", NULL },
|
||||
{ { N_("/File/Dialogs/Device Status..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:device-status-dialog") },
|
||||
"file/dialogs/device_status.html", NULL },
|
||||
|
@ -158,7 +157,7 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
{ { N_("/File/Dialogs/Error Console..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:error-console-dialog") },
|
||||
"file/dialogs/error_console.html", NULL },
|
||||
#ifdef DISPLAY_FILTERS
|
||||
{ { N_("/File/Dialogs/Display Filters..."), NULL, dialogs_display_filters_cmd_callback, 0 },
|
||||
{ { N_("/File/Dialogs/Display Filters..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:display-filters-dialog") },
|
||||
"file/dialogs/display_filters/display_filters.html", NULL },
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
|
||||
|
@ -227,10 +226,9 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
/* <Toolbox>/Xtns */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_Xtns"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Xtns/Module Browser..."), NULL, dialogs_module_browser_cmd_callback, 0 },
|
||||
{ { N_("/Xtns/Module Browser..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:module-browser-dialog") },
|
||||
"dialogs/module_browser.html", NULL },
|
||||
|
||||
{ { "/Xtns/---", NULL, NULL, 0, "<Separator>" },
|
||||
|
@ -238,16 +236,15 @@ static GimpItemFactoryEntry toolbox_entries[] =
|
|||
|
||||
/* <Toolbox>/Help */
|
||||
|
||||
/* the underscore installs an accelerator using the character that follows */
|
||||
{ { N_("/_Help"), NULL, NULL, 0, "<Branch>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Help/Help..."), "F1", help_help_cmd_callback, 0 },
|
||||
"help/dialogs/help.html", NULL },
|
||||
{ { N_("/Help/Context Help..."), "<shift>F1", help_context_help_cmd_callback, 0 },
|
||||
"help/context_help.html", NULL },
|
||||
{ { N_("/Help/Tip of the Day..."), NULL, help_tips_cmd_callback, 0 },
|
||||
{ { N_("/Help/Tip of the Day..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:tips-dialog") },
|
||||
"help/dialogs/tip_of_the_day.html", NULL },
|
||||
{ { N_("/Help/About..."), NULL, help_about_cmd_callback, 0 },
|
||||
{ { N_("/Help/About..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:about-dialog") },
|
||||
"help/dialogs/about.html", NULL },
|
||||
#ifdef ENABLE_DEBUG_ENTRY
|
||||
{ { N_("/Help/Dump Items (Debug)"), NULL, menus_debug_cmd_callback, 0 },
|
||||
|
@ -534,7 +531,7 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
|
||||
/* <Image>/Tools */
|
||||
|
||||
{ { N_("/Tools/Toolbox"), NULL, tools_toolbox_raise_cmd_callback, 0 },
|
||||
{ { N_("/Tools/Toolbox"), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:toolbox") },
|
||||
"toolbox/toolbox.html", NULL },
|
||||
{ { N_("/Tools/Default Colors"), "D", tools_default_colors_cmd_callback, 0 },
|
||||
"toolbox/toolbox.html#default_colors", NULL },
|
||||
|
@ -563,12 +560,12 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
"dialogs/gradient_selection.html", NULL },
|
||||
{ { N_("/Dialogs/Palette..."), "<control>P", dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:palette-dialog") },
|
||||
"dialogs/palette_selection.html", NULL },
|
||||
{ { N_("/Dialogs/Indexed Palette..."), NULL, dialogs_indexed_palette_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Indexed Palette..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:indexed-palette-dialog") },
|
||||
"dialogs/indexed_palette.html", NULL },
|
||||
|
||||
{ { "/Dialogs/---", NULL, NULL, 0, "<Separator>" },
|
||||
NULL, NULL },
|
||||
{ { N_("/Dialogs/Input Devices..."), NULL, dialogs_input_devices_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Input Devices..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:input-devices-dialog") },
|
||||
"dialogs/input_devices.html", NULL },
|
||||
{ { N_("/Dialogs/Device Status..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:device-status-dialog") },
|
||||
"dialogs/device_status.html", NULL },
|
||||
|
@ -580,10 +577,10 @@ static GimpItemFactoryEntry image_entries[] =
|
|||
{ { N_("/Dialogs/Error Console..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:error-console-dialog") },
|
||||
"dialogs/error_console.html", NULL },
|
||||
#ifdef DISPLAY_FILTERS
|
||||
{ { N_("/Dialogs/Display Filters..."), NULL, dialogs_display_filters_cmd_callback, 0 },
|
||||
{ { N_("/Dialogs/Display Filters..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:display-filters-dialogs") },
|
||||
"dialogs/display_filters/display_filters.html", NULL },
|
||||
#endif /* DISPLAY_FILTERS */
|
||||
{ { N_("/Dialogs/Undo History..."), NULL, dialogs_undo_history_cmd_callback, 0},
|
||||
{ { N_("/Dialogs/Undo History..."), NULL, dialogs_create_toplevel_cmd_callback, GPOINTER_TO_UINT ("gimp:undo-history-dialog") },
|
||||
"dialogs/undo_history.html", NULL },
|
||||
|
||||
{ { "/---", NULL, NULL, 0, "<Separator>" },
|
||||
|
|
|
@ -181,15 +181,6 @@ palette_dialog_create (void)
|
|||
top_level_palette = palette_dialog_new (FALSE);
|
||||
|
||||
dialog_register (top_level_palette->shell);
|
||||
|
||||
gtk_widget_show (top_level_palette->shell);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (! GTK_WIDGET_VISIBLE (top_level_palette->shell))
|
||||
gtk_widget_show (top_level_palette->shell);
|
||||
else
|
||||
gdk_window_raise (top_level_palette->shell->window);
|
||||
}
|
||||
|
||||
return top_level_palette->shell;
|
||||
|
|
Loading…
Reference in New Issue