annotate src/preferences.c @ 354:3f7a136c8ef8

Add a button to reset fullscreen info string to default value.
author Laurent Monin <geeqie@norz.org>
date Sun, 13 Apr 2008 12:24:42 +0000
parents de6de19bd03a
children ba4edae270d6
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"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
21 #include "img-view.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
22 #include "layout_config.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
23 #include "layout_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
24 #include "pixbuf_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
25 #include "slideshow.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
26 #include "utilops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
27 #include "ui_fileops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
28 #include "ui_misc.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
29 #include "ui_tabcomp.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
30 #include "ui_utildlg.h"
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
31 #include "bar_exif.h"
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
32 #include "exif.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
33
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
34 #include <math.h>
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
35
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 #define EDITOR_NAME_MAX_LENGTH 32
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
38 #define EDITOR_COMMAND_MAX_LENGTH 1024
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
39
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 typedef struct _ThumbSize ThumbSize;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
42 struct _ThumbSize
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
43 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
44 gint w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
45 gint h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
46 };
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 static ThumbSize thumb_size_list[] =
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
49 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
50 { 24, 24 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
51 { 32, 32 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
52 { 48, 48 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
53 { 64, 64 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
54 { 96, 72 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
55 { 96, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
56 { 128, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
57 { 128, 128 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
58 { 160, 120 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
59 { 160, 160 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
60 { 192, 144 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
61 { 192, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
62 { 256, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
63 { 256, 256 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
64 };
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 enum {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
67 FE_ENABLE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
68 FE_EXTENSION,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
69 FE_DESCRIPTION
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
70 };
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 /* config memory values */
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
73 static ConfOptions *c_options = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
74
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
75
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
76 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
77 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
78 #endif
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
79
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
80 static GtkWidget *configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
81 static GtkWidget *startup_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
82 static GtkListStore *filter_store = NULL;
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
83 static GtkWidget *editor_name_entry[GQ_EDITOR_SLOTS];
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
84 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
85
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
86 static GtkWidget *layout_widget;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
87
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
88 static GtkWidget *safe_delete_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
89
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
90 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
91 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
92 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
93
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
94 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
95
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 #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
98 #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
99
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
100 /*
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 * option widget callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
103 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
104 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
105
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
106 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
107 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
108 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
109 }
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 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
112 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
113 if (GTK_TOGGLE_BUTTON (widget)->active)
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
114 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
115 }
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 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
118 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
119 if (GTK_TOGGLE_BUTTON (widget)->active)
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
120 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
121 }
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 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
124 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
125 if (GTK_TOGGLE_BUTTON (widget)->active)
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
126 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
127 }
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 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
130 {
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
131 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
132 }
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 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
135 {
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
136 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
137 (double)SLIDESHOW_SUBSECOND_PRECISION + 0.01);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
138 }
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 * sync progam to config window routine (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
143 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
144 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
145
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
146 static void config_window_apply(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
147 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
148 const gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
149 gchar *l_conf;
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
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
181 if (options->file_filter.show_dot_files != c_options->file_filter.show_dot_files) refresh = TRUE;
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
182 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
183 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
184
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
185 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
186 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
187 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
188 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
189 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
190 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
191 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
192 options->image.zoom_mode = c_options->image.zoom_mode;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
193 options->image.zoom_2pass = c_options->image.zoom_2pass;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
194 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
195 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
196 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
197 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
198 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
199 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
200 options->progressive_key_scrolling = c_options->progressive_key_scrolling;
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
201 options->thumbnails.max_width = c_options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
202 options->thumbnails.max_height = c_options->thumbnails.max_height;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
203 options->thumbnails.enable_caching = c_options->thumbnails.enable_caching;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
204 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
205 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
206 #if 0
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
207 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
208 #endif
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
209 options->thumbnails.spec_standard = c_options->thumbnails.spec_standard;
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
210 options->enable_metadata_dirs = c_options->enable_metadata_dirs;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
211 options->file_filter.show_dot_files = c_options->file_filter.show_dot_files;
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
212 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
213 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
214
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
215 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
216
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
217 options->slideshow.random = c_options->slideshow.random;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
218 options->slideshow.repeat = c_options->slideshow.repeat;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
219 options->slideshow.delay = c_options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
220
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
221 options->mousewheel_scrolls = c_options->mousewheel_scrolls;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
222
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
223 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
224
330
06b913dae425 Rename collection options.
Laurent Monin <geeqie@norz.org>
parents: 329
diff changeset
225 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
226
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
227 options->image.tile_cache_max = c_options->image.tile_cache_max;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
228
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
229 options->thumbnails.quality = c_options->thumbnails.quality;
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
230 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
231
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
232 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
233
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
234 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
235
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
236 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
237 || !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
238 {
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
239 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
240 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
241 layout_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
242 view_window_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
243 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
244
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
245 options->fullscreen.screen = c_options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
246 options->fullscreen.clean_flip = c_options->fullscreen.clean_flip;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
247 options->fullscreen.disable_saver = c_options->fullscreen.disable_saver;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
248 options->fullscreen.above = c_options->fullscreen.above;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
249 options->fullscreen.show_info = c_options->fullscreen.show_info;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
250 if (c_options->fullscreen.info)
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
251 {
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
252 g_free(options->fullscreen.info);
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
253 options->fullscreen.info = g_strdup(c_options->fullscreen.info);
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
254 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
255
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
256 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
257 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
258
342
de6de19bd03a Rename dupe_custom_threshold option to duplicates_similarity_threshold.
Laurent Monin <geeqie@norz.org>
parents: 341
diff changeset
259 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
260
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
261 options->tree_descend_subdirs = c_options->tree_descend_subdirs;
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
262 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
263 debug = debug_c;
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
264 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
265
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
266 #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
267 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
268 {
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
269 g_free(options->color_profile.input_name[i]);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
270 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
271 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
272 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
273
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
274 g_free(options->color_profile.input_file[i]);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
275 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
276 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
277 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
278 }
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
279 g_free(options->color_profile.screen_file);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
280 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
281 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
282 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
283 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
284
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
285 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
286 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
287 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
288 }
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
289
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
290 l_conf = layout_config_get(layout_widget, &new_style);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
291
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
292 if (new_style != options->layout.style ||
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
293 (l_conf == NULL) != (options->layout.order == NULL) ||
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
294 !options->layout.order ||
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
295 strcmp(buf, options->layout.order) != 0)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
296 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
297 if (refresh) filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
298 refresh = FALSE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
299
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
300 g_free(options->layout.order);
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
301 options->layout.order = l_conf;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
302 l_conf = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
303
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
304 options->layout.style = new_style;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
305
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
306 layout_styles_update();
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
309 g_free(l_conf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
310
26
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
311 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
312
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
313 if (refresh)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
314 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
315 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
316 layout_refresh(NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
317 }
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
320 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
321 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
322 * config window main button callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
323 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
324 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
325
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
326 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
327 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
328 gtk_widget_destroy(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
329 configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
330 filter_store = NULL;
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 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
334 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
335 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
336 return TRUE;
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
339 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
340 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
341 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
342 config_window_close_cb(NULL, 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 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
346 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
347 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
348 }
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 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
352 * config window setup (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
353 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
354 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
355
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
356 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
357 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
358 gint *option = data;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
359 *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
360 }
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
361
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
362 static void exif_item(GtkWidget *table, gint column, gint row,
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
363 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
364 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
365 GtkWidget *combo;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
366
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
367 *option_c = option;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
368
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
369 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
370
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
371 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
372
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
373 /* note: the order is important, it must match the values of
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
374 * EXIF_UI_OFF, _IFSET, _ON */
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
375 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
376 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
377 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
378
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
379 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
380
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
381 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
382 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
383
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
384 gtk_table_attach(GTK_TABLE(table), combo,
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
385 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
386 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
387 gtk_widget_show(combo);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
388 }
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
389
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
390 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
391 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
392 gint *option = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
393
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
394 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
395 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
396 case 0:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
397 default:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
398 *option = GDK_INTERP_NEAREST;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
399 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
400 case 1:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
401 *option = GDK_INTERP_TILES;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
402 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
403 case 2:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
404 *option = GDK_INTERP_BILINEAR;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
405 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
406 case 3:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
407 *option = GDK_INTERP_HYPER;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
408 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
409 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
410 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
411
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
412 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
413 gint option, gint *option_c)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
414 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
415 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
416 gint current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
417
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
418 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
419
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
420 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
421
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
422 combo = gtk_combo_box_new_text();
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 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
425 if (option == GDK_INTERP_NEAREST) current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
426 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
427 if (option == GDK_INTERP_TILES) current = 1;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
428 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
429 if (option == GDK_INTERP_BILINEAR) current = 2;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
430 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
431 if (option == GDK_INTERP_HYPER) current = 3;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
432
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
433 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
434
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
435 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
436 G_CALLBACK(quality_menu_cb), option_c);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
437
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
438 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
439 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
440 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
441 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
442
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
443 #if 0
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
444 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
445 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
446 GtkWidget *hbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
447 GtkWidget *omenu;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
448 GtkWidget *menu;
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 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
451
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
452 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
453 pref_label_new(hbox, text);
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 omenu = gtk_option_menu_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
456 menu = gtk_menu_new();
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 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
459 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
460 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
461
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
462 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
463 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
464
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
465 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
466 gtk_widget_show(omenu);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
467 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
468 #endif
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 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
471 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
472 gint n;
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 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
475
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
476 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
477 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
478 c_options->thumbnails.max_width = thumb_size_list[n].w;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
479 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
480 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
481 else if (n > 0)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
482 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
483 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
484 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
485 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
486 }
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 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
489 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
490 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
491 gint current;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
492 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
493
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
494 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
495 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
496
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
497 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
498
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
499 combo = gtk_combo_box_new_text();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
500
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
501 current = -1;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
502 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
503 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
504 gint w, h;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
505 gchar *buf;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
506
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
507 w = thumb_size_list[i].w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
508 h = thumb_size_list[i].h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
509
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
510 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
511 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
512 g_free(buf);
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
513
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
514 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
515 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
516
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
517 if (current == -1)
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 gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
520
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
521 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
522 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
523 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
524
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
525 current = i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
526 }
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 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
529 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
530 G_CALLBACK(thumb_size_menu_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
531
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
532 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
533 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
534 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
535 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
536
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
537 static void filter_store_populate(void)
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 GList *work;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
540
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
541 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
542
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
543 gtk_list_store_clear(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
544
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
545 work = filter_get_list();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
546 while (work)
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 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
549 GtkTreeIter iter;
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 fe = work->data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
552 work = work->next;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
553
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
554 gtk_list_store_append(filter_store, &iter);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
555 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
556 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
557 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
558
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
559 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
560 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
561 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
562 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
563 FilterEntry *fe = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
564 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
565 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
566
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
567 if (!new_text || strlen(new_text) < 1) return;
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 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
570 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
571 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
572
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
573 g_free(fe->extensions);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
574 fe->extensions = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
575
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
576 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
577 filter_rebuild();
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
580 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
581 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
582 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
583 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
584 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
585 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
586 GtkTreeIter iter;
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 if (!new_text || strlen(new_text) < 1) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
589
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
590 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
591 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
592 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
593
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
594 g_free(fe->description);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
595 fe->description = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
596
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
597 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
598 }
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 static void filter_store_enable_cb(GtkCellRendererToggle *renderer,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
601 gchar *path_str, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
602 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
603 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
604 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
605 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
606 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
607
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
608 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
609 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
610 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
611
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
612 fe->enabled = !fe->enabled;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
613
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
614 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
615 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
616 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
617
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
618 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
619 GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
620 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
621 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
622
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
623 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
624
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
625 switch(GPOINTER_TO_INT(data))
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
626 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
627 case FE_ENABLE:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
628 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
629 "active", fe->enabled, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
630 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
631 case FE_EXTENSION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
632 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
633 "text", fe->extensions, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
634 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
635 case FE_DESCRIPTION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
636 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
637 "text", fe->description, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
638 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
639 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
640 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
641
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
642 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
643 {
212
ca2772493f11 differentiate among normal image, raw image and metadata
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 211
diff changeset
644 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
645 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
646
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
647 /* 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
648 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
649
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
650 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
651 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
652 GtkWidget *filter_view = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
653 GtkTreeSelection *selection;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
654 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
655 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
656
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
657 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
658 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
659 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
660 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
661 if (!fe) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
662
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
663 filter_remove_entry(fe);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
664 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
665 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
666 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
667
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
668 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
669 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
670 filter_reset();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
671 filter_add_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
672 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
673 filter_store_populate();
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
676 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
677 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
678 /* no op, only so cancel button appears */
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
681 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
682 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
683 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
684
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
685 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
686 GQ_WMCLASS, "reset_filter", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
687 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
688 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
689 _("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
690 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
691 gtk_widget_show(gd->dialog);
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
694 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
695 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
696 GtkWidget *frame = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
697
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
698 gtk_widget_set_sensitive(frame,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
699 !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
700 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
701
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
702 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
703 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
704 gint i;
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 editor_reset_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
707 if (!configwindow) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
708
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
709 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
710 {
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
711 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
712 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
713 (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
714 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
715 (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
716 }
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
719 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
720 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
721 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
722
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
723 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
724 GQ_WMCLASS, "reset_filter", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
725 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
726 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
727 _("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
728 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
729 gtk_widget_show(gd->dialog);
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
732 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
733 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
734 help_window_show("editors");
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
735 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
736
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
737 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
738 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
739 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
740 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
741
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
742 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
743 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
744 file_util_trash_clear();
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
747 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
748 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
749 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
750 GtkWidget *entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
751 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
752 GQ_WMCLASS, "clear_trash", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
753 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
754 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
755 _("This will remove the trash contents."));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
756 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
757 entry = gtk_entry_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
758 GTK_WIDGET_UNSET_FLAGS(entry, GTK_CAN_FOCUS);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
759 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
760 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
761 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
762 gtk_widget_show(entry);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
763 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
764 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
765
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
766 static void fullscreen_info_view_changed_cb(GtkWidget* widget, gpointer 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
767 {
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
768 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
769 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
770 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
771 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
772
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
773 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
774
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
775 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
776 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
777 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
778
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
779 if (c_options->fullscreen.info) g_free(c_options->fullscreen.info);
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
780 c_options->fullscreen.info = 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
781 }
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
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
783 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
784 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
785 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
786 GtkTextBuffer *buffer;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
787
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
788 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
789 if (!configwindow) return;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
790
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
791 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_view));
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
792 gtk_text_buffer_set_text(buffer, options->fullscreen.info, -1);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
793 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
794
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_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
796 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
797 GenericDialog *gd;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
798
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
799 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
800 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
801 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
802 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
803 _("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
804 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
805 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
806 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
807
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
808
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
809 /* general options tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
810 static void config_tab_general(GtkWidget *notebook)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
811 {
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
812 GtkWidget *label;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
813 GtkWidget *hbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
814 GtkWidget *vbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
815 GtkWidget *group;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
816 GtkWidget *subgroup;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
817 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
818 GtkWidget *tabcomp;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
819 GtkWidget *ct_button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
820 GtkWidget *table;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
821 GtkWidget *spin;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
822
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
823 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
824 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
825 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
826 label = gtk_label_new(_("General"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
827 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
828
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
829 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
830
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
831 button = pref_checkbox_new_int(group, _("Change to folder:"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
832 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
833
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
834 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
835 pref_checkbox_link_sensitivity(button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
836
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
837 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
838 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
839 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
840 gtk_widget_show(tabcomp);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
841
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
842 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
843 G_CALLBACK(startup_path_set_current), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
844
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
845 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
846
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
847 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
848 add_thumb_size_menu(table, 0, 0, _("Size:"));
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
849 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
850
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
851 ct_button = pref_checkbox_new_int(group, _("Cache thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
852 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
853
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
854 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
855 pref_checkbox_link_sensitivity(ct_button, subgroup);
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 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
858 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
859
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
860 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
861 pref_checkbox_link_sensitivity_swap(button, subgroup);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
862
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
863 pref_checkbox_new_int(subgroup, _("Cache thumbnails into .thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
864 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
865
14
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
866 #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
867 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
868 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
869 #endif
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
870
38ec1baa05b7 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
John Ellis <johne@verizon.net>
parents: 9
diff changeset
871 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
872 options->thumbnails.fast, &c_options->thumbnails.fast);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
873
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
874 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
875
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
876 c_options->slideshow.delay = options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
877 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
878 SLIDESHOW_MIN_SECONDS, SLIDESHOW_MAX_SECONDS, 1.0, 1,
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
879 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
880 G_CALLBACK(slideshow_delay_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
881 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
882
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
883 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
884 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
885 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
886
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
887 /* image tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
888 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
889 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
890 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
891 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
892 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
893 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
894 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
895 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
896 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
897 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
898
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
899 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
900 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
901 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
902 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
903 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
904
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
905 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
906
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
907 #if 0
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
908 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
909 #endif
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
910 table = pref_table_new(group, 2, 1, FALSE, FALSE);
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
911 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
912
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
913 pref_checkbox_new_int(group, _("Two pass zooming"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
914 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
915
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
916 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
917 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
918
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
919 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
920 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
921 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
922 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
923 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
924 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
925 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
926
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
927 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
928 spin = pref_spin_new(group, _("Zoom increment:"), NULL,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
929 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
930 G_CALLBACK(zoom_increment_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
931 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
932
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
933 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
934
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
935 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
936 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
937 (options->image.zoom_mode == ZOOM_RESET_ORIGINAL),
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
938 G_CALLBACK(zoom_mode_original_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
939 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
940 (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
941 G_CALLBACK(zoom_mode_fit_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
942 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
943 (options->image.zoom_mode == ZOOM_RESET_NONE),
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
944 G_CALLBACK(zoom_mode_none_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
945
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
946 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
947
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
948 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
949 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
950
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
951 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
952 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
953
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
954 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
955
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
956 pref_checkbox_new_int(group, _("Refresh on file change"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
957 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
958 pref_checkbox_new_int(group, _("Preload next image"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
959 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
960 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
961 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
962 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
963
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
964 /* windows tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
965 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
966 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
967 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
968 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
969 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
970 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
971 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
972 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
973
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
974 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
975 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
976 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
977 label = gtk_label_new(_("Windows"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
978 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
979
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
980 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
981
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
982 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
983 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
984 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
985 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
986
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
987 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
988
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
989 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
990 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
991
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
992 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
993 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
994 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
995 spin = pref_spin_new_int(hbox, NULL, NULL,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
996 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
997 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
998 pref_checkbox_link_sensitivity(ct_button, spin);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
999
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1000 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
1001
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1002 layout_widget = layout_config_new();
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1003 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
1004 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
1005 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
1006 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1007
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1008 /* filtering tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1009 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
1010 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1011 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1012 GtkWidget *frame;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1013 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1014 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1015 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1016 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1017 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1018 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1019 GtkWidget *filter_view;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1020 GtkCellRenderer *renderer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1021 GtkTreeSelection *selection;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1022 GtkTreeViewColumn *column;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1023
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1024 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1025 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
1026 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1027 label = gtk_label_new(_("Filtering"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1028 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
1029
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1030 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
1031
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1032 pref_checkbox_new_int(group, _("Show entries that begin with a dot"),
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
1033 options->file_filter.show_dot_files, &c_options->file_filter.show_dot_files);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1034 pref_checkbox_new_int(group, _("Case sensitive sort"),
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
1035 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
1036
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1037 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
1038 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
1039
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1040
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1041 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
1042
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1043 sidecar_ext_entry = gtk_entry_new();
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1044 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
1045 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
1046 gtk_widget_show(sidecar_ext_entry);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1047
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1048 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
1049
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1050 frame = pref_group_parent(group);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1051 g_signal_connect(G_OBJECT(ct_button), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1052 G_CALLBACK(filter_disable_cb), frame);
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
1053 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
1054
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1055 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1056 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
1057 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
1058 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
1059 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1060
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1061 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
1062 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
1063 g_object_unref(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1064 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
1065 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
1066
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1067 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
1068
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1069 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1070 gtk_tree_view_column_set_title(column, _("Filter"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1071 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1072
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1073 renderer = gtk_cell_renderer_toggle_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1074 g_signal_connect(G_OBJECT(renderer), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1075 G_CALLBACK(filter_store_enable_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1076 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
1077 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
1078 GINT_TO_POINTER(FE_ENABLE), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1079
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1080 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1081 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1082 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
1083 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
1084 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
1085 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
1086 GINT_TO_POINTER(FE_EXTENSION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1087 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
1088
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1089 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1090 gtk_tree_view_column_set_title(column, _("Description"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1091 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1092 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1093 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1094 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
1095 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
1096 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
1097 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
1098 GINT_TO_POINTER(FE_DESCRIPTION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1099 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
1100
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1101 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1102 gtk_container_add(GTK_CONTAINER(scrolled), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1103 gtk_widget_show(filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1104
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1105 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
1106
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1107 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1108 G_CALLBACK(filter_default_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1109 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
1110 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1111
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1112 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
1113 G_CALLBACK(filter_remove_cb), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1114 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
1115 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1116
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1117 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
1118 G_CALLBACK(filter_add_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1119 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
1120 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
1121 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1122
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1123 /* editors tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1124 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
1125 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1126 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1127 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1128 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1129 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1130 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1131 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1132
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1133 vbox = gtk_vbox_new(FALSE, PREF_PAD_GAP);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1134 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
1135 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1136 label = gtk_label_new(_("Editors"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1137 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
1138
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1139 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
1140 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
1141
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1142 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
1143 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1144
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1145 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
1146 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1147
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
1148 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
1149 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1150
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
1151 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
1152 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1153 GtkWidget *entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1154
283
c459535524df GQVIEW_* -> GQ_*
Laurent Monin <geeqie@norz.org>
parents: 281
diff changeset
1155 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
1156 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1157 gchar *buf;
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1158
134
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1159 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
1160 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
1161 g_free(buf);
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1162 entry = gtk_entry_new();
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1163 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
1164 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
1165 if (options->editor_name[i])
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1166 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
1167 }
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1168 else
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1169 {
318
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1170 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
1171 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
1172 }
d565c72322e8 started implementation of external commands; external Delete should work
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 113
diff changeset
1173
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1174 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
1175 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
1176 gtk_widget_show(entry);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1177 editor_name_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1178
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1179 entry = gtk_entry_new();
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1180 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
1181 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
1182 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
1183 if (options->editor_command[i])
e8261920c720 Add a new struct ConfOptions to handle options.
Laurent Monin <geeqie@norz.org>
parents: 298
diff changeset
1184 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
1185 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
1186 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
1187 gtk_widget_show(entry);
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1188 editor_command_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1189 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1190
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1191 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
1192
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1193 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1194 G_CALLBACK(editor_default_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1195 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
1196 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1197
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1198 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
1199 G_CALLBACK(editor_help_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1200 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
1201 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
1202 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1203
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1204 /* properties tab */
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1205 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
1206 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1207 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1208 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1209 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1210 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1211 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1212 GtkWidget *viewport;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1213 gint i;
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1214
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1215 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
1216 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
1217 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
1218 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
1219
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1220 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
1221 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
1222 gtk_widget_show(scrolled);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1223
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1224 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
1225 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
1226 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
1227 gtk_widget_show(viewport);
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 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
1230 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
1231 gtk_widget_show(vbox);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1232
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1233 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
1234 GTK_ORIENTATION_VERTICAL);
257
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1235
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1236
5c8a7ac6b009 Re-add "What to show in properties dialog:" label before the table.
Laurent Monin <geeqie@norz.org>
parents: 256
diff changeset
1237 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
1238 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
1239 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
1240
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1241 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
1242
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1243 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
1244 {
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1245 const gchar *title;
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1246
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1247 title = exif_get_description_by_key(ExifUIList[i].key);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1248 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
1249 &ExifUIList[i].temp);
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1250 }
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1251 }
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
1252
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1253 /* advanced entry tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1254 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
1255 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1256 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1257 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1258 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1259 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1260 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1261 GtkWidget *tabcomp;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1262 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1263 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1264 GtkWidget *spin;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1265 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1266 GtkWidget *viewport;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1267 GtkWidget *fullscreen_info_view;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1268 GtkTextBuffer *buffer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1269 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1270
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1271 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1272 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
1273 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
1274 GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1275 label = gtk_label_new(_("Advanced"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1276 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
1277 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1278
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1279 viewport = gtk_viewport_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1280 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
1281 gtk_container_add(GTK_CONTAINER(scrolled), viewport);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1282 gtk_widget_show(viewport);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1283
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1284 vbox = gtk_vbox_new(FALSE, 0);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1285 gtk_container_add(GTK_CONTAINER(viewport), vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1286 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1287
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1288 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
1289
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1290 c_options->fullscreen.screen = options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1291 c_options->fullscreen.above = options->fullscreen.above;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1292 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
1293 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
1294 gtk_widget_show(hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1295
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1296 pref_checkbox_new_int(group, _("Smooth image flip"),
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1297 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
1298 pref_checkbox_new_int(group, _("Disable screen saver"),
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1299 options->fullscreen.disable_saver, &c_options->fullscreen.disable_saver);
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
1300 pref_checkbox_new_int(group, _("Always show fullscreen info"),
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1301 options->fullscreen.show_info, &c_options->fullscreen.show_info);
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
1302 pref_label_new(group, _("Fullscreen info string"));
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
1303
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
1304 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
1305 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
1306 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
1307 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
1308 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
1309 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
1310 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
1311
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
1312 fullscreen_info_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
1313
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1314 #if GTK_CHECK_VERSION(2,12,0)
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
1315 gtk_widget_set_tooltip_markup(fullscreen_info_view,
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
1316 _("<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
1317 "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
1318 "<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
1319 "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
1320 "<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
1321 "<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
1322 "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
1323 "<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
1324 "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
1325 "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
1326 ));
267
e4cf5091eab6 Remove dependency on GTK 2.12, reported by John Vodden and Vladimir
Laurent Monin <geeqie@norz.org>
parents: 257
diff changeset
1327 #endif
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
1328 gtk_container_add(GTK_CONTAINER(scrolled), fullscreen_info_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
1329 gtk_widget_show(fullscreen_info_view);
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
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1331 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
1332
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1333 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1334 G_CALLBACK(fullscreen_info_default_cb), fullscreen_info_view);
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1335 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
1336 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
1337
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
1338 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(fullscreen_info_view));
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
1339 gtk_text_buffer_set_text(buffer, options->fullscreen.info, -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
1340 g_signal_connect(G_OBJECT(buffer), "changed",
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
1341 G_CALLBACK(fullscreen_info_view_changed_cb), fullscreen_info_view);
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
1342
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1343 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
1344
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1345 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
1346 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
1347 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
1348 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
1349
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1350 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
1351 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
1352
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1353 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
1354 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1355
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1356 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
1357 pref_label_new(hbox, _("Folder:"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1358
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1359 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
1360 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
1361 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
1362 gtk_widget_show(tabcomp);
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 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
1365 pref_checkbox_link_sensitivity(ct_button, hbox);
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 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
1368 spin = pref_spin_new_int(hbox, _("Maximum size:"), _("MB"),
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
1369 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
1370 #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
1371 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
1372 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1373 button = pref_button_new(NULL, NULL, _("View"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1374 G_CALLBACK(safe_delete_view_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1375 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
1376 gtk_widget_show(button);
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 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
1379 G_CALLBACK(safe_delete_clear_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1380 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
1381 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1382
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1383 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
1384
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1385 pref_checkbox_new_int(group, _("Rectangular selection in icon view"),
330
06b913dae425 Rename collection options.
Laurent Monin <geeqie@norz.org>
parents: 329
diff changeset
1386 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
1387
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1388 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
1389 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
1390
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1391 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
1392 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
1393
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1394 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
1395
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1396 pref_checkbox_new_int(group, _("Progressive keyboard scrolling"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1397 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
1398 pref_checkbox_new_int(group, _("Mouse wheel scrolls image"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1399 options->mousewheel_scrolls, &c_options->mousewheel_scrolls);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1400
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1401 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
1402
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1403 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
1404 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
1405
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1406 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
1407 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
1408
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1409 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
1410 0, 128, 1, options->image.tile_cache_max, &c_options->image.tile_cache_max);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1411
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1412 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
1413 #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
1414 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
1415 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1416
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1417 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
1418 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
1419
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1420 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
1421 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
1422
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1423 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
1424 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
1425
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1426 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
1427 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
1428
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1429 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
1430 {
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1431 GtkWidget *entry;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1432 gchar *buf;
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1433
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1434 buf = g_strdup_printf("Input %d:", i + 1);
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1435 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
1436 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
1437
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1438 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
1439 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
1440 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
1441 if (options->color_profile.input_name[i])
320
bd97f1e60100 Move more options to ConfOptions.
Laurent Monin <geeqie@norz.org>
parents: 319
diff changeset
1442 {
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1443 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
1444 }
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1445 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
1446 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
1447 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
1448 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
1449
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1450 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
1451 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
1452 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
1453 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
1454 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
1455 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
1456 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
1457 }
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1458
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
1459 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
1460 tabcomp = tab_completion_new(&color_profile_screen_file_entry,
327
e2fc4d9e7174 Rename color profile options.
Laurent Monin <geeqie@norz.org>
parents: 326
diff changeset
1461 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
1462 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
1463 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
1464 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
1465 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
1466 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
1467 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
1468
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1469 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1470 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
1471
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
1472 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
1473 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
1474 #endif
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1475 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1476
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1477 /* Main preferences window */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1478 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
1479 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1480 GtkWidget *win_vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1481 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1482 GtkWidget *notebook;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1483 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1484 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1485
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
1486 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
1487
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
1488 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
1489 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
1490 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
1491 G_CALLBACK(config_window_delete), NULL);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1492 gtk_window_set_default_size(GTK_WINDOW(configwindow), CONFIG_WINDOW_DEF_WIDTH, CONFIG_WINDOW_DEF_HEIGHT);
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1493 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
1494 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
1495
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1496 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
1497 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
1498 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
1499
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1500 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
1501 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
1502 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
1503 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
1504 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
1505
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1506 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
1507 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
1508 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
1509 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
1510 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
1511 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
1512
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1513 ct_button = button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1514
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1515 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
1516 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
1517 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
1518 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
1519 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
1520
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1521 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
1522 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
1523 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
1524 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
1525 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
1526
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1527 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
1528 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1529 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
1530 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1531
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1532 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
1533 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
1534 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
1535
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1536 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
1537 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
1538 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
1539 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
1540 config_tab_editors(notebook);
256
cd6c0756b1e2 Rename exif preferences tab to "Properties", and name the
Laurent Monin <geeqie@norz.org>
parents: 254
diff changeset
1541 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
1542 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
1543
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1544 gtk_widget_show(notebook);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1545
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1546 gtk_widget_show(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1547 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1548
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1549 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1550 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1551 * config window show (public)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1552 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1553 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1554
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1555 void show_config_window(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1556 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1557 if (configwindow)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1558 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1559 gtk_window_present(GTK_WINDOW(configwindow));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1560 return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1561 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1562
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1563 config_window_create();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1564 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1565
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1566 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1567 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1568 * about window
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1569 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1570 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1571
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1572 static GtkWidget *about = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1573
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1574 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
1575 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1576 gtk_widget_destroy(about);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1577 about = NULL;
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 return TRUE;
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 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
1583 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1584 if (!about) return;
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 gtk_widget_destroy(about);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1587 about = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1588 }
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 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
1591 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1592 help_window_show("credits");
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1595 void show_about_window(void)
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 GtkWidget *vbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1598 GtkWidget *hbox;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1599 GtkWidget *label;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1600 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1601 GdkPixbuf *pixbuf;
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 gchar *buf;
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 if (about)
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_window_present(GTK_WINDOW(about));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1608 return;
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
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
1611 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
1612 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
1613 g_signal_connect(G_OBJECT(about), "delete_event",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1614 G_CALLBACK(about_delete_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1615
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1616 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
1617
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1618 vbox = gtk_vbox_new(FALSE, PREF_PAD_SPACE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1619 gtk_container_add(GTK_CONTAINER(about), vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1620 gtk_widget_show(vbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1621
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1622 pixbuf = pixbuf_inline(PIXBUF_INLINE_LOGO);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1623 button = gtk_image_new_from_pixbuf(pixbuf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1624 g_object_unref(pixbuf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1625 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
1626 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1627
288
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1628 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
1629 GQ_APPNAME,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1630 VERSION,
67
40abb746a32e Fri Oct 13 05:22:43 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 26
diff changeset
1631 "2006",
288
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1632 GQ_WEBSITE,
e675073bcca0 Replace occurences of Geeqie / geeqie by constants defined in main.h.
Laurent Monin <geeqie@norz.org>
parents: 283
diff changeset
1633 GQ_EMAIL_ADDRESS);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1634 label = gtk_label_new(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1635 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1636
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1637 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
1638 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
1639 gtk_widget_show(label);
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 hbox = gtk_hbutton_box_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1642 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
1643 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
1644 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
1645 gtk_widget_show(hbox);
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 button = pref_button_new(NULL, NULL, _("Credits..."), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1648 G_CALLBACK(about_credits_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1649 gtk_container_add(GTK_CONTAINER(hbox), button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1650 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1651 gtk_widget_show(button);
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 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
1654 G_CALLBACK(about_window_close), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1655 gtk_container_add(GTK_CONTAINER(hbox), button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1656 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1657 gtk_widget_grab_default(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1658 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1659
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1660 gtk_widget_show(about);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1661 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1662