annotate src/preferences.c @ 468:2a1711fecfde

Replace fullscreen.info and fullscreen.show_info options by: image_overlay.common.enabled => to save last state to rc file image_overlay.common.show_at_startup => overrides .common.enabled at startup image_overlay.common.template_string => replace fullscreen.info common is used since for now there is only one image overlay setup, later specific setups may be added.
author Laurent Monin <geeqie@norz.org>
date Mon, 21 Apr 2008 20:01:22 +0000
parents 1397463b9c74
children 681796421193
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1 /*
196
bdad1cacadf4 rename GQview -> Geeqie over the code
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 170
diff changeset
2 * Geeqie
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
3 * (C) 2006 John Ellis
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
4 *
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
5 * Author: John Ellis
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
6 *
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
7 * This software is released under the GNU General Public License (GNU GPL).
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
8 * Please read the included file COPYING for more information.
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
9 * This software comes with no warranty of any kind, use at your own risk!
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
10 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
11
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
12
281
b1c2c2cf19d4 gqview.h -> main.h
Laurent Monin <geeqie@norz.org>
parents: 267
diff changeset
13 #include "main.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
14 #include "preferences.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
15
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
16 #include "cache_maint.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
17 #include "editors.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
18 #include "filelist.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
19 #include "fullscreen.h"
26
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
20 #include "image.h"
426
e4a5d61aff1c show the AdobeRGB profile in the menu, indicate input profile from image
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 413
diff changeset
21 #include "color-man.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
22 #include "img-view.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
23 #include "layout_config.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
24 #include "layout_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
25 #include "pixbuf_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
26 #include "slideshow.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
27 #include "utilops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
28 #include "ui_fileops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
29 #include "ui_misc.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
30 #include "ui_tabcomp.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
31 #include "ui_utildlg.h"
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
32 #include "bar_exif.h"
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
33 #include "exif.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
34
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
35 #include <math.h>
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
36
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
37
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
38 #define EDITOR_NAME_MAX_LENGTH 32
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
39 #define EDITOR_COMMAND_MAX_LENGTH 1024
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
40
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
41
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
42 typedef struct _ThumbSize ThumbSize;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
43 struct _ThumbSize
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
44 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
45 gint w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
46 gint h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
47 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
48
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
49 static ThumbSize thumb_size_list[] =
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
50 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
51 { 24, 24 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
52 { 32, 32 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
53 { 48, 48 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
54 { 64, 64 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
55 { 96, 72 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
56 { 96, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
57 { 128, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
58 { 128, 128 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
59 { 160, 120 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
60 { 160, 160 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
61 { 192, 144 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
62 { 192, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
63 { 256, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
64 { 256, 256 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
65 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
66
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
67 enum {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
68 FE_ENABLE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
69 FE_EXTENSION,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
70 FE_DESCRIPTION
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
71 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
72
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
73 /* config memory values */
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
74 static ConfOptions *c_options = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
75
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
76
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
77 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
78 static gint debug_c;
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
79 #endif
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
80
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
81 static GtkWidget *configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
82 static GtkWidget *startup_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
83 static GtkListStore *filter_store = NULL;
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
84 static GtkWidget *editor_name_entry[GQ_EDITOR_SLOTS];
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
85 static GtkWidget *editor_command_entry[GQ_EDITOR_SLOTS];
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
86
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
87 static GtkWidget *layout_widget;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
88
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
89 static GtkWidget *safe_delete_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
90
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
91 static GtkWidget *color_profile_input_file_entry[COLOR_PROFILE_INPUTS];
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
92 static GtkWidget *color_profile_input_name_entry[COLOR_PROFILE_INPUTS];
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
93 static GtkWidget *color_profile_screen_file_entry;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
94
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
95 static GtkWidget *sidecar_ext_entry;
225
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
96
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
97
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
98 #define CONFIG_WINDOW_DEF_WIDTH 700
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
99 #define CONFIG_WINDOW_DEF_HEIGHT 500
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
100
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
101 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
102 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
103 * option widget callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
104 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
105 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
106
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
107 static void startup_path_set_current(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
108 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
109 gtk_entry_set_text(GTK_ENTRY(startup_path_entry), layout_get_path(NULL));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
110 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
111
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
112 static void zoom_mode_original_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
113 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
114 if (GTK_TOGGLE_BUTTON (widget)->active)
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
115 c_options->image.zoom_mode = ZOOM_RESET_ORIGINAL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
116 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
117
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
118 static void zoom_mode_fit_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
119 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
120 if (GTK_TOGGLE_BUTTON (widget)->active)
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
121 c_options->image.zoom_mode = ZOOM_RESET_FIT_WINDOW;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
122 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
123
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
124 static void zoom_mode_none_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
125 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
126 if (GTK_TOGGLE_BUTTON (widget)->active)
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
127 c_options->image.zoom_mode = ZOOM_RESET_NONE;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
128 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
129
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
130 static void zoom_increment_cb(GtkWidget *spin, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
131 {
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
132 c_options->image.zoom_increment = (gint)(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spin)) * 10.0 + 0.01);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
133 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
134
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
135 static void slideshow_delay_cb(GtkWidget *spin, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
136 {
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
137 c_options->slideshow.delay = (gint)(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spin)) *
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
138 (double)SLIDESHOW_SUBSECOND_PRECISION + 0.01);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
139 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
140
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
141 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
142 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
143 * sync progam to config window routine (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
144 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
145 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
146
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
147 static void config_window_apply(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
148 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
149 const gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
150 gint new_style;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
151 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
152 gint refresh = FALSE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
153
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
154 for(i = 0; i < GQ_EDITOR_SLOTS; i++)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
155 {
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
156 if (i < GQ_EDITOR_GENERIC_SLOTS)
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
157 {
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
158 g_free(options->editor_name[i]);
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
159 options->editor_name[i] = NULL;
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
160 buf = gtk_entry_get_text(GTK_ENTRY(editor_name_entry[i]));
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
161 if (buf && strlen(buf) > 0) options->editor_name[i] = g_strdup(buf);
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
162 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
163
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
164 g_free(options->editor_command[i]);
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
165 options->editor_command[i] = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
166 buf = gtk_entry_get_text(GTK_ENTRY(editor_command_entry[i]));
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
167 if (buf && strlen(buf) > 0) options->editor_command[i] = g_strdup(buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
168 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
169 layout_edit_update_all();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
170
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
171 g_free(options->startup_path);
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
172 options->startup_path = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
173 buf = gtk_entry_get_text(GTK_ENTRY(startup_path_entry));
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
174 if (buf && strlen(buf) > 0) options->startup_path = remove_trailing_slash(buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
175
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
176 g_free(options->file_ops.safe_delete_path);
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
177 options->file_ops.safe_delete_path = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
178 buf = gtk_entry_get_text(GTK_ENTRY(safe_delete_path_entry));
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
179 if (buf && strlen(buf) > 0) options->file_ops.safe_delete_path = remove_trailing_slash(buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
180
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
181 if (options->file_filter.show_hidden_files != c_options->file_filter.show_hidden_files) refresh = TRUE;
373
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
182 if (options->file_filter.show_dot_directory != c_options->file_filter.show_dot_directory) refresh = TRUE;
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
183 if (options->file_sort.case_sensitive != c_options->file_sort.case_sensitive) refresh = TRUE;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
184 if (options->file_filter.disable != c_options->file_filter.disable) refresh = TRUE;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
185
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
186 options->startup_path_enable = c_options->startup_path_enable;
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
187 options->file_ops.confirm_delete = c_options->file_ops.confirm_delete;
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
188 options->file_ops.enable_delete_key = c_options->file_ops.enable_delete_key;
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
189 options->file_ops.safe_delete_enable = c_options->file_ops.safe_delete_enable;
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
190 options->file_ops.safe_delete_folder_maxsize = c_options->file_ops.safe_delete_folder_maxsize;
338
300f3fcec821 Rename window options (moved to layout) and re-order rc file.
Laurent Monin <geeqie@norz.org>
parents: 334
diff changeset
191 options->layout.tools_restore_state = c_options->layout.tools_restore_state;
300f3fcec821 Rename window options (moved to layout) and re-order rc file.
Laurent Monin <geeqie@norz.org>
parents: 334
diff changeset
192 options->layout.save_window_positions = c_options->layout.save_window_positions;
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
193 options->image.zoom_mode = c_options->image.zoom_mode;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
194 options->image.zoom_2pass = c_options->image.zoom_2pass;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
195 options->image.fit_window_to_image = c_options->image.fit_window_to_image;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
196 options->image.limit_window_size = c_options->image.limit_window_size;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
197 options->image.zoom_to_fit_allow_expand = c_options->image.zoom_to_fit_allow_expand;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
198 options->image.max_window_size = c_options->image.max_window_size;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
199 options->image.limit_autofit_size = c_options->image.limit_autofit_size;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
200 options->image.max_autofit_size = c_options->image.max_autofit_size;
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
201 options->progressive_key_scrolling = c_options->progressive_key_scrolling;
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
202 options->thumbnails.max_width = c_options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
203 options->thumbnails.max_height = c_options->thumbnails.max_height;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
204 options->thumbnails.enable_caching = c_options->thumbnails.enable_caching;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
205 options->thumbnails.cache_into_dirs = c_options->thumbnails.cache_into_dirs;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
206 options->thumbnails.fast = c_options->thumbnails.fast;
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
207 #if 0
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
208 options->thumbnails.use_xvpics = c_options->thumbnails.use_xvpics;
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
209 #endif
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
210 options->thumbnails.spec_standard = c_options->thumbnails.spec_standard;
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
211 options->enable_metadata_dirs = c_options->enable_metadata_dirs;
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
212 options->file_filter.show_hidden_files = c_options->file_filter.show_hidden_files;
373
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
213 options->file_filter.show_dot_directory = c_options->file_filter.show_dot_directory;
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
214
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
215 options->file_sort.case_sensitive = c_options->file_sort.case_sensitive;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
216 options->file_filter.disable = c_options->file_filter.disable;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
217
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
218 sidecar_ext_parse(gtk_entry_get_text(GTK_ENTRY(sidecar_ext_entry)), FALSE);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
219
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
220 options->slideshow.random = c_options->slideshow.random;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
221 options->slideshow.repeat = c_options->slideshow.repeat;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
222 options->slideshow.delay = c_options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
223
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
224 options->mousewheel_scrolls = c_options->mousewheel_scrolls;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
225
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
226 options->file_ops.enable_in_place_rename = c_options->file_ops.enable_in_place_rename;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
227
330
06b913dae425 Rename collection options.
Laurent Monin <geeqie@norz.org>
parents: 329
diff changeset
228 options->collections.rectangular_selection = c_options->collections.rectangular_selection;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
229
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
230 options->image.tile_cache_max = c_options->image.tile_cache_max;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
231
413
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
232 options->image.read_buffer_size = c_options->image.read_buffer_size;
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
233 options->image.idle_read_loop_count = c_options->image.idle_read_loop_count;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
234
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
235 options->thumbnails.quality = c_options->thumbnails.quality;
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
236 options->image.zoom_quality = c_options->image.zoom_quality;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
237
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
238 options->image.zoom_increment = c_options->image.zoom_increment;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
239
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
240 options->image.enable_read_ahead = c_options->image.enable_read_ahead;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
241
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
242 if (options->image.use_custom_border_color != c_options->image.use_custom_border_color
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
243 || !gdk_color_equal(&options->image.border_color, &c_options->image.border_color))
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
244 {
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
245 options->image.use_custom_border_color = c_options->image.use_custom_border_color;
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
246 options->image.border_color = c_options->image.border_color;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
247 layout_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
248 view_window_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
249 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
250
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
251 options->fullscreen.screen = c_options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
252 options->fullscreen.clean_flip = c_options->fullscreen.clean_flip;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
253 options->fullscreen.disable_saver = c_options->fullscreen.disable_saver;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
254 options->fullscreen.above = c_options->fullscreen.above;
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
255 options->image_overlay.common.show_at_startup = c_options->image_overlay.common.show_at_startup;
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
256 if (c_options->image_overlay.common.template_string)
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
257 {
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
258 g_free(options->image_overlay.common.template_string);
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
259 options->image_overlay.common.template_string = g_strdup(c_options->image_overlay.common.template_string);
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
260 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
261
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
262 options->update_on_time_change = c_options->update_on_time_change;
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
263 options->image.exif_rotate_enable = c_options->image.exif_rotate_enable;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
264
342
de6de19bd03a Rename dupe_custom_threshold option to duplicates_similarity_threshold.
Laurent Monin <geeqie@norz.org>
parents: 341
diff changeset
265 options->duplicates_similarity_threshold = c_options->duplicates_similarity_threshold;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
266
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
267 options->tree_descend_subdirs = c_options->tree_descend_subdirs;
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
268
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
269 options->open_recent_list_maxsize = c_options->open_recent_list_maxsize;
458
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
270 options->dnd_icon_size = c_options->dnd_icon_size;
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
271
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
272 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
273 debug = debug_c;
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
274 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
275
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
276 #ifdef HAVE_LCMS
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
277 for (i = 0; i < COLOR_PROFILE_INPUTS; i++)
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
278 {
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
279 g_free(options->color_profile.input_name[i]);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
280 options->color_profile.input_name[i] = NULL;
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
281 buf = gtk_entry_get_text(GTK_ENTRY(color_profile_input_name_entry[i]));
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
282 if (buf && strlen(buf) > 0) options->color_profile.input_name[i] = g_strdup(buf);
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
283
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
284 g_free(options->color_profile.input_file[i]);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
285 options->color_profile.input_file[i] = NULL;
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
286 buf = gtk_entry_get_text(GTK_ENTRY(color_profile_input_file_entry[i]));
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
287 if (buf && strlen(buf) > 0) options->color_profile.input_file[i] = g_strdup(buf);
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
288 }
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
289 g_free(options->color_profile.screen_file);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
290 options->color_profile.screen_file = NULL;
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
291 buf = gtk_entry_get_text(GTK_ENTRY(color_profile_screen_file_entry));
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
292 if (buf && strlen(buf) > 0) options->color_profile.screen_file = g_strdup(buf);
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
293 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
294
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
295 for (i=0; ExifUIList[i].key; i++)
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
296 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
297 ExifUIList[i].current = ExifUIList[i].temp;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
298 }
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
299
375
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
300 {
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
301 gchar *layout_order = layout_config_get(layout_widget, &new_style);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
302
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
303 if (new_style != options->layout.style ||
375
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
304 (layout_order == NULL) != (options->layout.order == NULL) ||
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
305 !options->layout.order ||
375
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
306 strcmp(layout_order, options->layout.order) != 0)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
307 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
308 if (refresh) filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
309 refresh = FALSE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
310
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
311 g_free(options->layout.order);
375
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
312 options->layout.order = layout_order;
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
313 layout_order = NULL; /* g_free() later */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
314
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
315 options->layout.style = new_style;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
316
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
317 layout_styles_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
318 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
319
375
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
320 g_free(layout_order);
314779888939 Rename l_conf to layout_order and make it more local.
Laurent Monin <geeqie@norz.org>
parents: 374
diff changeset
321 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
322
26
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
323 image_options_sync();
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
324
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
325 if (refresh)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
326 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
327 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
328 layout_refresh(NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
329 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
330 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
331
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
332 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
333 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
334 * config window main button callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
335 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
336 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
337
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
338 static void config_window_close_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
339 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
340 gtk_widget_destroy(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
341 configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
342 filter_store = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
343 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
344
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
345 static gint config_window_delete(GtkWidget *w, GdkEventAny *event, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
346 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
347 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
348 return TRUE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
349 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
350
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
351 static void config_window_ok_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
352 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
353 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
354 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
355 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
356
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
357 static void config_window_apply_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
358 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
359 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
360 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
361
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
362 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
363 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
364 * config window setup (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
365 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
366 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
367
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
368 static void exif_item_cb(GtkWidget *combo, gpointer data)
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
369 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
370 gint *option = data;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
371 *option = gtk_combo_box_get_active(GTK_COMBO_BOX(combo));
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
372 }
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
373
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
374 static void exif_item(GtkWidget *table, gint column, gint row,
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
375 const gchar *text, gint option, gint *option_c)
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
376 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
377 GtkWidget *combo;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
378
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
379 *option_c = option;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
380
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
381 pref_table_label(table, column, row, text, 0.0);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
382
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
383 combo = gtk_combo_box_new_text();
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
384
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
385 /* note: the order is important, it must match the values of
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
386 * EXIF_UI_OFF, _IFSET, _ON */
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
387 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Never"));
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
388 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("If set"));
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
389 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Always"));
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
390
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
391 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), option);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
392
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
393 g_signal_connect(G_OBJECT(combo), "changed",
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
394 G_CALLBACK(exif_item_cb), option_c);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
395
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
396 gtk_table_attach(GTK_TABLE(table), combo,
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
397 column + 1, column + 2, row, row + 1,
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
398 GTK_EXPAND | GTK_FILL, 0, 0, 0);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
399 gtk_widget_show(combo);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
400 }
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
401
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
402 static void quality_menu_cb(GtkWidget *combo, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
403 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
404 gint *option = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
405
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
406 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
407 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
408 case 0:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
409 default:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
410 *option = GDK_INTERP_NEAREST;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
411 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
412 case 1:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
413 *option = GDK_INTERP_TILES;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
414 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
415 case 2:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
416 *option = GDK_INTERP_BILINEAR;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
417 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
418 case 3:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
419 *option = GDK_INTERP_HYPER;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
420 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
421 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
422 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
423
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
424 static void add_quality_menu(GtkWidget *table, gint column, gint row, const gchar *text,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
425 gint option, gint *option_c)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
426 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
427 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
428 gint current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
429
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
430 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
431
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
432 pref_table_label(table, column, row, text, 0.0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
433
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
434 combo = gtk_combo_box_new_text();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
435
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
436 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Nearest (worst, but fastest)"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
437 if (option == GDK_INTERP_NEAREST) current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
438 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Tiles"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
439 if (option == GDK_INTERP_TILES) current = 1;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
440 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Bilinear"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
441 if (option == GDK_INTERP_BILINEAR) current = 2;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
442 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Hyper (best, but slowest)"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
443 if (option == GDK_INTERP_HYPER) current = 3;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
444
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
445 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
446
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
447 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
448 G_CALLBACK(quality_menu_cb), option_c);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
449
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
450 gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1,
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
451 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
452 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
453 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
454
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
455 #if 0
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
456 static void add_dither_menu(gint option, gint *option_c, gchar *text, GtkWidget *box)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
457 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
458 GtkWidget *hbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
459 GtkWidget *omenu;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
460 GtkWidget *menu;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
461
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
462 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
463
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
464 hbox = pref_box_new(box, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
465 pref_label_new(hbox, text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
466
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
467 omenu = gtk_option_menu_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
468 menu = gtk_menu_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
469
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
470 add_menu_item(menu, _("None"), option_c, (gint)GDK_RGB_DITHER_NONE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
471 add_menu_item(menu, _("Normal"), option_c, (gint)GDK_RGB_DITHER_NORMAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
472 add_menu_item(menu, _("Best"), option_c, (gint)GDK_RGB_DITHER_MAX);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
473
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
474 gtk_option_menu_set_menu(GTK_OPTION_MENU(omenu), menu);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
475 gtk_option_menu_set_history(GTK_OPTION_MENU(omenu), *option_c);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
476
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
477 gtk_box_pack_start(GTK_BOX(hbox), omenu, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
478 gtk_widget_show(omenu);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
479 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
480 #endif
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
481
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
482 static void thumb_size_menu_cb(GtkWidget *combo, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
483 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
484 gint n;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
485
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
486 n = gtk_combo_box_get_active(GTK_COMBO_BOX(combo));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
487
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
488 if (n >= 0 && n < sizeof(thumb_size_list) / sizeof(ThumbSize))
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
489 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
490 c_options->thumbnails.max_width = thumb_size_list[n].w;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
491 c_options->thumbnails.max_height = thumb_size_list[n].h;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
492 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
493 else if (n > 0)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
494 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
495 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
496 c_options->thumbnails.max_height = options->thumbnails.max_height;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
497 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
498 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
499
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
500 static void add_thumb_size_menu(GtkWidget *table, gint column, gint row, gchar *text)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
501 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
502 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
503 gint current;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
504 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
505
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
506 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
507 c_options->thumbnails.max_height = options->thumbnails.max_height;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
508
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
509 pref_table_label(table, column, row, text, 0.0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
510
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
511 combo = gtk_combo_box_new_text();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
512
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
513 current = -1;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
514 for (i = 0; i < sizeof(thumb_size_list) / sizeof(ThumbSize); i++)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
515 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
516 gint w, h;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
517 gchar *buf;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
518
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
519 w = thumb_size_list[i].w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
520 h = thumb_size_list[i].h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
521
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
522 buf = g_strdup_printf("%d x %d", w, h);
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
523 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), buf);
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
524 g_free(buf);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
525
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
526 if (w == options->thumbnails.max_width && h == options->thumbnails.max_height) current = i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
527 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
528
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
529 if (current == -1)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
530 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
531 gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
532
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
533 buf = g_strdup_printf("%s %d x %d", _("Custom"), options->thumbnails.max_width, options->thumbnails.max_height);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
534 gtk_combo_box_append_text(GTK_COMBO_BOX(combo), buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
535 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
536
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
537 current = i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
538 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
539
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
540 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
541 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
542 G_CALLBACK(thumb_size_menu_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
543
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
544 gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1,
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
545 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
546 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
547 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
548
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
549 static void filter_store_populate(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
550 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
551 GList *work;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
552
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
553 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
554
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
555 gtk_list_store_clear(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
556
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
557 work = filter_get_list();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
558 while (work)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
559 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
560 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
561 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
562
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
563 fe = work->data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
564 work = work->next;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
565
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
566 gtk_list_store_append(filter_store, &iter);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
567 gtk_list_store_set(filter_store, &iter, 0, fe, -1);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
568 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
569 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
570
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
571 static void filter_store_ext_edit_cb(GtkCellRendererText *cell, gchar *path_str,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
572 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
573 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
574 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
575 FilterEntry *fe = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
576 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
577 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
578
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
579 if (!new_text || strlen(new_text) < 1) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
580
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
581 tpath = gtk_tree_path_new_from_string(path_str);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
582 gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
583 gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, 0, &fe, -1);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
584
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
585 g_free(fe->extensions);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
586 fe->extensions = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
587
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
588 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
589 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
590 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
591
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
592 static void filter_store_desc_edit_cb(GtkCellRendererText *cell, gchar *path_str,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
593 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
594 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
595 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
596 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
597 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
598 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
599
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
600 if (!new_text || strlen(new_text) < 1) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
601
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
602 tpath = gtk_tree_path_new_from_string(path_str);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
603 gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
604 gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, 0, &fe, -1);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
605
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
606 g_free(fe->description);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
607 fe->description = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
608
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
609 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
610 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
611
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
612 static void filter_store_enable_cb(GtkCellRendererToggle *renderer,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
613 gchar *path_str, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
614 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
615 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
616 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
617 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
618 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
619
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
620 tpath = gtk_tree_path_new_from_string(path_str);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
621 gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
622 gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, 0, &fe, -1);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
623
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
624 fe->enabled = !fe->enabled;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
625
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
626 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
627 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
628 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
629
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
630 static void filter_set_func(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
631 GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
632 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
633 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
634
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
635 gtk_tree_model_get(tree_model, iter, 0, &fe, -1);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
636
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
637 switch(GPOINTER_TO_INT(data))
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
638 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
639 case FE_ENABLE:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
640 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
641 "active", fe->enabled, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
642 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
643 case FE_EXTENSION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
644 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
645 "text", fe->extensions, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
646 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
647 case FE_DESCRIPTION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
648 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
649 "text", fe->description, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
650 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
651 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
652 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
653
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
654 static void filter_add_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
655 {
212
ca2772493f11 differentiate among normal image, raw image and metadata
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 211
diff changeset
656 filter_add_unique("description", ".new", FORMAT_CLASS_IMAGE, TRUE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
657 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
658
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
659 /* FIXME: implement the scroll to/select row stuff for tree view */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
660 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
661
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
662 static void filter_remove_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
663 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
664 GtkWidget *filter_view = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
665 GtkTreeSelection *selection;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
666 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
667 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
668
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
669 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
670 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(filter_view));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
671 if (!gtk_tree_selection_get_selected(selection, NULL, &iter)) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
672 gtk_tree_model_get(GTK_TREE_MODEL(filter_store), &iter, 0, &fe, -1);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
673 if (!fe) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
674
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
675 filter_remove_entry(fe);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
676 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
677 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
678 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
679
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
680 static void filter_default_ok_cb(GenericDialog *gd, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
681 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
682 filter_reset();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
683 filter_add_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
684 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
685 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
686 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
687
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
688 static void dummy_cancel_cb(GenericDialog *gd, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
689 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
690 /* no op, only so cancel button appears */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
691 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
692
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
693 static void filter_default_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
694 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
695 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
696
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
697 gd = generic_dialog_new(_("Reset filters"),
254
7ba77ce03676 Make the wmclass value unique among the code by defining
Laurent Monin <geeqie@norz.org>
parents: 231
diff changeset
698 GQ_WMCLASS, "reset_filter", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
699 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
700 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Reset filters"),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
701 _("This will reset the file filters to the defaults.\nContinue?"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
702 generic_dialog_add_button(gd, GTK_STOCK_OK, NULL, filter_default_ok_cb, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
703 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
704 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
705
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
706 static void filter_disable_cb(GtkWidget* widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
707 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
708 GtkWidget *frame = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
709
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
710 gtk_widget_set_sensitive(frame,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
711 !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
712 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
713
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
714 static void editor_default_ok_cb(GenericDialog *gd, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
715 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
716 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
717
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
718 editor_reset_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
719 if (!configwindow) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
720
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
721 for (i = 0; i < GQ_EDITOR_SLOTS; i++)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
722 {
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
723 if (i < GQ_EDITOR_GENERIC_SLOTS)
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
724 gtk_entry_set_text(GTK_ENTRY(editor_name_entry[i]),
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
725 (options->editor_name[i]) ? options->editor_name[i] : "");
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
726 gtk_entry_set_text(GTK_ENTRY(editor_command_entry[i]),
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
727 (options->editor_command[i]) ? options->editor_command[i] : "");
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
728 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
729 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
730
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
731 static void editor_default_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
732 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
733 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
734
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
735 gd = generic_dialog_new(_("Reset editors"),
254
7ba77ce03676 Make the wmclass value unique among the code by defining
Laurent Monin <geeqie@norz.org>
parents: 231
diff changeset
736 GQ_WMCLASS, "reset_filter", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
737 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
738 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Reset editors"),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
739 _("This will reset the edit commands to the defaults.\nContinue?"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
740 generic_dialog_add_button(gd, GTK_STOCK_OK, NULL, editor_default_ok_cb, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
741 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
742 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
743
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
744 static void editor_help_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
745 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
746 help_window_show("editors");
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
747 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
748
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
749 static void safe_delete_view_cb(GtkWidget* widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
750 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
751 layout_set_path(NULL, gtk_entry_get_text(GTK_ENTRY(safe_delete_path_entry)));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
752 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
753
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
754 static void safe_delete_clear_ok_cb(GenericDialog *gd, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
755 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
756 file_util_trash_clear();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
757 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
758
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
759 static void safe_delete_clear_cb(GtkWidget* widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
760 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
761 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
762 GtkWidget *entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
763 gd = generic_dialog_new(_("Clear trash"),
254
7ba77ce03676 Make the wmclass value unique among the code by defining
Laurent Monin <geeqie@norz.org>
parents: 231
diff changeset
764 GQ_WMCLASS, "clear_trash", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
765 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
766 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Clear trash"),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
767 _("This will remove the trash contents."));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
768 generic_dialog_add_button(gd, GTK_STOCK_OK, NULL, safe_delete_clear_ok_cb, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
769 entry = gtk_entry_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
770 GTK_WIDGET_UNSET_FLAGS(entry, GTK_CAN_FOCUS);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
771 gtk_editable_set_editable(GTK_EDITABLE(entry), FALSE);
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
772 if (options->file_ops.safe_delete_path) gtk_entry_set_text(GTK_ENTRY(entry), options->file_ops.safe_delete_path);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
773 gtk_box_pack_start(GTK_BOX(gd->vbox), entry, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
774 gtk_widget_show(entry);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
775 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
776 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
777
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
778 static void image_overlay_template_view_changed_cb(GtkWidget* widget, gpointer data)
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
779 {
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
780 GtkWidget *pTextView;
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
781 GtkTextBuffer* pTextBuffer;
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
782 GtkTextIter iStart;
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
783 GtkTextIter iEnd;
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
784
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
785 pTextView = GTK_WIDGET(data);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
786
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
787 pTextBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(pTextView));
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
788 gtk_text_buffer_get_start_iter(pTextBuffer, &iStart);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
789 gtk_text_buffer_get_end_iter(pTextBuffer, &iEnd);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
790
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
791 if (c_options->image_overlay.common.template_string) g_free(c_options->image_overlay.common.template_string);
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
792 c_options->image_overlay.common.template_string = gtk_text_buffer_get_text(pTextBuffer, &iStart, &iEnd, TRUE);
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
793 }
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
794
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
795 static void fullscreen_info_default_ok_cb(GenericDialog *gd, gpointer data)
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
796 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
797 GtkTextView *text_view = data;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
798 GtkTextBuffer *buffer;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
799
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
800 set_default_fullscreen_info(options);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
801 if (!configwindow) return;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
802
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
803 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_view));
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
804 gtk_text_buffer_set_text(buffer, options->image_overlay.common.template_string, -1);
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
805 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
806
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
807 static void fullscreen_info_default_cb(GtkWidget *widget, gpointer data)
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
808 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
809 GenericDialog *gd;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
810
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
811 gd = generic_dialog_new(_("Reset fullscreen info string"),
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
812 GQ_WMCLASS, "reset_fullscreen_info", widget, TRUE,
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
813 dummy_cancel_cb, data);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
814 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Reset fullscreen info string"),
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
815 _("This will reset the fullscreen info string to the default.\nContinue?"));
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
816 generic_dialog_add_button(gd, GTK_STOCK_OK, NULL, fullscreen_info_default_ok_cb, TRUE);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
817 gtk_widget_show(gd->dialog);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
818 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
819
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
820
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
821 /* general options tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
822 static void config_tab_general(GtkWidget *notebook)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
823 {
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
824 GtkWidget *label;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
825 GtkWidget *hbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
826 GtkWidget *vbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
827 GtkWidget *group;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
828 GtkWidget *subgroup;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
829 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
830 GtkWidget *tabcomp;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
831 GtkWidget *ct_button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
832 GtkWidget *table;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
833 GtkWidget *spin;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
834
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
835 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
836 gtk_container_set_border_width(GTK_CONTAINER(vbox), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
837 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
838 label = gtk_label_new(_("General"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
839 gtk_notebook_append_page (GTK_NOTEBOOK(notebook), vbox, label);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
840
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
841 group = pref_group_new(vbox, FALSE, _("Startup"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
842
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
843 button = pref_checkbox_new_int(group, _("Change to folder:"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
844 options->startup_path_enable, &c_options->startup_path_enable);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
845
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
846 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
847 pref_checkbox_link_sensitivity(button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
848
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
849 tabcomp = tab_completion_new(&startup_path_entry, options->startup_path, NULL, NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
850 tab_completion_add_select_button(startup_path_entry, NULL, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
851 gtk_box_pack_start(GTK_BOX(hbox), tabcomp, TRUE, TRUE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
852 gtk_widget_show(tabcomp);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
853
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
854 button = pref_button_new(hbox, NULL, _("Use current"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
855 G_CALLBACK(startup_path_set_current), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
856
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
857 group = pref_group_new(vbox, FALSE, _("Thumbnails"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
858
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
859 table = pref_table_new(group, 2, 2, FALSE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
860 add_thumb_size_menu(table, 0, 0, _("Size:"));
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
861 add_quality_menu(table, 0, 1, _("Quality:"), options->thumbnails.quality, &c_options->thumbnails.quality);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
862
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
863 ct_button = pref_checkbox_new_int(group, _("Cache thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
864 options->thumbnails.enable_caching, &c_options->thumbnails.enable_caching);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
865
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
866 subgroup = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
867 pref_checkbox_link_sensitivity(ct_button, subgroup);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
868
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
869 button = pref_checkbox_new_int(subgroup, _("Use shared thumbnail cache"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
870 options->thumbnails.spec_standard, &c_options->thumbnails.spec_standard);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
871
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
872 subgroup = pref_box_new(subgroup, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
873 pref_checkbox_link_sensitivity_swap(button, subgroup);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
874
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
875 pref_checkbox_new_int(subgroup, _("Cache thumbnails into .thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
876 options->thumbnails.cache_into_dirs, &c_options->thumbnails.cache_into_dirs);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
877
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
878 #if 0
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
879 pref_checkbox_new_int(subgroup, _("Use xvpics thumbnails when found (read only)"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
880 options->thumbnails.use_xvpics, &c_options->thumbnails.use_xvpics);
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
881 #endif
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
882
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
883 pref_checkbox_new_int(group, _("Faster jpeg thumbnailing (may reduce quality)"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
884 options->thumbnails.fast, &c_options->thumbnails.fast);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
885
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
886 group = pref_group_new(vbox, FALSE, _("Slide show"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
887
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
888 c_options->slideshow.delay = options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
889 spin = pref_spin_new(group, _("Delay between image change:"), _("seconds"),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
890 SLIDESHOW_MIN_SECONDS, SLIDESHOW_MAX_SECONDS, 1.0, 1,
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
891 options->slideshow.delay ? (double)options->slideshow.delay / SLIDESHOW_SUBSECOND_PRECISION : 10.0,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
892 G_CALLBACK(slideshow_delay_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
893 gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(spin), GTK_UPDATE_ALWAYS);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
894
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
895 pref_checkbox_new_int(group, _("Random"), options->slideshow.random, &c_options->slideshow.random);
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
896 pref_checkbox_new_int(group, _("Repeat"), options->slideshow.repeat, &c_options->slideshow.repeat);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
897 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
898
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
899 /* image tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
900 static void config_tab_image(GtkWidget *notebook)
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
901 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
902 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
903 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
904 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
905 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
906 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
907 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
908 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
909 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
910
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
911 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
912 gtk_container_set_border_width(GTK_CONTAINER(vbox), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
913 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
914 label = gtk_label_new(_("Image"));
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
915 gtk_notebook_append_page (GTK_NOTEBOOK(notebook), vbox, label);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
916
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
917 group = pref_group_new(vbox, FALSE, _("Zoom"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
918
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
919 #if 0
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
920 add_dither_menu(dither_quality, &c_options->image.dither_quality, _("Dithering method:"), group);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
921 #endif
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
922 table = pref_table_new(group, 2, 1, FALSE, FALSE);
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
923 add_quality_menu(table, 0, 0, _("Quality:"), options->image.zoom_quality, &c_options->image.zoom_quality);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
924
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
925 pref_checkbox_new_int(group, _("Two pass zooming"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
926 options->image.zoom_2pass, &c_options->image.zoom_2pass);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
927
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
928 pref_checkbox_new_int(group, _("Allow enlargement of image for zoom to fit"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
929 options->image.zoom_to_fit_allow_expand, &c_options->image.zoom_to_fit_allow_expand);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
930
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
931 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
932 ct_button = pref_checkbox_new_int(hbox, _("Limit image size when autofitting (%):"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
933 options->image.limit_autofit_size, &c_options->image.limit_autofit_size);
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
934 spin = pref_spin_new_int(hbox, NULL, NULL,
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
935 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
936 options->image.max_autofit_size, &c_options->image.max_autofit_size);
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
937 pref_checkbox_link_sensitivity(ct_button, spin);
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
938
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
939 c_options->image.zoom_increment = options->image.zoom_increment;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
940 spin = pref_spin_new(group, _("Zoom increment:"), NULL,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
941 0.1, 4.0, 0.1, 1, (double)options->image.zoom_increment / 10.0,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
942 G_CALLBACK(zoom_increment_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
943 gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(spin), GTK_UPDATE_ALWAYS);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
944
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
945 group = pref_group_new(vbox, FALSE, _("When new image is selected:"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
946
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
947 c_options->image.zoom_mode = options->image.zoom_mode;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
948 button = pref_radiobutton_new(group, NULL, _("Zoom to original size"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
949 (options->image.zoom_mode == ZOOM_RESET_ORIGINAL),
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
950 G_CALLBACK(zoom_mode_original_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
951 button = pref_radiobutton_new(group, button, _("Fit image to window"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
952 (options->image.zoom_mode == ZOOM_RESET_FIT_WINDOW),
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
953 G_CALLBACK(zoom_mode_fit_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
954 button = pref_radiobutton_new(group, button, _("Leave Zoom at previous setting"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
955 (options->image.zoom_mode == ZOOM_RESET_NONE),
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
956 G_CALLBACK(zoom_mode_none_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
957
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
958 group = pref_group_new(vbox, FALSE, _("Appearance"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
959
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
960 pref_checkbox_new_int(group, _("Custom border color"),
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
961 options->image.use_custom_border_color, &c_options->image.use_custom_border_color);
208
d74cfaa3d146 set user-defined color as image background - patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 199
diff changeset
962
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
963 pref_color_button_new(group, _("Border color"), &options->image.border_color,
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
964 G_CALLBACK(pref_color_button_set_cb), &c_options->image.border_color);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
965
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
966 group = pref_group_new(vbox, FALSE, _("Convenience"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
967
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
968 pref_checkbox_new_int(group, _("Refresh on file change"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
969 options->update_on_time_change, &c_options->update_on_time_change);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
970 pref_checkbox_new_int(group, _("Preload next image"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
971 options->image.enable_read_ahead, &c_options->image.enable_read_ahead);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
972 pref_checkbox_new_int(group, _("Auto rotate image using Exif information"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
973 options->image.exif_rotate_enable, &c_options->image.exif_rotate_enable);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
974 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
975
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
976 /* windows tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
977 static void config_tab_windows(GtkWidget *notebook)
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
978 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
979 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
980 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
981 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
982 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
983 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
984 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
985
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
986 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
987 gtk_container_set_border_width(GTK_CONTAINER(vbox), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
988 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
989 label = gtk_label_new(_("Windows"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
990 gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, label);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
991
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
992 group = pref_group_new(vbox, FALSE, _("State"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
993
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
994 pref_checkbox_new_int(group, _("Remember window positions"),
338
300f3fcec821 Rename window options (moved to layout) and re-order rc file.
Laurent Monin <geeqie@norz.org>
parents: 334
diff changeset
995 options->layout.save_window_positions, &c_options->layout.save_window_positions);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
996 pref_checkbox_new_int(group, _("Remember tool state (float/hidden)"),
338
300f3fcec821 Rename window options (moved to layout) and re-order rc file.
Laurent Monin <geeqie@norz.org>
parents: 334
diff changeset
997 options->layout.tools_restore_state, &c_options->layout.tools_restore_state);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
998
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
999 group = pref_group_new(vbox, FALSE, _("Size"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1000
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1001 pref_checkbox_new_int(group, _("Fit window to image when tools are hidden/floating"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1002 options->image.fit_window_to_image, &c_options->image.fit_window_to_image);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1003
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1004 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1005 ct_button = pref_checkbox_new_int(hbox, _("Limit size when auto-sizing window (%):"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1006 options->image.limit_window_size, &c_options->image.limit_window_size);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1007 spin = pref_spin_new_int(hbox, NULL, NULL,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1008 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1009 options->image.max_window_size, &c_options->image.max_window_size);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1010 pref_checkbox_link_sensitivity(ct_button, spin);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1011
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1012 group = pref_group_new(vbox, FALSE, _("Layout"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1013
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1014 layout_widget = layout_config_new();
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1015 layout_config_set(layout_widget, options->layout.style, options->layout.order);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1016 gtk_box_pack_start(GTK_BOX(group), layout_widget, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1017 gtk_widget_show(layout_widget);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1018 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1019
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1020 /* filtering tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1021 static void config_tab_filtering(GtkWidget *notebook)
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1022 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1023 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1024 GtkWidget *frame;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1025 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1026 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1027 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1028 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1029 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1030 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1031 GtkWidget *filter_view;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1032 GtkCellRenderer *renderer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1033 GtkTreeSelection *selection;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1034 GtkTreeViewColumn *column;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1035
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1036 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1037 gtk_container_set_border_width(GTK_CONTAINER (vbox), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1038 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1039 label = gtk_label_new(_("Filtering"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1040 gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, label);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1041
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1042 group = pref_box_new(vbox, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1043
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
1044 pref_checkbox_new_int(group, _("Show hidden files or folders"),
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
1045 options->file_filter.show_hidden_files, &c_options->file_filter.show_hidden_files);
373
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
1046 pref_checkbox_new_int(group, _("Show dot directory"),
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
1047 options->file_filter.show_dot_directory, &c_options->file_filter.show_dot_directory);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1048 pref_checkbox_new_int(group, _("Case sensitive sort"),
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
1049 options->file_sort.case_sensitive, &c_options->file_sort.case_sensitive);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1050
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1051 ct_button = pref_checkbox_new_int(group, _("Disable File Filtering"),
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
1052 options->file_filter.disable, &c_options->file_filter.disable);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1053
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1054
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1055 group = pref_group_new(vbox, FALSE, _("Grouping sidecar extensions"), GTK_ORIENTATION_VERTICAL);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1056
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1057 sidecar_ext_entry = gtk_entry_new();
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1058 gtk_entry_set_text(GTK_ENTRY(sidecar_ext_entry), sidecar_ext_to_string());
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1059 gtk_box_pack_start(GTK_BOX(group), sidecar_ext_entry, FALSE, FALSE, 0);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1060 gtk_widget_show(sidecar_ext_entry);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1061
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1062 group = pref_group_new(vbox, TRUE, _("File types"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1063
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1064 frame = pref_group_parent(group);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1065 g_signal_connect(G_OBJECT(ct_button), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1066 G_CALLBACK(filter_disable_cb), frame);
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
1067 gtk_widget_set_sensitive(frame, !options->file_filter.disable);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1068
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1069 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1070 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled), GTK_SHADOW_IN);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1071 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1072 gtk_box_pack_start(GTK_BOX(group), scrolled, TRUE, TRUE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1073 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1074
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1075 filter_store = gtk_list_store_new(1, G_TYPE_POINTER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1076 filter_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(filter_store));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1077 g_object_unref(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1078 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(filter_view));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1079 gtk_tree_selection_set_mode(GTK_TREE_SELECTION(selection), GTK_SELECTION_SINGLE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1080
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1081 gtk_tree_view_set_enable_search(GTK_TREE_VIEW(filter_view), FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1082
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1083 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1084 gtk_tree_view_column_set_title(column, _("Filter"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1085 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1086
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1087 renderer = gtk_cell_renderer_toggle_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1088 g_signal_connect(G_OBJECT(renderer), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1089 G_CALLBACK(filter_store_enable_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1090 gtk_tree_view_column_pack_start(column, renderer, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1091 gtk_tree_view_column_set_cell_data_func(column, renderer, filter_set_func,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1092 GINT_TO_POINTER(FE_ENABLE), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1093
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1094 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1095 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1096 G_CALLBACK(filter_store_ext_edit_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1097 gtk_tree_view_column_pack_start(column, renderer, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1098 g_object_set(G_OBJECT(renderer), "editable", (gboolean)TRUE, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1099 gtk_tree_view_column_set_cell_data_func(column, renderer, filter_set_func,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1100 GINT_TO_POINTER(FE_EXTENSION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1101 gtk_tree_view_append_column(GTK_TREE_VIEW(filter_view), column);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1102
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1103 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1104 gtk_tree_view_column_set_title(column, _("Description"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1105 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1106 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1107 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1108 G_CALLBACK(filter_store_desc_edit_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1109 g_object_set(G_OBJECT(renderer), "editable", (gboolean)TRUE, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1110 gtk_tree_view_column_pack_start(column, renderer, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1111 gtk_tree_view_column_set_cell_data_func(column, renderer, filter_set_func,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1112 GINT_TO_POINTER(FE_DESCRIPTION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1113 gtk_tree_view_append_column(GTK_TREE_VIEW(filter_view), column);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1114
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1115 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1116 gtk_container_add(GTK_CONTAINER(scrolled), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1117 gtk_widget_show(filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1118
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1119 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1120
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1121 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1122 G_CALLBACK(filter_default_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1123 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1124 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1125
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1126 button = pref_button_new(NULL, GTK_STOCK_REMOVE, NULL, FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1127 G_CALLBACK(filter_remove_cb), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1128 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1129 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1130
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1131 button = pref_button_new(NULL, GTK_STOCK_ADD, NULL, FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1132 G_CALLBACK(filter_add_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1133 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1134 gtk_widget_show(button);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1135 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1136
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1137 /* editors tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1138 static void config_tab_editors(GtkWidget *notebook)
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1139 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1140 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1141 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1142 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1143 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1144 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1145 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1146
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1147 vbox = gtk_vbox_new(FALSE, PREF_PAD_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1148 gtk_container_set_border_width(GTK_CONTAINER(vbox), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1149 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1150 label = gtk_label_new(_("Editors"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1151 gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, label);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1152
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1153 table = pref_table_new(vbox, 3, 9, FALSE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1154 gtk_table_set_col_spacings(GTK_TABLE(table), PREF_PAD_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1155
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1156 label = pref_table_label(table, 0, 0, _("#"), 1.0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1157 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1158
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1159 label = pref_table_label(table, 1, 0, _("Menu name"), 0.0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1160 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1161
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
1162 label = pref_table_label(table, 2, 0, _("Command Line"), 0.0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1163 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1164
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
1165 for (i = 0; i < GQ_EDITOR_SLOTS; i++)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1166 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1167 GtkWidget *entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1168
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
1169 if (i < GQ_EDITOR_GENERIC_SLOTS)
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1170 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1171 gchar *buf;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1172
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1173 buf = g_strdup_printf("%d", i+1);
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1174 pref_table_label(table, 0, i+1, buf, 1.0);
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1175 g_free(buf);
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1176 entry = gtk_entry_new();
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1177 gtk_entry_set_max_length(GTK_ENTRY(entry), EDITOR_NAME_MAX_LENGTH);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1178 gtk_widget_set_size_request(entry, 80, -1);
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1179 if (options->editor_name[i])
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1180 gtk_entry_set_text(GTK_ENTRY(entry), options->editor_name[i]);
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1181 }
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1182 else
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1183 {
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1184 entry = gtk_label_new(options->editor_name[i]);
225
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
1185 gtk_misc_set_alignment(GTK_MISC(entry), 0.0, 0.5);
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1186 }
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1187
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1188 gtk_table_attach(GTK_TABLE (table), entry, 1, 2, i+1, i+2,
225
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
1189 GTK_FILL | GTK_SHRINK, 0, 0, 0);
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1190 gtk_widget_show(entry);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1191 editor_name_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1192
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1193 entry = gtk_entry_new();
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1194 gtk_entry_set_max_length(GTK_ENTRY(entry), EDITOR_COMMAND_MAX_LENGTH);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1195 gtk_widget_set_size_request(entry, 160, -1);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1196 tab_completion_add_to_entry(entry, NULL, NULL);
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1197 if (options->editor_command[i])
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1198 gtk_entry_set_text(GTK_ENTRY(entry), options->editor_command[i]);
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1199 gtk_table_attach(GTK_TABLE (table), entry, 2, 3, i+1, i+2,
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1200 GTK_FILL | GTK_EXPAND, 0, 0, 0);
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1201 gtk_widget_show(entry);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1202 editor_command_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1203 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1204
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1205 hbox = pref_box_new(vbox, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1206
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1207 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1208 G_CALLBACK(editor_default_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1209 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1210 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1211
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1212 button = pref_button_new(NULL, GTK_STOCK_HELP, NULL, FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1213 G_CALLBACK(editor_help_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1214 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1215 gtk_widget_show(button);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1216 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1217
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1218 /* properties tab */
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1219 static void config_tab_properties(GtkWidget *notebook)
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1220 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1221 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1222 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1223 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1224 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1225 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1226 GtkWidget *viewport;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1227 gint i;
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1228
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1229 scrolled = gtk_scrolled_window_new(NULL, NULL);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1230 gtk_container_set_border_width(GTK_CONTAINER(scrolled), PREF_PAD_BORDER);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1231 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1232 GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1233
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1234 label = gtk_label_new(_("Properties"));
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1235 gtk_notebook_append_page(GTK_NOTEBOOK(notebook), scrolled, label);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1236 gtk_widget_show(scrolled);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1237
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1238 viewport = gtk_viewport_new(NULL, NULL);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1239 gtk_viewport_set_shadow_type(GTK_VIEWPORT(viewport), GTK_SHADOW_NONE);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1240 gtk_container_add(GTK_CONTAINER(scrolled), viewport);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1241 gtk_widget_show(viewport);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1242
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1243 vbox = gtk_vbox_new(FALSE, 0);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1244 gtk_container_add(GTK_CONTAINER(viewport), vbox);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1245 gtk_widget_show(vbox);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1246
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1247 group = pref_group_new(vbox, FALSE, _("Exif"),
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1248 GTK_ORIENTATION_VERTICAL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1249
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1250
257
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1251 pref_spacer(group, PREF_PAD_INDENT - PREF_PAD_SPACE);
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1252 label = pref_label_new(group, _("What to show in properties dialog:"));
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1253 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1254
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1255 table = pref_table_new(group, 2, 2, FALSE, FALSE);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1256
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1257 for (i = 0; ExifUIList[i].key; i++)
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1258 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1259 const gchar *title;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1260
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1261 title = exif_get_description_by_key(ExifUIList[i].key);
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1262 exif_item(table, 0, i, title, ExifUIList[i].current,
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1263 &ExifUIList[i].temp);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1264 }
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1265 }
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1266
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1267 /* advanced entry tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1268 static void config_tab_advanced(GtkWidget *notebook)
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1269 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1270 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1271 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1272 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1273 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1274 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1275 GtkWidget *tabcomp;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1276 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1277 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1278 GtkWidget *spin;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1279 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1280 GtkWidget *viewport;
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1281 GtkWidget *image_overlay_template_view;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1282 GtkTextBuffer *buffer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1283 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1284
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1285 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1286 gtk_container_set_border_width(GTK_CONTAINER(scrolled), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1287 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1288 GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1289 label = gtk_label_new(_("Advanced"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1290 gtk_notebook_append_page(GTK_NOTEBOOK(notebook), scrolled, label);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1291 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1292
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1293 viewport = gtk_viewport_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1294 gtk_viewport_set_shadow_type(GTK_VIEWPORT(viewport), GTK_SHADOW_NONE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1295 gtk_container_add(GTK_CONTAINER(scrolled), viewport);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1296 gtk_widget_show(viewport);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1297
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1298 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1299 gtk_container_add(GTK_CONTAINER(viewport), vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1300 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1301
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1302 group = pref_group_new(vbox, FALSE, _("Full screen"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1303
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1304 c_options->fullscreen.screen = options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1305 c_options->fullscreen.above = options->fullscreen.above;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1306 hbox = fullscreen_prefs_selection_new(_("Location:"), &c_options->fullscreen.screen, &c_options->fullscreen.above);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1307 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1308 gtk_widget_show(hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1309
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1310 pref_checkbox_new_int(group, _("Smooth image flip"),
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1311 options->fullscreen.clean_flip, &c_options->fullscreen.clean_flip);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1312 pref_checkbox_new_int(group, _("Disable screen saver"),
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1313 options->fullscreen.disable_saver, &c_options->fullscreen.disable_saver);
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1314 pref_checkbox_new_int(group, _("Always show image overlay at startup"),
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1315 options->image_overlay.common.show_at_startup, &c_options->image_overlay.common.show_at_startup);
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1316 pref_label_new(group, _("Image overlay template"));
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1317
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1318 scrolled = gtk_scrolled_window_new(NULL, NULL);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1319 gtk_widget_set_size_request(scrolled, 200, 150);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1320 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled), GTK_SHADOW_IN);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1321 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1322 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1323 gtk_box_pack_start(GTK_BOX(group), scrolled, TRUE, TRUE, 5);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1324 gtk_widget_show(scrolled);
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1325
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1326 image_overlay_template_view = gtk_text_view_new();
267
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1327
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1328 #if GTK_CHECK_VERSION(2,12,0)
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1329 gtk_widget_set_tooltip_markup(image_overlay_template_view,
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1330 _("<i>%name%</i> results in the filename of the picture.\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1331 "Also available: <i>%collection%</i>, <i>%number%</i>, <i>%total%</i>, <i>%date%</i>,\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1332 "<i>%size%</i> (filesize), <i>%width%</i>, <i>%height%</i>, <i>%res%</i> (resolution)\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1333 "To access exif data use the exif name, e. g. <i>%fCamera%</i> is the formatted camera name,\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1334 "<i>%Exif.Photo.DateTimeOriginal%</i> the date of the original shot.\n"
298
b29d84204d43 Add the possibility to truncate overlay infos displayed:
Laurent Monin <geeqie@norz.org>
parents: 289
diff changeset
1335 "<i>%fCamera:20</i> notation will truncate the displayed data to 20 characters and will add 3 dots at the end to denote the truncation.\n"
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1336 "If two or more variables are connected with the |-sign, it prints available variables with a separator.\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1337 "<i>%fShutterSpeed%</i>|<i>%fISOSpeedRating%</i>|<i>%fFocalLength%</i> could show \"1/20s - 400 - 80 mm\" or \"1/200 - 80 mm\",\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1338 "if there's no ISO information in the Exif data.\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1339 "If a line is empty, it is removed. This allows to add lines that totally disappear when no data is available.\n"
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1340 ));
267
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1341 #endif
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1342 gtk_container_add(GTK_CONTAINER(scrolled), image_overlay_template_view);
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1343 gtk_widget_show(image_overlay_template_view);
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1344
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1345 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1346
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1347 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1348 G_CALLBACK(fullscreen_info_default_cb), image_overlay_template_view);
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1349 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1350 gtk_widget_show(button);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1351
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1352 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(image_overlay_template_view));
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1353 if (options->image_overlay.common.template_string) gtk_text_buffer_set_text(buffer, options->image_overlay.common.template_string, -1);
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1354 g_signal_connect(G_OBJECT(buffer), "changed",
468
2a1711fecfde Replace fullscreen.info and fullscreen.show_info options by:
Laurent Monin <geeqie@norz.org>
parents: 458
diff changeset
1355 G_CALLBACK(image_overlay_template_view_changed_cb), image_overlay_template_view);
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1356
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1357 group = pref_group_new(vbox, FALSE, _("Delete"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1358
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1359 pref_checkbox_new_int(group, _("Confirm file delete"),
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1360 options->file_ops.confirm_delete, &c_options->file_ops.confirm_delete);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1361 pref_checkbox_new_int(group, _("Enable Delete key"),
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1362 options->file_ops.enable_delete_key, &c_options->file_ops.enable_delete_key);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1363
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1364 ct_button = pref_checkbox_new_int(group, _("Safe delete"),
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1365 options->file_ops.safe_delete_enable, &c_options->file_ops.safe_delete_enable);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1366
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1367 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1368 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1369
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1370 pref_spacer(hbox, PREF_PAD_INDENT - PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1371 pref_label_new(hbox, _("Folder:"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1372
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1373 tabcomp = tab_completion_new(&safe_delete_path_entry, options->file_ops.safe_delete_path, NULL, NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1374 tab_completion_add_select_button(safe_delete_path_entry, NULL, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1375 gtk_box_pack_start(GTK_BOX(hbox), tabcomp, TRUE, TRUE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1376 gtk_widget_show(tabcomp);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1377
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1378 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1379 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1380
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1381 pref_spacer(hbox, PREF_PAD_INDENT - PREF_PAD_GAP);
223
d4652e8e4239 Setting no limit size to trash directory is now possible using zero as value.
Laurent Monin <geeqie@norz.org>
parents: 222
diff changeset
1382 spin = pref_spin_new_int(hbox, _("Maximum size:"), _("MB"),
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1383 0, 2048, 1, options->file_ops.safe_delete_folder_maxsize, &c_options->file_ops.safe_delete_folder_maxsize);
267
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1384 #if GTK_CHECK_VERSION(2,12,0)
223
d4652e8e4239 Setting no limit size to trash directory is now possible using zero as value.
Laurent Monin <geeqie@norz.org>
parents: 222
diff changeset
1385 gtk_widget_set_tooltip_markup(spin, _("Set to 0 for unlimited size"));
267
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1386 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1387 button = pref_button_new(NULL, NULL, _("View"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1388 G_CALLBACK(safe_delete_view_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1389 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1390 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1391
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1392 button = pref_button_new(NULL, GTK_STOCK_CLEAR, NULL, FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1393 G_CALLBACK(safe_delete_clear_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1394 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1395 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1396
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1397 group = pref_group_new(vbox, FALSE, _("Behavior"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1398
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1399 pref_checkbox_new_int(group, _("Rectangular selection in icon view"),
330
06b913dae425 Rename collection options.
Laurent Monin <geeqie@norz.org>
parents: 329
diff changeset
1400 options->collections.rectangular_selection, &c_options->collections.rectangular_selection);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1401
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1402 pref_checkbox_new_int(group, _("Descend folders in tree view"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1403 options->tree_descend_subdirs, &c_options->tree_descend_subdirs);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1404
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1405 pref_checkbox_new_int(group, _("In place renaming"),
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1406 options->file_ops.enable_in_place_rename, &c_options->file_ops.enable_in_place_rename);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1407
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
1408 pref_spin_new_int(group, _("Open recent list maximum size"), NULL,
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
1409 1, 50, 1, options->open_recent_list_maxsize, &c_options->open_recent_list_maxsize);
458
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
1410
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
1411 pref_spin_new_int(group, _("Drag'n drop icon size"), NULL,
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
1412 16, 256, 16, options->dnd_icon_size, &c_options->dnd_icon_size);
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
1413
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1414 group = pref_group_new(vbox, FALSE, _("Navigation"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1415
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1416 pref_checkbox_new_int(group, _("Progressive keyboard scrolling"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1417 options->progressive_key_scrolling, &c_options->progressive_key_scrolling);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1418 pref_checkbox_new_int(group, _("Mouse wheel scrolls image"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1419 options->mousewheel_scrolls, &c_options->mousewheel_scrolls);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1420
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1421 group = pref_group_new(vbox, FALSE, _("Miscellaneous"), GTK_ORIENTATION_VERTICAL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1422
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1423 pref_checkbox_new_int(group, _("Store keywords and comments local to source images"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1424 options->enable_metadata_dirs, &c_options->enable_metadata_dirs);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1425
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1426 pref_spin_new_int(group, _("Custom similarity threshold:"), NULL,
342
de6de19bd03a Rename dupe_custom_threshold option to duplicates_similarity_threshold.
Laurent Monin <geeqie@norz.org>
parents: 341
diff changeset
1427 0, 100, 1, options->duplicates_similarity_threshold, &c_options->duplicates_similarity_threshold);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1428
413
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1429 group = pref_group_new(vbox, FALSE, _("Image loading and caching"), GTK_ORIENTATION_VERTICAL);
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1430
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1431 pref_spin_new_int(group, _("Offscreen cache size (Mb per image):"), NULL,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1432 0, 128, 1, options->image.tile_cache_max, &c_options->image.tile_cache_max);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1433
413
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1434 pref_spin_new_int(group, _("Image read buffer size (bytes):"), NULL,
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1435 IMAGE_LOADER_READ_BUFFER_SIZE_MIN, IMAGE_LOADER_READ_BUFFER_SIZE_MAX, 512,
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1436 options->image.read_buffer_size, &c_options->image.read_buffer_size);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1437
413
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1438 pref_spin_new_int(group, _("Image idle loop read count:"), NULL,
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1439 IMAGE_LOADER_IDLE_READ_LOOP_COUNT_MIN, IMAGE_LOADER_IDLE_READ_LOOP_COUNT_MAX, 1,
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1440 options->image.idle_read_loop_count, &c_options->image.idle_read_loop_count);
8571030c117a Add two new options to control image read buffer at runtime.
Laurent Monin <geeqie@norz.org>
parents: 410
diff changeset
1441
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1442
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1443 group = pref_group_new(vbox, FALSE, _("Color profiles"), GTK_ORIENTATION_VERTICAL);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1444 #ifndef HAVE_LCMS
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1445 gtk_widget_set_sensitive(pref_group_parent(group), FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1446 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1447
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1448 table = pref_table_new(group, 3, COLOR_PROFILE_INPUTS + 2, FALSE, FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1449 gtk_table_set_col_spacings(GTK_TABLE(table), PREF_PAD_GAP);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1450
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1451 label = pref_table_label(table, 0, 0, _("Type"), 0.0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1452 pref_label_bold(label, TRUE, FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1453
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1454 label = pref_table_label(table, 1, 0, _("Menu name"), 0.0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1455 pref_label_bold(label, TRUE, FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1456
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1457 label = pref_table_label(table, 2, 0, _("File"), 0.0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1458 pref_label_bold(label, TRUE, FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1459
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1460 for (i = 0; i < COLOR_PROFILE_INPUTS; i++)
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1461 {
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1462 GtkWidget *entry;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1463 gchar *buf;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1464
426
e4a5d61aff1c show the AdobeRGB profile in the menu, indicate input profile from image
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 413
diff changeset
1465 buf = g_strdup_printf("Input %d:", i + COLOR_PROFILE_FILE);
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1466 pref_table_label(table, 0, i + 1, buf, 1.0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1467 g_free(buf);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1468
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1469 entry = gtk_entry_new();
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1470 gtk_entry_set_max_length(GTK_ENTRY(entry), EDITOR_NAME_MAX_LENGTH);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1471 gtk_widget_set_size_request(editor_name_entry[i], 30, -1);
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1472 if (options->color_profile.input_name[i])
320
bd97f1e60100 Move more options to ConfOptions.
Laurent Monin <geeqie@norz.org>
parents: 319
diff changeset
1473 {
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1474 gtk_entry_set_text(GTK_ENTRY(entry), options->color_profile.input_name[i]);
320
bd97f1e60100 Move more options to ConfOptions.
Laurent Monin <geeqie@norz.org>
parents: 319
diff changeset
1475 }
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1476 gtk_table_attach(GTK_TABLE(table), entry, 1, 2, i + 1, i + 2,
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1477 GTK_FILL | GTK_EXPAND, 0, 0, 0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1478 gtk_widget_show(entry);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1479 color_profile_input_name_entry[i] = entry;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1480
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1481 tabcomp = tab_completion_new(&entry, options->color_profile.input_file[i], NULL, NULL);
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1482 tab_completion_add_select_button(entry, _("Select color profile"), FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1483 gtk_widget_set_size_request(entry, 160, -1);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1484 gtk_table_attach(GTK_TABLE(table), tabcomp, 2, 3, i + 1, i + 2,
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1485 GTK_FILL | GTK_EXPAND, 0, 0, 0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1486 gtk_widget_show(tabcomp);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1487 color_profile_input_file_entry[i] = entry;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1488 }
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1489
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1490 pref_table_label(table, 0, COLOR_PROFILE_INPUTS + 1, _("Screen:"), 1.0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1491 tabcomp = tab_completion_new(&color_profile_screen_file_entry,
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1492 options->color_profile.screen_file, NULL, NULL);
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1493 tab_completion_add_select_button(color_profile_screen_file_entry, _("Select color profile"), FALSE);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1494 gtk_widget_set_size_request(color_profile_screen_file_entry, 160, -1);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1495 gtk_table_attach(GTK_TABLE(table), tabcomp, 2, 3,
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1496 COLOR_PROFILE_INPUTS + 1, COLOR_PROFILE_INPUTS + 2,
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1497 GTK_FILL | GTK_EXPAND, 0, 0, 0);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1498 gtk_widget_show(tabcomp);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1499
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1500 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1501 group = pref_group_new(vbox, FALSE, _("Debugging"), GTK_ORIENTATION_VERTICAL);
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1502
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1503 pref_spin_new_int(group, _("Debug level:"), NULL,
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1504 0, 9, 1, debug, &debug_c);
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1505 #endif
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1506 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1507
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1508 /* Main preferences window */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1509 static void config_window_create(void)
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1510 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1511 GtkWidget *win_vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1512 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1513 GtkWidget *notebook;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1514 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1515 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1516
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1517 if (!c_options) c_options = init_options(NULL);
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1518
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
1519 configwindow = window_new(GTK_WINDOW_TOPLEVEL, "preferences", PIXBUF_INLINE_ICON_CONFIG, NULL, _("Preferences"));
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1520 gtk_window_set_type_hint(GTK_WINDOW(configwindow), GDK_WINDOW_TYPE_HINT_DIALOG);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1521 g_signal_connect(G_OBJECT (configwindow), "delete_event",
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1522 G_CALLBACK(config_window_delete), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1523 gtk_window_set_default_size(GTK_WINDOW(configwindow), CONFIG_WINDOW_DEF_WIDTH, CONFIG_WINDOW_DEF_HEIGHT);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1524 gtk_window_set_resizable(GTK_WINDOW(configwindow), TRUE);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1525 gtk_container_set_border_width(GTK_CONTAINER(configwindow), PREF_PAD_BORDER);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1526
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1527 win_vbox = gtk_vbox_new(FALSE, PREF_PAD_SPACE);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1528 gtk_container_add(GTK_CONTAINER(configwindow), win_vbox);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1529 gtk_widget_show(win_vbox);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1530
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1531 hbox = gtk_hbutton_box_new();
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1532 gtk_button_box_set_layout(GTK_BUTTON_BOX(hbox), GTK_BUTTONBOX_END);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1533 gtk_box_set_spacing(GTK_BOX(hbox), PREF_PAD_BUTTON_GAP);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1534 gtk_box_pack_end(GTK_BOX(win_vbox), hbox, FALSE, FALSE, 0);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1535 gtk_widget_show(hbox);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1536
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1537 button = pref_button_new(NULL, GTK_STOCK_OK, NULL, FALSE,
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1538 G_CALLBACK(config_window_ok_cb), NULL);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1539 gtk_container_add(GTK_CONTAINER(hbox), button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1540 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1541 gtk_widget_grab_default(button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1542 gtk_widget_show(button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1543
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1544 ct_button = button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1545
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1546 button = pref_button_new(NULL, GTK_STOCK_APPLY, NULL, FALSE,
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1547 G_CALLBACK(config_window_apply_cb), NULL);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1548 gtk_container_add(GTK_CONTAINER(hbox), button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1549 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1550 gtk_widget_show(button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1551
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1552 button = pref_button_new(NULL, GTK_STOCK_CANCEL, NULL, FALSE,
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1553 G_CALLBACK(config_window_close_cb), NULL);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1554 gtk_container_add(GTK_CONTAINER(hbox), button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1555 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1556 gtk_widget_show(button);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1557
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1558 if (!generic_dialog_get_alternative_button_order(configwindow))
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1559 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1560 gtk_box_reorder_child(GTK_BOX(hbox), ct_button, -1);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1561 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1562
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1563 notebook = gtk_notebook_new();
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1564 gtk_notebook_set_tab_pos (GTK_NOTEBOOK(notebook), GTK_POS_TOP);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1565 gtk_box_pack_start(GTK_BOX(win_vbox), notebook, TRUE, TRUE, 0);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1566
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1567 config_tab_general(notebook);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1568 config_tab_image(notebook);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1569 config_tab_windows(notebook);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1570 config_tab_filtering(notebook);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1571 config_tab_editors(notebook);
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1572 config_tab_properties(notebook);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1573 config_tab_advanced(notebook);
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1574
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1575 gtk_widget_show(notebook);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1576
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1577 gtk_widget_show(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1578 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1579
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1580 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1581 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1582 * config window show (public)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1583 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
1584 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1585
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1586 void show_config_window(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1587 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1588 if (configwindow)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1589 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1590 gtk_window_present(GTK_WINDOW(configwindow));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1591 return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1592 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1593
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1594 config_window_create();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1595 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1596
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1597 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1598 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1599 * about window
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1600 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1601 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1602
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1603 static GtkWidget *about = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1604
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1605 static gint about_delete_cb(GtkWidget *widget, GdkEventAny *event, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1606 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1607 gtk_widget_destroy(about);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1608 about = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1609
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1610 return TRUE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1611 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1612
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1613 static void about_window_close(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1614 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1615 if (!about) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1616
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1617 gtk_widget_destroy(about);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1618 about = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1619 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1620
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1621 static void about_credits_cb(GtkWidget *widget, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1622 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1623 help_window_show("credits");
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1624 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1625
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1626 void show_about_window(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1627 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1628 GtkWidget *vbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1629 GtkWidget *hbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1630 GtkWidget *label;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1631 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1632 GdkPixbuf *pixbuf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1633
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1634 gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1635
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1636 if (about)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1637 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1638 gtk_window_present(GTK_WINDOW(about));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1639 return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1640 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1641
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
1642 about = window_new(GTK_WINDOW_TOPLEVEL, "about", NULL, NULL, _("About"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1643 gtk_window_set_type_hint(GTK_WINDOW(about), GDK_WINDOW_TYPE_HINT_DIALOG);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1644 g_signal_connect(G_OBJECT(about), "delete_event",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1645 G_CALLBACK(about_delete_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1646
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1647 gtk_container_set_border_width(GTK_CONTAINER(about), PREF_PAD_BORDER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1648
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1649 vbox = gtk_vbox_new(FALSE, PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1650 gtk_container_add(GTK_CONTAINER(about), vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1651 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1652
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1653 pixbuf = pixbuf_inline(PIXBUF_INLINE_LOGO);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1654 button = gtk_image_new_from_pixbuf(pixbuf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1655 g_object_unref(pixbuf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1656 gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1657 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1658
288
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1659 buf = g_strdup_printf(_("%s %s\n\nCopyright (c) %s John Ellis\nwebsite: %s\nemail: %s\n\nReleased under the GNU General Public License"),
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1660 GQ_APPNAME,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1661 VERSION,
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
1662 "2006",
288
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1663 GQ_WEBSITE,
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1664 GQ_EMAIL_ADDRESS);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1665 label = gtk_label_new(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1666 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1667
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1668 gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_CENTER);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1669 gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1670 gtk_widget_show(label);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1671
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1672 hbox = gtk_hbutton_box_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1673 gtk_button_box_set_layout(GTK_BUTTON_BOX(hbox), GTK_BUTTONBOX_END);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1674 gtk_box_set_spacing(GTK_BOX(hbox), PREF_PAD_BUTTON_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1675 gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1676 gtk_widget_show(hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1677
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1678 button = pref_button_new(NULL, NULL, _("Credits..."), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1679 G_CALLBACK(about_credits_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1680 gtk_container_add(GTK_CONTAINER(hbox), button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1681 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1682 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1683
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1684 button = pref_button_new(NULL, GTK_STOCK_CLOSE, NULL, FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1685 G_CALLBACK(about_window_close), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1686 gtk_container_add(GTK_CONTAINER(hbox), button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1687 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1688 gtk_widget_grab_default(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1689 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1690
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1691 gtk_widget_show(about);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1692 }