patch for bug/wishlist 300450, add display option one or two column.

merge-requests/2/head
Gerard Klaver 2004-04-05 19:16:53 +00:00
rodzic 52b1cce372
commit dc41a0c10f
7 zmienionych plików z 62 dodań i 2 usunięć

Wyświetl plik

@ -1,5 +1,9 @@
2004-04-02 Henning Meier-Geinitz <henning@meier-geinitz.de>
2004-04-05 Gerard Klaver <gerard at gkall dot hobby dot nl>
* src/gtkglue.c src.gtkglue.h src/preferences.c src/preferences.h
src/xcam.c src/xscanimage.c: Add display option one or two column
See bug #300450.
2004-04-02 Henning Meier-Geinitz <henning@meier-geinitz.de>
* src/preview.c src/xscanimage.c: Set sensitivity to false when
scanning or previewing. This change fixes some problems that
accour when preview ist started again while preview is running.

Wyświetl plik

@ -894,8 +894,16 @@ panel_build (GSGDialog * dialog)
int num_vector_opts = 0, *vector_opts;
main_hbox = gtk_hbox_new (FALSE, 2);
if (dialog->twocolumn)
{
option_vbox = gtk_hbox_new (FALSE, 2); /* two column display */
}
else
{
option_vbox = gtk_vbox_new (FALSE, 2); /* one column display */
}
option_vbox = gtk_vbox_new (FALSE, 2);
gtk_box_pack_start (GTK_BOX (main_hbox), option_vbox, FALSE, FALSE, 0);
gtk_widget_show (option_vbox);
@ -1258,6 +1266,7 @@ gsg_create_dialog (GtkWidget * window, const char *device_name,
dialog->param_change_callback = param_change_callback;
dialog->param_change_arg = param_change_arg;
dialog->advanced = preferences.advanced;
dialog->twocolumn = preferences.twocolumn_enabled;
dialog->element = malloc (num_elements * sizeof (dialog->element[0]));
memset (dialog->element, 0, num_elements * sizeof (dialog->element[0]));
@ -1401,6 +1410,13 @@ gsg_set_tooltips (GSGDialog *dialog, int enable)
gtk_tooltips_disable (dialog->tooltips);
}
void
gsg_set_twocolumn (GSGDialog *dialog, int twocolumn)
{
dialog->twocolumn = twocolumn;
panel_rebuild (dialog);
}
void
gsg_set_sensitivity (GSGDialog *dialog, int sensitive)
{

Wyświetl plik

@ -55,6 +55,7 @@ typedef struct GSGDialog
GtkWidget *window;
GtkWidget *main_hbox;
GtkWidget *advanced_vbox;
GtkWidget *twocolumn;
GtkTooltips *tooltips;
GdkColor tooltips_fg;
GdkColor tooltips_bg;
@ -111,6 +112,7 @@ extern void gsg_refresh_dialog (GSGDialog *dialog);
extern void gsg_update_scan_window (GSGDialog *dialog);
extern void gsg_set_advanced (GSGDialog *dialog, int advanced);
extern void gsg_set_tooltips (GSGDialog *dialog, int enable);
extern void gsg_set_twocolumn (GSGDialog *dialog, int enable);
extern void gsg_set_sensitivity (GSGDialog *dialog, int sensitive);
extern void gsg_destroy_dialog (GSGDialog * dialog);

Wyświetl plik

@ -38,6 +38,7 @@ Preferences preferences =
0, /* no default filename */
0, /* advanced user */
1, /* tooltips enabled */
1, /* two column enabled */
10.0, /* length unit */
1, /* preserve_preview */
0, /* preview_own_cmap */
@ -60,6 +61,7 @@ desc[] =
{"filename", w_string, POFFSET(filename)},
{"advanced", w_int, POFFSET(advanced)},
{"tool-tips", w_int, POFFSET(tooltips_enabled)},
{"twocolumn", w_int, POFFSET(twocolumn_enabled)},
{"length-unit", w_double, POFFSET(length_unit)},
{"preserve-preview", w_int, POFFSET(preserve_preview)},
{"preview-own-cmap", w_int, POFFSET(preview_own_cmap)},

Wyświetl plik

@ -9,6 +9,7 @@ typedef struct
const char *filename; /* default filename */
int advanced; /* advanced user? */
int tooltips_enabled; /* should tooltips be disabled? */
int twocolumn_enabled; /* should two column be disabled? */
double length_unit; /* 1.0==mm, 10.0==cm, 25.4==inches, etc. */
int preserve_preview; /* save/restore preview image(s)? */
int preview_own_cmap; /* install colormap for preview */

Wyświetl plik

@ -492,6 +492,13 @@ pref_toggle_tooltips (GtkWidget *widget, gpointer data)
gsg_set_tooltips (dialog, preferences.tooltips_enabled);
}
static void
pref_toggle_twocolumn (GtkWidget *widget, gpointer data)
{
preferences.twocolumn_enabled = (GTK_CHECK_MENU_ITEM (widget)->active != 0);
gsg_set_twocolumn (dialog, preferences.twocolumn_enabled);
}
static GtkWidget *
build_preferences_menu (GSGDialog *dialog)
{
@ -517,6 +524,16 @@ build_preferences_menu (GSGDialog *dialog)
gtk_widget_show (item);
gtk_signal_connect (GTK_OBJECT (item), "toggled",
(GtkSignalFunc) pref_toggle_tooltips, 0);
/* twocolumn submenu: */
item = gtk_check_menu_item_new_with_label ("Show two column display");
gtk_check_menu_item_set_state (GTK_CHECK_MENU_ITEM (item),
preferences.twocolumn_enabled);
gtk_menu_append (GTK_MENU (menu), item);
gtk_widget_show (item);
gtk_signal_connect (GTK_OBJECT (item), "toggled",
(GtkSignalFunc) pref_toggle_twocolumn, 0);
item = gtk_menu_item_new ();
gtk_container_add (GTK_CONTAINER (menu), item);

Wyświetl plik

@ -1583,6 +1583,14 @@ pref_toggle_tooltips (GtkWidget *widget, gpointer data)
pref_xscanimage_save ();
}
static void
pref_toggle_twocolumn (GtkWidget *widget, gpointer data)
{
preferences.twocolumn_enabled = (GTK_CHECK_MENU_ITEM (widget)->active != 0);
gsg_set_twocolumn (dialog, preferences.twocolumn_enabled);
pref_xscanimage_save ();
}
static GtkWidget *
pref_build_menu (void)
{
@ -1612,6 +1620,16 @@ pref_build_menu (void)
gtk_widget_show (item);
gtk_signal_connect (GTK_OBJECT (item), "toggled",
(GtkSignalFunc) pref_toggle_tooltips, 0);
/* two column submenu: */
item = gtk_check_menu_item_new_with_label ("Show two column display");
gtk_check_menu_item_set_state (GTK_CHECK_MENU_ITEM (item),
preferences.twocolumn_enabled);
gtk_menu_append (GTK_MENU (menu), item);
gtk_widget_show (item);
gtk_signal_connect (GTK_OBJECT (item), "toggled",
(GtkSignalFunc) pref_toggle_twocolumn, 0);
/* length unit submenu: */