annotate src/preferences.c @ 2860:b20a96b979a3

Fix #437: Delete to standard Trash directory https://github.com/BestImageViewer/geeqie/issues/437 The method of file deletion is changed. The Preferences/Behaviour option "Safe delete" is removed. The user has the option to choose Geeqie-defined trash bin or system-defined trash bin as the normal mode - set in Preferences/Behaviour. Menus have two entries: Move to trash and Permanent delete. The Delete key moves to trash; shift-Delete deletes permanently. Both Move to trash and Permanent delete have user-selectable confirmation, set in Preferences/Behaviour. This means the function of the Delete key is changed from Permanent delete to Move to trash, which is a fail-safe change.
author Colin Clark <colin.clark@cclark.uk>
date Sat, 03 Nov 2018 17:53:31 +0000
parents bb44bd76f857
children 87242753ed2c
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 /*
2350
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
2 * Copyright (C) 2006 John Ellis
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
3 * Copyright (C) 2008 - 2016 The Geeqie Team
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 *
2350
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
7 * This program is free software; you can redistribute it and/or modify
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
8 * it under the terms of the GNU General Public License as published by
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
10 * (at your option) any later version.
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
11 *
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
12 * This program is distributed in the hope that it will be useful,
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
15 * GNU General Public License for more details.
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
16 *
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
17 * You should have received a copy of the GNU General Public License along
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
18 * with this program; if not, write to the Free Software Foundation, Inc.,
95507e596256 Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2343
diff changeset
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
20 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
21
281
b1c2c2cf19d4 gqview.h -> main.h
Laurent Monin <geeqie@norz.org>
parents: 267
diff changeset
22 #include "main.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
23 #include "preferences.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
24
648
36e8da5a771d Move some functions from main.[ch] to new window.[ch].
Laurent Monin <geeqie@norz.org>
parents: 630
diff changeset
25 #include "bar_exif.h"
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
26 #include "bar_keywords.h"
1599
ec811624c949 Include missing header file.
Laurent Monin <geeqie@norz.org>
parents: 1596
diff changeset
27 #include "cache.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
28 #include "cache_maint.h"
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
29 #include "dnd.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
30 #include "editors.h"
648
36e8da5a771d Move some functions from main.[ch] to new window.[ch].
Laurent Monin <geeqie@norz.org>
parents: 630
diff changeset
31 #include "exif.h"
586
122fc2223b42 split filelist.c to filefilter.c and filedata.c
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 566
diff changeset
32 #include "filedata.h"
122fc2223b42 split filelist.c to filefilter.c and filedata.c
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 566
diff changeset
33 #include "filefilter.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
34 #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
35 #include "image.h"
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
36 #include "image-overlay.h"
426
e4a5d61aff1c show the AdobeRGB profile in the menu, indicate input profile from image
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 413
diff changeset
37 #include "color-man.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
38 #include "img-view.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
39 #include "layout_config.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
40 #include "layout_util.h"
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
41 #include "metadata.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
42 #include "pixbuf_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
43 #include "slideshow.h"
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
44 #include "toolbar.h"
597
471697db9e6b moved safe delete functions to separate file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 594
diff changeset
45 #include "trash.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
46 #include "utilops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
47 #include "ui_fileops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
48 #include "ui_misc.h"
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
49 #include "ui_spinner.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
50 #include "ui_tabcomp.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
51 #include "ui_utildlg.h"
648
36e8da5a771d Move some functions from main.[ch] to new window.[ch].
Laurent Monin <geeqie@norz.org>
parents: 630
diff changeset
52 #include "window.h"
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
53 #include "zonedetect.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
54
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
55 #include <math.h>
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
56
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
57 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
58 #ifdef HAVE_LCMS2
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
59 #include <lcms2.h>
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
60 #else
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
61 #include <lcms.h>
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
62 #endif
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
63 #endif
9
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 #define EDITOR_NAME_MAX_LENGTH 32
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
66 #define EDITOR_COMMAND_MAX_LENGTH 1024
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
67
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
68 static void image_overlay_set_text_colours();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
69
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
70 GtkWidget *keyword_text;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
71 static void config_tab_keywords_save();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
72
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
73 typedef struct _ThumbSize ThumbSize;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
74 struct _ThumbSize
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
75 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
76 gint w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
77 gint h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
78 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
79
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
80 static ThumbSize thumb_size_list[] =
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
81 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
82 { 24, 24 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
83 { 32, 32 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
84 { 48, 48 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
85 { 64, 64 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
86 { 96, 72 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
87 { 96, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
88 { 128, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
89 { 128, 128 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
90 { 160, 120 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
91 { 160, 160 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
92 { 192, 144 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
93 { 192, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
94 { 256, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
95 { 256, 256 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
96 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
97
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
98 enum {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
99 FE_ENABLE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
100 FE_EXTENSION,
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
101 FE_DESCRIPTION,
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
102 FE_CLASS,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
103 FE_WRITABLE,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
104 FE_ALLOW_SIDECAR
9
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
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
107 enum {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
108 AE_ACTION,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
109 AE_KEY,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
110 AE_TOOLTIP,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
111 AE_ACCEL
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
112 };
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
113
2768
7d275582e37d Fix #612: Pan view image class filtering
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2756
diff changeset
114 gchar *format_class_list[] = {
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
115 N_("Unknown"),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
116 N_("Image"),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
117 N_("RAW Image"),
2597
e65df743a5a1 Ref #510: Rudimentary video support
Colin Clark <colin.clark@cclark.uk>
parents: 2596
diff changeset
118 N_("Metadata"),
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
119 N_("Video"),
2799
ea4163f0c769 Ref #332: include pdf-view
Colin Clark <colin.clark@cclark.uk>
parents: 2793
diff changeset
120 N_("Collection"),
ea4163f0c769 Ref #332: include pdf-view
Colin Clark <colin.clark@cclark.uk>
parents: 2793
diff changeset
121 N_("Pdf")
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
122 };
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
123
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
124 /* config memory values */
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
125 static ConfOptions *c_options = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
126
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
127
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
128 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
129 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
130 #endif
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
131
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
132 static GtkWidget *configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
133 static GtkListStore *filter_store = NULL;
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
134 static GtkTreeStore *accel_store = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
135
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
136 static GtkWidget *safe_delete_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
137
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
138 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
139 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
140 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
141
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
142 static GtkWidget *sidecar_ext_entry;
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
143 static GtkWidget *help_search_engine_entry;
225
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
144
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
145
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
146 #define CONFIG_WINDOW_DEF_WIDTH 700
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
147 #define CONFIG_WINDOW_DEF_HEIGHT 600
225
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
148
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
149 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
150 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
151 * option widget callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
152 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
153 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
154
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
155 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
156 {
2341
c9948056a6db Refined zoom step
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2337
diff changeset
157 c_options->image.zoom_increment = (gint)(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spin)) * 100.0 + 0.01);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
158 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
159
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
160 static void slideshow_delay_hours_cb(GtkWidget *spin, gpointer data)
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
161 {
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
162 gint mins_secs_tenths, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
163
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
164 mins_secs_tenths = c_options->slideshow.delay %
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
165 (3600 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
166
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
167 delay = (gtk_spin_button_get_value(GTK_SPIN_BUTTON(spin)) *
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
168 (3600 * SLIDESHOW_SUBSECOND_PRECISION) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
169 mins_secs_tenths);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
170
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
171 c_options->slideshow.delay = delay > 0 ? delay : SLIDESHOW_MIN_SECONDS *
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
172 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
173 }
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
174
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
175 static void slideshow_delay_minutes_cb(GtkWidget *spin, gpointer data)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
176 {
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
177 gint hours, secs_tenths, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
178
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
179 hours = c_options->slideshow.delay / (3600 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
180 secs_tenths = c_options->slideshow.delay % (60 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
181
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
182 delay = hours * (3600 * SLIDESHOW_SUBSECOND_PRECISION) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
183 (gtk_spin_button_get_value(GTK_SPIN_BUTTON(spin)) *
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
184 (60 * SLIDESHOW_SUBSECOND_PRECISION) + secs_tenths);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
185
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
186 c_options->slideshow.delay = delay > 0 ? delay : SLIDESHOW_MIN_SECONDS *
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
187 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
188 }
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
189
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
190 static void slideshow_delay_seconds_cb(GtkWidget *spin, gpointer data)
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
191 {
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
192 gint hours_mins, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
193
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
194 hours_mins = c_options->slideshow.delay / (60 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
195
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
196 delay = (hours_mins * (60 * SLIDESHOW_SUBSECOND_PRECISION)) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
197 (gint)(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spin)) *
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
198 (gdouble)(SLIDESHOW_SUBSECOND_PRECISION) + 0.01);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
199
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
200 c_options->slideshow.delay = delay > 0 ? delay : SLIDESHOW_MIN_SECONDS *
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
201 SLIDESHOW_SUBSECOND_PRECISION;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
202 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
203
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
204 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
205 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
206 * sync progam to config window routine (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
207 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
208 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
209
1436
13d61fe760fb completely separated global and layout window options
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1400
diff changeset
210 void config_entry_to_option(GtkWidget *entry, gchar **option, gchar *(*func)(const gchar *))
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
211 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
212 const gchar *buf;
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
213
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
214 g_free(*option);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
215 *option = NULL;
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
216 buf = gtk_entry_get_text(GTK_ENTRY(entry));
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
217 if (buf && strlen(buf) > 0)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
218 {
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
219 if (func)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
220 *option = func(buf);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
221 else
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
222 *option = g_strdup(buf);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
223 }
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
224 }
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
225
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
226
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
227 static gboolean accel_apply_cb(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
228 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
229 gchar *accel_path, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
230
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
231 gtk_tree_model_get(model, iter, AE_ACCEL, &accel_path, AE_KEY, &accel, -1);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
232
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
233 if (accel_path && accel_path[0])
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
234 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
235 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
236 gtk_accelerator_parse(accel, &key.accel_key, &key.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
237 gtk_accel_map_change_entry(accel_path, key.accel_key, key.accel_mods, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
238 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
239
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
240 g_free(accel_path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
241 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
242
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
243 return FALSE;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
244 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
245
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
246
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
247 static void config_window_apply(void)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
248 {
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
249 gint i;
1437
cc423d10b73e gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1436
diff changeset
250 gboolean refresh = FALSE;
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
251
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
252 config_entry_to_option(safe_delete_path_entry, &options->file_ops.safe_delete_path, remove_trailing_slash);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
253
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
254 if (options->file_filter.show_hidden_files != c_options->file_filter.show_hidden_files) refresh = TRUE;
2265
15d51cf8ff3d Allow to choose to show parent folder
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2255
diff changeset
255 if (options->file_filter.show_parent_directory != c_options->file_filter.show_parent_directory) refresh = TRUE;
373
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
256 if (options->file_filter.show_dot_directory != c_options->file_filter.show_dot_directory) refresh = TRUE;
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
257 if (options->file_sort.case_sensitive != c_options->file_sort.case_sensitive) refresh = TRUE;
2406
16fcfac12c77 Fix #417: Natural sort order
Colin Clark <cclark@mcb.net>
parents: 2386
diff changeset
258 if (options->file_sort.natural != c_options->file_sort.natural) refresh = TRUE;
2301
dec8d9db5770 Fix #333 Renaming file extensions
Colin Clark <cclark@mcb.net>
parents: 2265
diff changeset
259 if (options->file_filter.disable_file_extension_checks != c_options->file_filter.disable_file_extension_checks) refresh = TRUE;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
260 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
261
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
262 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
263 options->file_ops.enable_delete_key = c_options->file_ops.enable_delete_key;
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
264 options->file_ops.confirm_move_to_trash = c_options->file_ops.confirm_move_to_trash;
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
265 options->file_ops.use_system_trash = c_options->file_ops.use_system_trash;
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
266 options->file_ops.safe_delete_folder_maxsize = c_options->file_ops.safe_delete_folder_maxsize;
1436
13d61fe760fb completely separated global and layout window options
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1400
diff changeset
267 options->tools_restore_state = c_options->tools_restore_state;
13d61fe760fb completely separated global and layout window options
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1400
diff changeset
268 options->save_window_positions = c_options->save_window_positions;
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
269 options->use_saved_window_positions_for_new_windows = c_options->use_saved_window_positions_for_new_windows;
2670
ec21b78a088c Fix #543: Size of dialog windows in the GTK3 version is too small
Colin Clark <colin.clark@cclark.uk>
parents: 2666
diff changeset
270 options->save_dialog_window_positions = c_options->save_dialog_window_positions;
2740
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
271 options->show_window_ids = c_options->show_window_ids;
1038
ea23bbd31f75 Allow to change image.scroll_reset_method in Preferences > Image.
Laurent Monin <geeqie@norz.org>
parents: 1024
diff changeset
272 options->image.scroll_reset_method = c_options->image.scroll_reset_method;
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
273 options->image.zoom_2pass = c_options->image.zoom_2pass;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
274 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
275 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
276 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
277 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
278 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
279 options->image.max_autofit_size = c_options->image.max_autofit_size;
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
280 options->image.max_enlargement_size = c_options->image.max_enlargement_size;
2084
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
281 options->image.use_clutter_renderer = c_options->image.use_clutter_renderer;
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
282 options->progressive_key_scrolling = c_options->progressive_key_scrolling;
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
283 options->keyboard_scroll_step = c_options->keyboard_scroll_step;
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
284
1506
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
285 if (options->thumbnails.max_width != c_options->thumbnails.max_width
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
286 || options->thumbnails.max_height != c_options->thumbnails.max_height
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
287 || options->thumbnails.quality != c_options->thumbnails.quality)
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
288 {
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
289 thumb_format_changed = TRUE;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
290 refresh = TRUE;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
291 options->thumbnails.max_width = c_options->thumbnails.max_width;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
292 options->thumbnails.max_height = c_options->thumbnails.max_height;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
293 options->thumbnails.quality = c_options->thumbnails.quality;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
294 }
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
295 options->thumbnails.enable_caching = c_options->thumbnails.enable_caching;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
296 options->thumbnails.cache_into_dirs = c_options->thumbnails.cache_into_dirs;
1060
54806f8e4af5 added option to use exif thumbnails
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1055
diff changeset
297 options->thumbnails.use_exif = c_options->thumbnails.use_exif;
2800
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
298 options->thumbnails.collection_preview = c_options->thumbnails.collection_preview;
2673
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
299 options->thumbnails.use_ft_metadata = c_options->thumbnails.use_ft_metadata;
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
300 // options->thumbnails.use_ft_metadata_small = c_options->thumbnails.use_ft_metadata_small;
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
301 options->thumbnails.spec_standard = c_options->thumbnails.spec_standard;
1208
338afd22a394 added options for metadata - not yet used
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1188
diff changeset
302 options->metadata.enable_metadata_dirs = c_options->metadata.enable_metadata_dirs;
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
303 options->file_filter.show_hidden_files = c_options->file_filter.show_hidden_files;
2265
15d51cf8ff3d Allow to choose to show parent folder
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2255
diff changeset
304 options->file_filter.show_parent_directory = c_options->file_filter.show_parent_directory;
373
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
305 options->file_filter.show_dot_directory = c_options->file_filter.show_dot_directory;
2301
dec8d9db5770 Fix #333 Renaming file extensions
Colin Clark <cclark@mcb.net>
parents: 2265
diff changeset
306 options->file_filter.disable_file_extension_checks = c_options->file_filter.disable_file_extension_checks;
373
363117fefc85 Add a new option in Preferences > Filtering to allow the
Laurent Monin <geeqie@norz.org>
parents: 356
diff changeset
307
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
308 options->file_sort.case_sensitive = c_options->file_sort.case_sensitive;
2406
16fcfac12c77 Fix #417: Natural sort order
Colin Clark <cclark@mcb.net>
parents: 2386
diff changeset
309 options->file_sort.natural = c_options->file_sort.natural;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
310 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
311
1229
2f11fec715ca sidecar files grouping was made case-insensitive
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1216
diff changeset
312 config_entry_to_option(sidecar_ext_entry, &options->sidecar.ext, NULL);
1327
aadde9f46ce9 quoted_value is no longer needed
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1284
diff changeset
313 sidecar_ext_parse(options->sidecar.ext);
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
314
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
315 options->slideshow.random = c_options->slideshow.random;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
316 options->slideshow.repeat = c_options->slideshow.repeat;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
317 options->slideshow.delay = c_options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
318
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
319 options->mousewheel_scrolls = c_options->mousewheel_scrolls;
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
320 options->image_lm_click_nav = c_options->image_lm_click_nav;
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
321 options->image_l_click_video = c_options->image_l_click_video;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
322 options->image_l_click_video_editor = c_options->image_l_click_video_editor;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
323
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
324 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
325
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
326 options->image.tile_cache_max = c_options->image.tile_cache_max;
848
79fc2c215d64 cache size made configurable
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 825
diff changeset
327 options->image.image_cache_max = c_options->image.image_cache_max;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
328
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
329 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
330
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
331 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
332
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
333 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
334
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
335
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
336 if (options->image.use_custom_border_color != c_options->image.use_custom_border_color
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
337 || options->image.use_custom_border_color_in_fullscreen != c_options->image.use_custom_border_color_in_fullscreen
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
338 || !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
339 {
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
340 options->image.use_custom_border_color_in_fullscreen = c_options->image.use_custom_border_color_in_fullscreen;
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
341 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
342 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
343 layout_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
344 view_window_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
345 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
346
2457
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
347 options->image.alpha_color_1 = c_options->image.alpha_color_1;
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
348 options->image.alpha_color_2 = c_options->image.alpha_color_2;
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
349
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
350 options->fullscreen.screen = c_options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
351 options->fullscreen.clean_flip = c_options->fullscreen.clean_flip;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
352 options->fullscreen.disable_saver = c_options->fullscreen.disable_saver;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
353 options->fullscreen.above = c_options->fullscreen.above;
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
354 if (c_options->image_overlay.template_string)
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
355 set_image_overlay_template_string(&options->image_overlay.template_string,
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
356 c_options->image_overlay.template_string);
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
357 if (c_options->image_overlay.font)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
358 set_image_overlay_font_string(&options->image_overlay.font,
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
359 c_options->image_overlay.font);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
360 options->image_overlay.text_red = c_options->image_overlay.text_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
361 options->image_overlay.text_green = c_options->image_overlay.text_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
362 options->image_overlay.text_blue = c_options->image_overlay.text_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
363 options->image_overlay.text_alpha = c_options->image_overlay.text_alpha;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
364 options->image_overlay.background_red = c_options->image_overlay.background_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
365 options->image_overlay.background_green = c_options->image_overlay.background_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
366 options->image_overlay.background_blue = c_options->image_overlay.background_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
367 options->image_overlay.background_alpha = c_options->image_overlay.background_alpha;
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
368 options->update_on_time_change = c_options->update_on_time_change;
2066
01d2c966209e exif autorotate for proofs
Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
parents: 2059
diff changeset
369 options->image.exif_proof_rotate_enable = c_options->image.exif_proof_rotate_enable;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
370
342
de6de19bd03a Rename dupe_custom_threshold option to duplicates_similarity_threshold.
Laurent Monin <geeqie@norz.org>
parents: 341
diff changeset
371 options->duplicates_similarity_threshold = c_options->duplicates_similarity_threshold;
2328
ad005c02001a Allow to configure rotation invariance
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2301
diff changeset
372 options->rot_invariant_sim = c_options->rot_invariant_sim;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
373
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
374 options->tree_descend_subdirs = c_options->tree_descend_subdirs;
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
375
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
376 options->view_dir_list_single_click_enter = c_options->view_dir_list_single_click_enter;
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
377
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
378 options->open_recent_list_maxsize = c_options->open_recent_list_maxsize;
458
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
379 options->dnd_icon_size = c_options->dnd_icon_size;
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
380 options->clipboard_selection = c_options->clipboard_selection;
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
381
1208
338afd22a394 added options for metadata - not yet used
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1188
diff changeset
382 options->metadata.save_in_image_file = c_options->metadata.save_in_image_file;
1213
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
383 options->metadata.save_legacy_IPTC = c_options->metadata.save_legacy_IPTC;
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
384 options->metadata.warn_on_write_problems = c_options->metadata.warn_on_write_problems;
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
385 options->metadata.save_legacy_format = c_options->metadata.save_legacy_format;
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
386 options->metadata.sync_grouped_files = c_options->metadata.sync_grouped_files;
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
387 options->metadata.confirm_write = c_options->metadata.confirm_write;
2454
93d1c77a312b Fix #147: Alternative format for sidecar extension
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2444
diff changeset
388 options->metadata.sidecar_extended_name = c_options->metadata.sidecar_extended_name;
1213
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
389 options->metadata.confirm_timeout = c_options->metadata.confirm_timeout;
1244
eeefa0f10d39 improved metadata preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1239
diff changeset
390 options->metadata.confirm_after_timeout = c_options->metadata.confirm_after_timeout;
1213
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
391 options->metadata.confirm_on_image_change = c_options->metadata.confirm_on_image_change;
581886171554 show metadata options in preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1208
diff changeset
392 options->metadata.confirm_on_dir_change = c_options->metadata.confirm_on_dir_change;
1590
32a63a57690f use "keywords" instead of "tags" in option name, it is more consistent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1567
diff changeset
393 options->metadata.keywords_case_sensitive = c_options->metadata.keywords_case_sensitive;
1567
ef3ca18df43f added an option to write image orientation to the metadata
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1548
diff changeset
394 options->metadata.write_orientation = c_options->metadata.write_orientation;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
395 options->stereo.mode = (c_options->stereo.mode & (PR_STEREO_HORIZ | PR_STEREO_VERT | PR_STEREO_FIXED | PR_STEREO_ANAGLYPH | PR_STEREO_HALF)) |
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
396 (c_options->stereo.tmp.mirror_right ? PR_STEREO_MIRROR_RIGHT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
397 (c_options->stereo.tmp.flip_right ? PR_STEREO_FLIP_RIGHT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
398 (c_options->stereo.tmp.mirror_left ? PR_STEREO_MIRROR_LEFT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
399 (c_options->stereo.tmp.flip_left ? PR_STEREO_FLIP_LEFT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
400 (c_options->stereo.tmp.swap ? PR_STEREO_SWAP : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
401 (c_options->stereo.tmp.temp_disable ? PR_STEREO_TEMP_DISABLE : 0);
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
402 options->stereo.fsmode = (c_options->stereo.fsmode & (PR_STEREO_HORIZ | PR_STEREO_VERT | PR_STEREO_FIXED | PR_STEREO_ANAGLYPH | PR_STEREO_HALF)) |
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
403 (c_options->stereo.tmp.fs_mirror_right ? PR_STEREO_MIRROR_RIGHT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
404 (c_options->stereo.tmp.fs_flip_right ? PR_STEREO_FLIP_RIGHT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
405 (c_options->stereo.tmp.fs_mirror_left ? PR_STEREO_MIRROR_LEFT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
406 (c_options->stereo.tmp.fs_flip_left ? PR_STEREO_FLIP_LEFT : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
407 (c_options->stereo.tmp.fs_swap ? PR_STEREO_SWAP : 0) |
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
408 (c_options->stereo.tmp.fs_temp_disable ? PR_STEREO_TEMP_DISABLE : 0);
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
409 options->stereo.enable_fsmode = c_options->stereo.enable_fsmode;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
410 options->stereo.fixed_w = c_options->stereo.fixed_w;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
411 options->stereo.fixed_h = c_options->stereo.fixed_h;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
412 options->stereo.fixed_x1 = c_options->stereo.fixed_x1;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
413 options->stereo.fixed_y1 = c_options->stereo.fixed_y1;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
414 options->stereo.fixed_x2 = c_options->stereo.fixed_x2;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
415 options->stereo.fixed_y2 = c_options->stereo.fixed_y2;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
416
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
417 options->info_keywords.height = c_options->info_keywords.height;
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
418 options->info_title.height = c_options->info_title.height;
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
419 options->info_comment.height = c_options->info_comment.height;
2500
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
420 options->info_rating.height = c_options->info_rating.height;
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
421
2826
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
422 options->show_predefined_keyword_tree = c_options->show_predefined_keyword_tree;
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
423
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
424 options->marks_save = c_options->marks_save;
2769
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
425 options->with_rename = c_options->with_rename;
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
426 options->collections_on_top = c_options->collections_on_top;
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
427 config_entry_to_option(help_search_engine_entry, &options->help_search_engine, NULL);
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
428
2770
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
429 options->read_metadata_in_idle = c_options->read_metadata_in_idle;
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
430
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
431 options->star_rating.star = c_options->star_rating.star;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
432 options->star_rating.rejected = c_options->star_rating.rejected;
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
433 #ifdef DEBUG
507
7408e89b601d Move debug macros from main.h to new debug.h.
Laurent Monin <geeqie@norz.org>
parents: 497
diff changeset
434 set_debug_level(debug_c);
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
435 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
436
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
437 #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
438 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
439 {
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
440 config_entry_to_option(color_profile_input_name_entry[i], &options->color_profile.input_name[i], NULL);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
441 config_entry_to_option(color_profile_input_file_entry[i], &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
442 }
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
443 config_entry_to_option(color_profile_screen_file_entry, &options->color_profile.screen_file, NULL);
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
444 options->color_profile.use_x11_screen_profile = c_options->color_profile.use_x11_screen_profile;
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
445 if (options->color_profile.render_intent != c_options->color_profile.render_intent)
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
446 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
447 options->color_profile.render_intent = c_options->color_profile.render_intent;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
448 color_man_update();
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
449 }
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
450 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
451
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
452 config_tab_keywords_save();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
453
26
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
454 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
455
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
456 if (refresh)
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 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
459 layout_refresh(NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
460 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
461
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
462 if (accel_store) gtk_tree_model_foreach(GTK_TREE_MODEL(accel_store), accel_apply_cb, NULL);
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
463
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
464 toolbar_apply();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
465 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
466
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
467 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
468 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
469 * config window main button callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
470 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
471 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
472
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
473 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
474 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
475 gtk_widget_destroy(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
476 configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
477 filter_store = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
478 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
479
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
480 static void config_window_help_cb(GtkWidget *widget, gpointer data)
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
481 {
2431
1f5389d824df Fix compile warnings
Colin Clark <cclark@mcb.net>
parents: 2429
diff changeset
482 GtkWidget *notebook = data;
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
483 gint i;
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
484
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
485 static gchar *html_section[] =
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
486 {
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
487 "GuideOptionsGeneral.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
488 "GuideOptionsImage.html",
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
489 "GuideOptionsOSD.html",
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
490 "GuideOptionsWindow.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
491 "GuideOptionsKeyboard.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
492 "GuideOptionsFiltering.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
493 "GuideOptionsMetadata.html",
2825
b29ce668abca Bug fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2824
diff changeset
494 "GuideOptionsKeywords.html",
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
495 "GuideOptionsColor.html",
2628
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
496 "GuideOptionsStereo.html",
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
497 "GuideOptionsBehavior.html",
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
498 "GuideOptionsToolbar.html"
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
499 };
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
500
2441
a2d4729a3b2d Fix GCC and Clang compile warnings.
Omari Stephens <xsdg@google.com>
parents: 2412
diff changeset
501 i = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook));
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
502 help_window_show(html_section[i]);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
503 }
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
504
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
505 static gboolean config_window_delete(GtkWidget *widget, GdkEventAny *event, gpointer data)
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 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
508 return TRUE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
509 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
510
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
511 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
512 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
513 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
514 config_window_close_cb(NULL, NULL);
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 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
518 {
2501
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
519 LayoutWindow *lw;
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
520 lw = layout_window_list->data;
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
521
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
522 config_window_apply();
2501
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
523 layout_util_sync(lw);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
524 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
525
1024
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
526 static void config_window_save_cb(GtkWidget *widget, gpointer data)
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
527 {
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
528 config_window_apply();
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
529 save_options(options);
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
530 }
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
531
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
532 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
533 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
534 * config window setup (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
535 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
536 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
537
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
538 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
539 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
540 gint *option = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
541
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
542 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
543 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
544 case 0:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
545 default:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
546 *option = GDK_INTERP_NEAREST;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
547 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
548 case 1:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
549 *option = GDK_INTERP_TILES;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
550 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
551 case 2:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
552 *option = GDK_INTERP_BILINEAR;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
553 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
554 case 3:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
555 *option = GDK_INTERP_HYPER;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
556 break;
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
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
560 static void clipboard_selection_menu_cb(GtkWidget *combo, gpointer data)
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
561 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
562 gint *option = data;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
563
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
564 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
565 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
566 case 0:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
567 default:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
568 *option = PRIMARY;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
569 break;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
570 case 1:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
571 *option = CLIPBOARD;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
572 break;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
573 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
574 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
575
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
576 static void add_quality_menu(GtkWidget *table, gint column, gint row, const gchar *text,
1188
d69b18588e19 Fix up sign-related warning.
Laurent Monin <geeqie@norz.org>
parents: 1174
diff changeset
577 guint option, guint *option_c)
9
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 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
580 gint current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
581
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
582 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
583
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
584 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
585
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
586 combo = gtk_combo_box_text_new();
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
587
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
588 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Nearest (worst, but fastest)"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
589 if (option == GDK_INTERP_NEAREST) current = 0;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
590 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Tiles"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
591 if (option == GDK_INTERP_TILES) current = 1;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
592 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Bilinear"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
593 if (option == GDK_INTERP_BILINEAR) current = 2;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
594 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Hyper (best, but slowest)"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
595 if (option == GDK_INTERP_HYPER) current = 3;
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_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
598
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
599 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
600 G_CALLBACK(quality_menu_cb), option_c);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
601
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
602 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
603 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
604 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
605 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
606
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
607 static void add_clipboard_selection_menu(GtkWidget *table, gint column, gint row, const gchar *text,
2666
4aebea1b0d5c Addl Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2665
diff changeset
608 gint option, gint *option_c)
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
609 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
610 GtkWidget *combo;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
611 gint current = 0;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
612
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
613 *option_c = option;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
614
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
615 pref_table_label(table, column, row, text, 0.0);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
616
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
617 combo = gtk_combo_box_text_new();
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
618
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
619 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("PRIMARY"));
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
620 if (option == PRIMARY) current = 0;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
621 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("CLIPBOARD"));
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
622 if (option == CLIPBOARD) current = 1;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
623
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
624 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
625
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
626 g_signal_connect(G_OBJECT(combo), "changed",
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
627 G_CALLBACK(clipboard_selection_menu_cb), option_c);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
628
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
629 gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1,
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
630 GTK_EXPAND | GTK_FILL, 0, 0, 0);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
631 gtk_widget_show(combo);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
632 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
633
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
634 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
635 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
636 gint n;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
637
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
638 n = gtk_combo_box_get_active(GTK_COMBO_BOX(combo));
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
639 if (n < 0) return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
640
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
641 if ((guint) n < sizeof(thumb_size_list) / sizeof(ThumbSize))
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
642 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
643 c_options->thumbnails.max_width = thumb_size_list[n].w;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
644 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
645 }
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
646 else
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
647 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
648 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
649 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
650 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
651 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
652
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
653 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
654 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
655 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
656 gint current;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
657 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
658
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
659 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
660 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
661
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
662 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
663
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
664 combo = gtk_combo_box_text_new();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
665
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
666 current = -1;
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
667 for (i = 0; (guint) 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
668 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
669 gint w, h;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
670 gchar *buf;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
671
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
672 w = thumb_size_list[i].w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
673 h = thumb_size_list[i].h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
674
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
675 buf = g_strdup_printf("%d x %d", w, h);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
676 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), buf);
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
677 g_free(buf);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
678
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
679 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
680 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
681
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
682 if (current == -1)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
683 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
684 gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
685
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
686 buf = g_strdup_printf("%s %d x %d", _("Custom"), options->thumbnails.max_width, options->thumbnails.max_height);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
687 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
688 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
689
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
690 current = i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
691 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
692
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
693 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
694 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
695 G_CALLBACK(thumb_size_menu_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
696
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
697 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
698 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
699 gtk_widget_show(combo);
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
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
702 static void stereo_mode_menu_cb(GtkWidget *combo, gpointer data)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
703 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
704 gint *option = data;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
705
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
706 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
707 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
708 case 0:
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
709 default:
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
710 *option = PR_STEREO_NONE;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
711 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
712 case 1:
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
713 *option = PR_STEREO_ANAGLYPH_RC;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
714 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
715 case 2:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
716 *option = PR_STEREO_ANAGLYPH_GM;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
717 break;
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
718 case 3:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
719 *option = PR_STEREO_ANAGLYPH_YB;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
720 break;
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
721 case 4:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
722 *option = PR_STEREO_ANAGLYPH_GRAY_RC;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
723 break;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
724 case 5:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
725 *option = PR_STEREO_ANAGLYPH_GRAY_GM;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
726 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
727 case 6:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
728 *option = PR_STEREO_ANAGLYPH_GRAY_YB;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
729 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
730 case 7:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
731 *option = PR_STEREO_ANAGLYPH_DB_RC;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
732 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
733 case 8:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
734 *option = PR_STEREO_ANAGLYPH_DB_GM;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
735 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
736 case 9:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
737 *option = PR_STEREO_ANAGLYPH_DB_YB;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
738 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
739 case 10:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
740 *option = PR_STEREO_HORIZ;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
741 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
742 case 11:
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
743 *option = PR_STEREO_HORIZ | PR_STEREO_HALF;
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
744 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
745 case 12:
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
746 *option = PR_STEREO_VERT;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
747 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
748 case 13:
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
749 *option = PR_STEREO_VERT | PR_STEREO_HALF;
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
750 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
751 case 14:
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
752 *option = PR_STEREO_FIXED;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
753 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
754 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
755 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
756
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
757 static void add_stereo_mode_menu(GtkWidget *table, gint column, gint row, const gchar *text,
2181
8addfcef82af Clear few more warnings, unused variables mostly.
Laurent Monin <zas@norz.org>
parents: 2169
diff changeset
758 gint option, gint *option_c, gboolean add_fixed)
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
759 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
760 GtkWidget *combo;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
761 gint current = 0;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
762
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
763 *option_c = option;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
764
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
765 pref_table_label(table, column, row, text, 0.0);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
766
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
767 combo = gtk_combo_box_text_new();
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
768
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
769 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Single image"));
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
770
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
771 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Red-Cyan"));
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
772 if (option & PR_STEREO_ANAGLYPH_RC) current = 1;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
773 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Green-Magenta"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
774 if (option & PR_STEREO_ANAGLYPH_GM) current = 2;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
775 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Yellow-Blue"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
776 if (option & PR_STEREO_ANAGLYPH_YB) current = 3;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
777 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Gray Red-Cyan"));
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
778 if (option & PR_STEREO_ANAGLYPH_GRAY_RC) current = 4;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
779 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Gray Green-Magenta"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
780 if (option & PR_STEREO_ANAGLYPH_GRAY_GM) current = 5;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
781 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Gray Yellow-Blue"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
782 if (option & PR_STEREO_ANAGLYPH_GRAY_YB) current = 6;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
783 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Dubois Red-Cyan"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
784 if (option & PR_STEREO_ANAGLYPH_DB_RC) current = 7;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
785 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Dubois Green-Magenta"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
786 if (option & PR_STEREO_ANAGLYPH_DB_GM) current = 8;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
787 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Anaglyph Dubois Yellow-Blue"));
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
788 if (option & PR_STEREO_ANAGLYPH_DB_YB) current = 9;
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
789
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
790 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Side by Side"));
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
791 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Side by Side Half size"));
2184
9cdebd070874 Trim trailing white spaces.
Laurent Monin <zas@norz.org>
parents: 2181
diff changeset
792 if (option & PR_STEREO_HORIZ)
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
793 {
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
794 current = 10;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
795 if (option & PR_STEREO_HALF) current = 11;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
796 }
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
797
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
798 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Top - Bottom"));
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
799 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Top - Bottom Half size"));
2184
9cdebd070874 Trim trailing white spaces.
Laurent Monin <zas@norz.org>
parents: 2181
diff changeset
800 if (option & PR_STEREO_VERT)
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
801 {
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
802 current = 12;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
803 if (option & PR_STEREO_HALF) current = 13;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
804 }
2185
c14a1d8e6aa4 Trim trailing white spaces on empty lines.
Laurent Monin <zas@norz.org>
parents: 2184
diff changeset
805
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
806 if (add_fixed)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
807 {
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
808 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Fixed position"));
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
809 if (option & PR_STEREO_FIXED) current = 14;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
810 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
811
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
812 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
813
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
814 g_signal_connect(G_OBJECT(combo), "changed",
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
815 G_CALLBACK(stereo_mode_menu_cb), option_c);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
816
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
817 gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1,
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
818 GTK_EXPAND | GTK_FILL, 0, 0, 0);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
819 gtk_widget_show(combo);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
820 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
821
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
822 static void video_menu_cb(GtkWidget *combo, gpointer data)
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
823 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
824 gchar **option = data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
825
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
826 EditorDescription *ed = g_list_nth_data(editor_list_get(), gtk_combo_box_get_active(GTK_COMBO_BOX(combo)));
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
827 *option = ed->key;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
828 }
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
829
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
830 static void video_menu_populate(gpointer data, gpointer user_data)
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
831 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
832 GtkWidget *combo = user_data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
833 EditorDescription *ed = data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
834
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
835 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), ed->name);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
836 }
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
837
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
838 static void add_video_menu(GtkWidget *table, gint column, gint row, const gchar *text,
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
839 gchar *option, gchar **option_c)
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
840 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
841 GtkWidget *combo;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
842 gint current;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
843 /* use lists since they are sorted */
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
844 GList *eds = editor_list_get();
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
845
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
846 *option_c = option;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
847
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
848 pref_table_label(table, column, row, text, 0.0);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
849
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
850 combo = gtk_combo_box_text_new();
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
851 g_list_foreach(eds,video_menu_populate,(gpointer)combo);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
852 current = option ? g_list_index(eds,g_hash_table_lookup(editors,option)): -1;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
853
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
854 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
855
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
856 g_signal_connect(G_OBJECT(combo), "changed",
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
857 G_CALLBACK(video_menu_cb), option_c);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
858
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
859 gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1,
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
860 GTK_EXPAND | GTK_FILL, 0, 0, 0);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
861 gtk_widget_show(combo);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
862 }
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
863
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
864 static void filter_store_populate(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
865 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
866 GList *work;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
867
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
868 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
869
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
870 gtk_list_store_clear(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
871
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
872 work = filter_get_list();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
873 while (work)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
874 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
875 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
876 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
877
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
878 fe = work->data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
879 work = work->next;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
880
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
881 gtk_list_store_append(filter_store, &iter);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
882 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
883 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
884 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
885
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
886 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
887 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
888 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
889 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
890 FilterEntry *fe = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
891 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
892 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
893
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
894 if (!new_text || strlen(new_text) < 1) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
895
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
896 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
897 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
898 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
899
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
900 g_free(fe->extensions);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
901 fe->extensions = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
902
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
903 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
904 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
905 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
906
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
907 static void filter_store_class_edit_cb(GtkCellRendererText *cell, gchar *path_str,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
908 gchar *new_text, gpointer data)
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
909 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
910 GtkWidget *model = data;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
911 FilterEntry *fe = data;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
912 GtkTreePath *tpath;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
913 GtkTreeIter iter;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
914 gint i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
915
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
916 if (!new_text || !new_text[0]) return;
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
917
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
918 tpath = gtk_tree_path_new_from_string(path_str);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
919 gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, tpath);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
920 gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, 0, &fe, -1);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
921
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
922 for (i = 0; i < FILE_FORMAT_CLASSES; i++)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
923 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
924 if (strcmp(new_text, _(format_class_list[i])) == 0)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
925 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
926 fe->file_class = i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
927 break;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
928 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
929 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
930
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
931 gtk_tree_path_free(tpath);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
932 filter_rebuild();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
933 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
934
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
935 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
936 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
937 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
938 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
939 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
940 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
941 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
942
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
943 if (!new_text || !new_text[0]) return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
944
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
945 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
946 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
947 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
948
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
949 g_free(fe->description);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
950 fe->description = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
951
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
952 gtk_tree_path_free(tpath);
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
955 static void filter_store_enable_cb(GtkCellRendererToggle *renderer,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
956 gchar *path_str, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
957 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
958 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
959 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
960 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
961 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
962
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
963 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
964 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
965 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
966
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
967 fe->enabled = !fe->enabled;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
968
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
969 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
970 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
971 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
972
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
973 static void filter_store_writable_cb(GtkCellRendererToggle *renderer,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
974 gchar *path_str, gpointer data)
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
975 {
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
976 GtkWidget *model = data;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
977 FilterEntry *fe;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
978 GtkTreePath *tpath;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
979 GtkTreeIter iter;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
980
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
981 tpath = gtk_tree_path_new_from_string(path_str);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
982 gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, tpath);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
983 gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, 0, &fe, -1);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
984
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
985 fe->writable = !fe->writable;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
986 if (fe->writable) fe->allow_sidecar = FALSE;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
987
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
988 gtk_tree_path_free(tpath);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
989 filter_rebuild();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
990 }
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
991
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
992 static void filter_store_sidecar_cb(GtkCellRendererToggle *renderer,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
993 gchar *path_str, gpointer data)
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
994 {
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
995 GtkWidget *model = data;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
996 FilterEntry *fe;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
997 GtkTreePath *tpath;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
998 GtkTreeIter iter;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
999
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1000 tpath = gtk_tree_path_new_from_string(path_str);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1001 gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, tpath);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1002 gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, 0, &fe, -1);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1003
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1004 fe->allow_sidecar = !fe->allow_sidecar;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1005 if (fe->allow_sidecar) fe->writable = FALSE;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1006
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1007 gtk_tree_path_free(tpath);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1008 filter_rebuild();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1009 }
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1010
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1011 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
1012 GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1013 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1014 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1015
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1016 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
1017
1347
84d289bde1ea Add missing space between switch and first parenthesis.
Laurent Monin <geeqie@norz.org>
parents: 1346
diff changeset
1018 switch (GPOINTER_TO_INT(data))
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1019 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1020 case FE_ENABLE:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1021 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1022 "active", fe->enabled, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1023 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1024 case FE_EXTENSION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1025 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1026 "text", fe->extensions, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1027 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1028 case FE_DESCRIPTION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1029 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1030 "text", fe->description, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1031 break;
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1032 case FE_CLASS:
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1033 g_object_set(GTK_CELL_RENDERER(cell),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1034 "text", _(format_class_list[fe->file_class]), NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1035 break;
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1036 case FE_WRITABLE:
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1037 g_object_set(GTK_CELL_RENDERER(cell),
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1038 "active", fe->writable, NULL);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1039 break;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1040 case FE_ALLOW_SIDECAR:
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1041 g_object_set(GTK_CELL_RENDERER(cell),
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1042 "active", fe->allow_sidecar, NULL);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1043 break;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1044 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1045 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1046
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1047 static gboolean filter_add_scroll(gpointer data)
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1048 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1049 GtkTreePath *path;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1050 GList *list_cells;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1051 GtkCellRenderer *cell;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1052 GtkTreeViewColumn *column;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1053 GList *list_columns;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1054 const gchar *title;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1055 guint i = 0;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1056 gint rows;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1057
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1058 rows = gtk_tree_model_iter_n_children(GTK_TREE_MODEL(filter_store), NULL);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1059 path = gtk_tree_path_new_from_indices(rows-1, -1);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1060
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1061 list_columns = gtk_tree_view_get_columns(GTK_TREE_VIEW(data));
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1062 do {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1063 column = g_list_nth(list_columns,i)->data;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1064 title = gtk_tree_view_column_get_title(GTK_TREE_VIEW_COLUMN(column));
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1065 i++;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1066 } while (strcmp(title, "Filter") !=0 );
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1067
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1068 list_cells = gtk_cell_layout_get_cells(GTK_CELL_LAYOUT(column));
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1069 cell = g_list_last(list_cells)->data;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1070
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1071 gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(data),
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1072 path, column, FALSE, 0.0, 0.0 );
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1073 gtk_tree_view_set_cursor_on_cell(GTK_TREE_VIEW(data),
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1074 path, column, cell, TRUE);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1075
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1076 gtk_tree_path_free(path);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1077 g_list_free(list_cells);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1078 g_list_free(list_columns);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1079
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1080 return(FALSE);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1081 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1082
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1083 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
1084 {
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1085 filter_add_unique("description", ".new", FORMAT_CLASS_IMAGE, TRUE, FALSE, TRUE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1086 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1087
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1088 g_idle_add((GSourceFunc)filter_add_scroll, data);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1089 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1090
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1091 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
1092 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1093 GtkWidget *filter_view = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1094 GtkTreeSelection *selection;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1095 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1096 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1097
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1098 if (!filter_store) return;
995
401cd18f8d38 Whitespaces cleanup.
Laurent Monin <geeqie@norz.org>
parents: 980
diff changeset
1099 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(filter_view));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1100 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
1101 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
1102 if (!fe) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1103
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1104 filter_remove_entry(fe);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1105 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1106 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1107 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1108
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1109 static gboolean filter_default_ok_scroll(GtkTreeView *data)
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1110 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1111 GtkTreeIter iter;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1112 GtkTreePath *path;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1113 GtkTreeViewColumn *column;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1114
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1115 gtk_tree_model_get_iter_first(GTK_TREE_MODEL(filter_store), &iter);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1116 path = gtk_tree_model_get_path(GTK_TREE_MODEL(filter_store), &iter);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1117 column = gtk_tree_view_get_column(GTK_TREE_VIEW(data),0);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1118
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1119 gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(data),
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1120 path, column,
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1121 FALSE, 0.0, 0.0);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1122
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1123 gtk_tree_path_free(path);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1124
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1125 return(FALSE);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1126 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1127
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1128 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
1129 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1130 filter_reset();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1131 filter_add_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1132 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1133 filter_store_populate();
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1134
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1135 g_idle_add((GSourceFunc)filter_default_ok_scroll, gd->data);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1136 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1137
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1138 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
1139 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1140 /* no op, only so cancel button appears */
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
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1143 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
1144 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1145 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1146
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1147 gd = generic_dialog_new(_("Reset filters"),
1174
f809d57aed0c Drop useless wmclass stuff. Gtk will take care of it and as said in the documentation using gtk_window_set_wmclass() is sort of pointless.
Laurent Monin <geeqie@norz.org>
parents: 1060
diff changeset
1148 "reset_filter", widget, TRUE,
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1149 dummy_cancel_cb, data);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1150 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Reset filters"),
2587
c6f9494f6be1 Fix #508: Copy and Move windows scale incorrectly
cclark <colin.clark@cclark.uk>
parents: 2573
diff changeset
1151 _("This will reset the file filters to the defaults.\nContinue?"), TRUE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1152 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
1153 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1154 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1155
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1156 static void filter_disable_cb(GtkWidget *widget, gpointer data)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1157 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1158 GtkWidget *frame = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1159
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1160 gtk_widget_set_sensitive(frame,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1161 !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
1162 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1163
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1164 static void safe_delete_view_cb(GtkWidget *widget, gpointer data)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1165 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1166 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
1167 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1168
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1169 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
1170 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1171 file_util_trash_clear();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1172 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1173
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1174 static void safe_delete_clear_cb(GtkWidget *widget, gpointer data)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1175 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1176 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1177 GtkWidget *entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1178 gd = generic_dialog_new(_("Clear trash"),
1174
f809d57aed0c Drop useless wmclass stuff. Gtk will take care of it and as said in the documentation using gtk_window_set_wmclass() is sort of pointless.
Laurent Monin <geeqie@norz.org>
parents: 1060
diff changeset
1179 "clear_trash", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1180 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1181 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Clear trash"),
2587
c6f9494f6be1 Fix #508: Copy and Move windows scale incorrectly
cclark <colin.clark@cclark.uk>
parents: 2573
diff changeset
1182 _("This will remove the trash contents."), FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1183 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
1184 entry = gtk_entry_new();
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
1185 gtk_widget_set_can_focus(entry, FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1186 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
1187 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
1188 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
1189 gtk_widget_show(entry);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1190 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1191 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1192
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1193 static void image_overlay_template_view_changed_cb(GtkWidget *widget, gpointer data)
218
9ec9947e7682 Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10.
Laurent Monin <geeqie@norz.org>
parents: 212
diff changeset
1194 {
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
1195 GtkWidget *pTextView;
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1196 GtkTextBuffer *pTextBuffer;
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
1197 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
1198 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
1199
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
1200 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
1201
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
1202 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
1203 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
1204 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
1205
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1206 set_image_overlay_template_string(&c_options->image_overlay.template_string,
733
3cf9cdf1ff65 Modify set_default_image_overlay_template_string() to accept the pointer to
Laurent Monin <geeqie@norz.org>
parents: 730
diff changeset
1207 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
1208 }
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
1209
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1210 static void image_overlay_default_template_ok_cb(GenericDialog *gd, gpointer data)
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1211 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1212 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
1213 GtkTextBuffer *buffer;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1214
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1215 set_default_image_overlay_template_string(&options->image_overlay.template_string);
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1216 if (!configwindow) return;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1217
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1218 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_view));
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1219 gtk_text_buffer_set_text(buffer, options->image_overlay.template_string, -1);
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1220 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1221
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1222 static void image_overlay_default_template_cb(GtkWidget *widget, gpointer data)
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1223 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1224 GenericDialog *gd;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1225
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1226 gd = generic_dialog_new(_("Reset image overlay template string"),
1174
f809d57aed0c Drop useless wmclass stuff. Gtk will take care of it and as said in the documentation using gtk_window_set_wmclass() is sort of pointless.
Laurent Monin <geeqie@norz.org>
parents: 1060
diff changeset
1227 "reset_image_overlay_template_string", widget, TRUE,
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1228 dummy_cancel_cb, data);
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1229 generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION, _("Reset image overlay template string"),
2587
c6f9494f6be1 Fix #508: Copy and Move windows scale incorrectly
cclark <colin.clark@cclark.uk>
parents: 2573
diff changeset
1230 _("This will reset the image overlay template string to the default.\nContinue?"), TRUE);
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1231 generic_dialog_add_button(gd, GTK_STOCK_OK, NULL, image_overlay_default_template_ok_cb, TRUE);
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1232 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
1233 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1234
625
96e360e5949d Add an help button to OSD info configuration in Preferences dialog.
Laurent Monin <geeqie@norz.org>
parents: 597
diff changeset
1235 static void image_overlay_help_cb(GtkWidget *widget, gpointer data)
96e360e5949d Add an help button to OSD info configuration in Preferences dialog.
Laurent Monin <geeqie@norz.org>
parents: 597
diff changeset
1236 {
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
1237 help_window_show("GuideOptionsOSD.html");
625
96e360e5949d Add an help button to OSD info configuration in Preferences dialog.
Laurent Monin <geeqie@norz.org>
parents: 597
diff changeset
1238 }
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1239
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1240 static void image_overlay_set_font_cb(GtkWidget *widget, gpointer data)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1241 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1242 #if GTK_CHECK_VERSION(3,4,0)
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1243 GtkWidget *dialog;
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1244 char *font;
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1245 PangoFontDescription *font_desc;
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1246
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1247 dialog = gtk_font_chooser_dialog_new("Image Overlay Font", GTK_WINDOW(gtk_widget_get_toplevel(widget)));
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1248 gtk_font_chooser_set_font(GTK_FONT_CHOOSER(dialog), options->image_overlay.font);
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1249
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1250 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1251 {
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1252 font_desc = gtk_font_chooser_get_font_desc(GTK_FONT_CHOOSER(dialog));
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1253 font = pango_font_description_to_string(font_desc);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1254 g_free(c_options->image_overlay.font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1255 c_options->image_overlay.font = g_strdup(font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1256 g_free(font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1257 }
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1258
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1259 gtk_widget_destroy(dialog);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1260 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1261 const char *font;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1262
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1263 font = gtk_font_button_get_font_name(GTK_FONT_BUTTON(widget));
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1264 c_options->image_overlay.font = g_strdup(font);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1265 #endif
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1266 }
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1267
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1268 static void image_overlay_set_text_colour_cb(GtkWidget *widget, gpointer data)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1269 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1270 GtkWidget *dialog;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1271 #if GTK_CHECK_VERSION(3,4,0)
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1272 GdkRGBA colour;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1273
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1274 dialog = gtk_color_chooser_dialog_new("Image Overlay Text Colour", GTK_WINDOW(gtk_widget_get_toplevel(widget)));
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1275 colour.red = options->image_overlay.text_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1276 colour.green = options->image_overlay.text_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1277 colour.blue = options->image_overlay.text_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1278 colour.alpha = options->image_overlay.text_alpha;
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1279 gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(dialog), &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1280 gtk_color_chooser_set_use_alpha(GTK_COLOR_CHOOSER(dialog), TRUE);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1281
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1282 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1283 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1284 gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(dialog), &colour);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1285 c_options->image_overlay.text_red = colour.red*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1286 c_options->image_overlay.text_green = colour.green*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1287 c_options->image_overlay.text_blue = colour.blue*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1288 c_options->image_overlay.text_alpha = colour.alpha*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1289 }
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1290 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1291 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1292 GdkColor colour;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1293 GtkColorSelection *colorsel;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1294
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1295 dialog = gtk_color_selection_dialog_new("Image Overlay Text Colour");
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1296 gtk_window_set_keep_above(GTK_WINDOW(dialog),TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1297 colour.red = options->image_overlay.text_red*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1298 colour.green = options->image_overlay.text_green*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1299 colour.blue = options->image_overlay.text_blue*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1300 colorsel = GTK_COLOR_SELECTION(gtk_color_selection_dialog_get_color_selection(GTK_COLOR_SELECTION_DIALOG(dialog)));
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1301 gtk_color_selection_set_has_opacity_control(colorsel, TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1302 gtk_color_selection_set_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1303 gtk_color_selection_set_current_alpha(colorsel, options->image_overlay.text_alpha*257);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1304
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1305 if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_OK)
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1306 {
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1307 gtk_color_selection_get_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1308 c_options->image_overlay.text_red = colour.red/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1309 c_options->image_overlay.text_green = colour.green/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1310 c_options->image_overlay.text_blue = colour.blue/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1311 c_options->image_overlay.text_alpha = gtk_color_selection_get_current_alpha(colorsel)/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1312 }
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1313 gtk_widget_destroy (dialog);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1314 #endif
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1315 }
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1316
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1317
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1318 static void image_overlay_set_background_colour_cb(GtkWidget *widget, gpointer data)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1319 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1320 GtkWidget *dialog;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1321 #if GTK_CHECK_VERSION(3,4,0)
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1322 GdkRGBA colour;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1323
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1324 dialog = gtk_color_chooser_dialog_new("Image Overlay Background Colour", GTK_WINDOW(gtk_widget_get_toplevel(widget)));
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1325 colour.red = options->image_overlay.background_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1326 colour.green = options->image_overlay.background_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1327 colour.blue = options->image_overlay.background_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1328 colour.alpha = options->image_overlay.background_alpha;
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1329 gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(dialog), &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1330 gtk_color_chooser_set_use_alpha(GTK_COLOR_CHOOSER(dialog), TRUE);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1331
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1332 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1333 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1334 gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(dialog), &colour);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1335 c_options->image_overlay.background_red = colour.red*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1336 c_options->image_overlay.background_green = colour.green*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1337 c_options->image_overlay.background_blue = colour.blue*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1338 c_options->image_overlay.background_alpha = colour.alpha*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1339 }
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1340 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1341 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1342 GdkColor colour;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1343 GtkColorSelection *colorsel;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1344
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1345 dialog = gtk_color_selection_dialog_new("Image Overlay Background Colour");
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1346 gtk_window_set_keep_above(GTK_WINDOW(dialog),TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1347 colour.red = options->image_overlay.background_red*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1348 colour.green = options->image_overlay.background_green*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1349 colour.blue = options->image_overlay.background_blue*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1350 colorsel = GTK_COLOR_SELECTION(gtk_color_selection_dialog_get_color_selection(GTK_COLOR_SELECTION_DIALOG(dialog)));
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1351 gtk_color_selection_set_has_opacity_control(colorsel, TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1352 gtk_color_selection_set_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1353 gtk_color_selection_set_current_alpha(colorsel, options->image_overlay.background_alpha*257);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1354
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1355 if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_OK)
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1356 {
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1357 gtk_color_selection_get_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1358 c_options->image_overlay.background_red = colour.red/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1359 c_options->image_overlay.background_green = colour.green/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1360 c_options->image_overlay.background_blue = colour.blue/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1361 c_options->image_overlay.background_alpha = gtk_color_selection_get_current_alpha(colorsel)/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1362 }
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1363 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1364 #endif
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1365 }
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1366
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1367 static void accel_store_populate(void)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1368 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1369 LayoutWindow *lw;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1370 GList *groups, *actions;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1371 GtkAction *action;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1372 const gchar *accel_path;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1373 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1374 GtkTreeIter iter;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1375
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1376 if (!accel_store || !layout_window_list || !layout_window_list->data) return;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1377
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1378 gtk_tree_store_clear(accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1379 lw = layout_window_list->data; /* get the actions from the first window, it should not matter, they should be the same in all windows */
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1380
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1381 g_assert(lw && lw->ui_manager);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1382 groups = gtk_ui_manager_get_action_groups(lw->ui_manager);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1383 while (groups)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1384 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1385 actions = gtk_action_group_list_actions(GTK_ACTION_GROUP(groups->data));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1386 while (actions)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1387 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1388 action = GTK_ACTION(actions->data);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1389 accel_path = gtk_action_get_accel_path(action);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1390 if (accel_path && gtk_accel_map_lookup_entry(accel_path, &key))
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1391 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1392 gchar *label, *label2, *tooltip, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1393 g_object_get(action,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1394 "tooltip", &tooltip,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1395 "label", &label,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1396 NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1397
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1398 if (pango_parse_markup(label, -1, '_', NULL, &label2, NULL, NULL) && label2)
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1399 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1400 g_free(label);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1401 label = label2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1402 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1403
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1404 accel = gtk_accelerator_name(key.accel_key, key.accel_mods);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1405
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1406 if (tooltip)
1619
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1407 {
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1408 gtk_tree_store_append(accel_store, &iter, NULL);
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1409 gtk_tree_store_set(accel_store, &iter,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1410 AE_ACTION, label,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1411 AE_KEY, accel,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1412 AE_TOOLTIP, tooltip ? tooltip : "",
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1413 AE_ACCEL, accel_path,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1414 -1);
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1415 }
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1416
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1417 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1418 g_free(label);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1419 g_free(tooltip);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1420 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1421 actions = actions->next;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1422 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1423
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1424 groups = groups->next;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1425 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1426 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1427
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1428 static void accel_store_cleared_cb(GtkCellRendererAccel *accel, gchar *path_string, gpointer user_data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1429 {
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1430
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1431 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1432
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1433 static gboolean accel_remove_key_cb(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1434 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1435 gchar *accel1 = data;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1436 gchar *accel2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1437 GtkAccelKey key1;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1438 GtkAccelKey key2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1439
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1440 gtk_tree_model_get(model, iter, AE_KEY, &accel2, -1);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1441
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1442 gtk_accelerator_parse(accel1, &key1.accel_key, &key1.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1443 gtk_accelerator_parse(accel2, &key2.accel_key, &key2.accel_mods);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1444
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1445 if (key1.accel_key == key2.accel_key && key1.accel_mods == key2.accel_mods)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1446 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1447 gtk_tree_store_set(accel_store, iter, AE_KEY, "", -1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1448 DEBUG_1("accelerator key '%s' is already used, removing.", accel1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1449 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1450
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1451 g_free(accel2);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1452
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1453 return FALSE;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1454 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1455
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1456
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1457 static void accel_store_edited_cb(GtkCellRendererAccel *accel, gchar *path_string, guint accel_key, GdkModifierType accel_mods, guint hardware_keycode, gpointer user_data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1458 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1459 GtkTreeModel *model = (GtkTreeModel *)accel_store;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1460 GtkTreeIter iter;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1461 gchar *acc;
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1462 gchar *accel_path;
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1463 GtkAccelKey old_key, key;
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1464 GtkTreePath *path = gtk_tree_path_new_from_string(path_string);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1465
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1466 gtk_tree_model_get_iter(model, &iter, path);
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1467 gtk_tree_model_get(model, &iter, AE_ACCEL, &accel_path, -1);
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1468
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1469 /* test if the accelerator can be stored without conflicts*/
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1470 gtk_accel_map_lookup_entry(accel_path, &old_key);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1471
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1472 /* change the key and read it back (change may fail on keys hardcoded in gtk)*/
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1473 gtk_accel_map_change_entry(accel_path, accel_key, accel_mods, TRUE);
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1474 gtk_accel_map_lookup_entry(accel_path, &key);
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1475
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1476 /* restore the original for now, the key will be really changed when the changes are confirmed */
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1477 gtk_accel_map_change_entry(accel_path, old_key.accel_key, old_key.accel_mods, TRUE);
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1478
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1479 acc = gtk_accelerator_name(key.accel_key, key.accel_mods);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1480 gtk_tree_model_foreach(GTK_TREE_MODEL(accel_store), accel_remove_key_cb, acc);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1481
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1482 gtk_tree_store_set(accel_store, &iter, AE_KEY, acc, -1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1483 gtk_tree_path_free(path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1484 g_free(acc);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1485 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1486
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1487 static gboolean accel_default_scroll(GtkTreeView *data)
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1488 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1489 GtkTreeIter iter;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1490 GtkTreePath *path;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1491 GtkTreeViewColumn *column;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1492
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1493 gtk_tree_model_get_iter_first(GTK_TREE_MODEL(accel_store), &iter);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1494 path = gtk_tree_model_get_path(GTK_TREE_MODEL(accel_store), &iter);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1495 column = gtk_tree_view_get_column(GTK_TREE_VIEW(data),0);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1496
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1497 gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(data),
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1498 path, column,
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1499 FALSE, 0.0, 0.0);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1500
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1501 gtk_tree_path_free(path);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1502
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1503 return(FALSE);
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1504 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1505
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1506 static void accel_default_cb(GtkWidget *widget, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1507 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1508 accel_store_populate();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1509
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1510 g_idle_add((GSourceFunc)accel_default_scroll, data);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1511 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1512
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1513 void accel_remove_selection(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1514 {
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1515 gtk_tree_store_set(accel_store, iter, AE_KEY, "", -1);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1516 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1517
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1518 void accel_reset_selection(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1519 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1520 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1521 gchar *accel_path, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1522
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1523 gtk_tree_model_get(model, iter, AE_ACCEL, &accel_path, -1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1524 gtk_accel_map_lookup_entry(accel_path, &key);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1525 accel = gtk_accelerator_name(key.accel_key, key.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1526
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1527 gtk_tree_model_foreach(GTK_TREE_MODEL(accel_store), accel_remove_key_cb, accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1528
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1529 gtk_tree_store_set(accel_store, iter, AE_KEY, accel, -1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1530 g_free(accel_path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1531 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1532 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1533
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1534 static void accel_reset_cb(GtkWidget *widget, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1535 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1536 GtkTreeSelection *selection;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1537
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1538 if (!accel_store) return;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1539 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(data));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1540 gtk_tree_selection_selected_foreach(selection, &accel_reset_selection, NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1541 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1542
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1543
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1544
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1545 static GtkWidget *scrolled_notebook_page(GtkWidget *notebook, const gchar *title)
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1546 {
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1547 GtkWidget *label;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1548 GtkWidget *vbox;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1549 GtkWidget *scrolled;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1550 GtkWidget *viewport;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1551
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1552 scrolled = gtk_scrolled_window_new(NULL, NULL);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1553 gtk_container_set_border_width(GTK_CONTAINER(scrolled), PREF_PAD_BORDER);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1554 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1555 GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1556 label = gtk_label_new(title);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1557 gtk_notebook_append_page(GTK_NOTEBOOK(notebook), scrolled, label);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1558 gtk_widget_show(scrolled);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1559
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1560 viewport = gtk_viewport_new(NULL, NULL);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1561 gtk_viewport_set_shadow_type(GTK_VIEWPORT(viewport), GTK_SHADOW_NONE);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1562 gtk_container_add(GTK_CONTAINER(scrolled), viewport);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1563 gtk_widget_show(viewport);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1564
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1565 vbox = gtk_vbox_new(FALSE, 0);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1566 gtk_container_add(GTK_CONTAINER(viewport), vbox);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1567 gtk_widget_show(vbox);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1568
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1569 return vbox;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1570 }
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1571
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1572 static void cache_standard_cb(GtkWidget *widget, gpointer data)
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1573 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1574 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1575 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1576 c_options->thumbnails.spec_standard =TRUE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1577 c_options->thumbnails.cache_into_dirs = FALSE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1578 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1579 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1580
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1581 static void cache_geeqie_cb(GtkWidget *widget, gpointer data)
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1582 {
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1583 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1584 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1585 c_options->thumbnails.spec_standard =FALSE;
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1586 c_options->thumbnails.cache_into_dirs = FALSE;
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1587 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1588 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1589
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1590 static void cache_local_cb(GtkWidget *widget, gpointer data)
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1591 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1592 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1593 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1594 c_options->thumbnails.cache_into_dirs = TRUE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1595 c_options->thumbnails.spec_standard =FALSE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1596 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1597 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1598
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1599 static void help_search_engine_entry_icon_cb(GtkEntry *entry, GtkEntryIconPosition pos,
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1600 GdkEvent *event, gpointer userdata)
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1601 {
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1602 if (pos == GTK_ENTRY_ICON_PRIMARY)
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1603 {
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1604 gtk_entry_set_text(GTK_ENTRY(userdata), HELP_SEARCH_ENGINE);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1605 }
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1606 else
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1607 {
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1608 gtk_entry_set_text(GTK_ENTRY(userdata), "");
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1609 }
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1610 }
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1611
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1612 static void star_rating_star_icon_cb(GtkEntry *entry, GtkEntryIconPosition pos,
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1613 GdkEvent *event, gpointer userdata)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1614 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1615 gchar *rating_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1616
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1617 if (pos == GTK_ENTRY_ICON_PRIMARY)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1618 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1619 rating_symbol = g_strdup_printf("U+%X", STAR_RATING_STAR);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1620 gtk_entry_set_text(GTK_ENTRY(userdata), rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1621 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1622 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1623 else
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1624 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1625 gtk_entry_set_text(GTK_ENTRY(userdata), "U+");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1626 gtk_widget_grab_focus(GTK_WIDGET(userdata));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1627 gtk_editable_select_region(GTK_EDITABLE(userdata), 2, 2);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1628 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1629 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1630
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1631 static void star_rating_rejected_icon_cb(GtkEntry *entry, GtkEntryIconPosition pos,
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1632 GdkEvent *event, gpointer userdata)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1633 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1634 gchar *rating_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1635
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1636 if (pos == GTK_ENTRY_ICON_PRIMARY)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1637 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1638 rating_symbol = g_strdup_printf("U+%X", STAR_RATING_REJECTED);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1639 gtk_entry_set_text(GTK_ENTRY(userdata), rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1640 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1641 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1642 else
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1643 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1644 gtk_entry_set_text(GTK_ENTRY(userdata), "U+");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1645 gtk_widget_grab_focus(GTK_WIDGET(userdata));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1646 gtk_editable_select_region(GTK_EDITABLE(userdata), 2, 2);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1647 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1648 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1649
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1650 static guint star_rating_symbol_test(GtkWidget *widget, gpointer data)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1651 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1652 GtkContainer *hbox = data;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1653 GString *str = g_string_new(NULL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1654 GtkEntry *hex_code_entry;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1655 gchar *hex_code_full;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1656 gchar **hex_code;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1657 GList *list;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1658 guint64 hex_value = 0;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1659
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1660 list = gtk_container_get_children(hbox);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1661
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1662 hex_code_entry = g_list_nth_data(list, 2);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1663 hex_code_full = g_strdup(gtk_entry_get_text(hex_code_entry));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1664
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1665 hex_code = g_strsplit(hex_code_full, "+", 2);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1666 if (hex_code[0] && hex_code[1])
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1667 {
2784
03dd5a7bb410 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2777
diff changeset
1668 hex_value = strtoull(hex_code[1], NULL, 16);
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1669 }
2784
03dd5a7bb410 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2777
diff changeset
1670 if (!hex_value || hex_value > 0x10FFFF)
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1671 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1672 hex_value = 0x003F; // Unicode 'Question Mark'
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1673 }
2784
03dd5a7bb410 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2777
diff changeset
1674 str = g_string_append_unichar(str, (gunichar)hex_value);
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1675 gtk_label_set_text(g_list_nth_data(list, 1), str->str);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1676
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1677 g_strfreev(hex_code);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1678 g_string_free(str, TRUE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1679 g_free(hex_code_full);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1680
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1681 return hex_value;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1682 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1683
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1684 static void star_rating_star_test_cb(GtkWidget *widget, gpointer data)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1685 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1686 guint64 star_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1687
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1688 star_symbol = star_rating_symbol_test(widget, data);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1689 c_options->star_rating.star = star_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1690 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1691
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1692 static void star_rating_rejected_test_cb(GtkWidget *widget, gpointer data)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1693 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1694 guint64 rejected_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1695
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1696 rejected_symbol = star_rating_symbol_test(widget, data);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1697 c_options->star_rating.rejected = rejected_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1698 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1699
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1700 /* general options tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1701 static void config_tab_general(GtkWidget *notebook)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1702 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1703 GtkWidget *vbox;
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1704 GtkWidget *hbox;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1705 GtkWidget *group;
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1706 GtkWidget *group_frame;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1707 GtkWidget *subgroup;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1708 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1709 GtkWidget *ct_button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1710 GtkWidget *table;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1711 GtkWidget *spin;
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1712 gint hours, minutes, remainder;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1713 gdouble seconds;
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1714 GtkWidget *star_rating_entry;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1715 GString *str;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1716 gchar *rating_symbol;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1717
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1718 vbox = scrolled_notebook_page(notebook, _("General"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1719
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1720 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
1721
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1722 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
1723 add_thumb_size_menu(table, 0, 0, _("Size:"));
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
1724 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
1725
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1726 ct_button = pref_checkbox_new_int(group, _("Cache thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
1727 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
1728
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1729 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
1730 pref_checkbox_link_sensitivity(ct_button, subgroup);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1731
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1732 c_options->thumbnails.spec_standard = options->thumbnails.spec_standard;
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1733 c_options->thumbnails.cache_into_dirs = options->thumbnails.cache_into_dirs;
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1734 group_frame = pref_frame_new(subgroup, TRUE, _("Use Geeqie thumbnail style and cache"),
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1735 GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1736 button = pref_radiobutton_new(group_frame, NULL, get_thumbnails_cache_dir(),
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1737 !options->thumbnails.spec_standard && !options->thumbnails.cache_into_dirs,
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1738 G_CALLBACK(cache_geeqie_cb), NULL);
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1739
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1740 group_frame = pref_frame_new(subgroup, TRUE,
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1741 _("Store thumbnails local to image folder (non-standard)"),
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1742 GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1743 pref_radiobutton_new(group_frame, button, "*/.thumbnails",
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1744 !options->thumbnails.spec_standard && options->thumbnails.cache_into_dirs,
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1745 G_CALLBACK(cache_local_cb), NULL);
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1746
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1747 group_frame = pref_frame_new(subgroup, TRUE,
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1748 _("Use standard thumbnail style and cache, shared with other applications"),
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1749 GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1750 pref_radiobutton_new(group_frame, button, get_thumbnails_standard_cache_dir(),
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1751 options->thumbnails.spec_standard && !options->thumbnails.cache_into_dirs,
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1752 G_CALLBACK(cache_standard_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1753
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1754 pref_checkbox_new_int(group, _("Use EXIF thumbnails when available (EXIF thumbnails may be outdated)"),
1060
54806f8e4af5 added option to use exif thumbnails
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1055
diff changeset
1755 options->thumbnails.use_exif, &c_options->thumbnails.use_exif);
54806f8e4af5 added option to use exif thumbnails
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1055
diff changeset
1756
2800
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1757 spin = pref_spin_new_int(group, _("Collection preview:"), NULL,
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1758 1, 999, 1,
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1759 options->thumbnails.collection_preview, &c_options->thumbnails.collection_preview);
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1760 gtk_widget_set_tooltip_text(spin, _("The maximum number of thumbnails shown in a Collection preview montage"));
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1761
2673
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1762 #ifdef HAVE_FFMPEGTHUMBNAILER_METADATA
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1763 pref_checkbox_new_int(group, _("Use embedded metadata in video files as thumbnails when available"),
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1764 options->thumbnails.use_ft_metadata, &c_options->thumbnails.use_ft_metadata);
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1765
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1766 // pref_checkbox_new_int(group, _("Ignore embedded metadata if size is too small"),
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1767 // options->thumbnails.use_ft_metadata_small, &c_options->thumbnails.use_ft_metadata_small);
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1768 #endif
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1769
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1770 group = pref_group_new(vbox, FALSE, _("Star Rating"), GTK_ORIENTATION_VERTICAL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1771
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1772 c_options->star_rating.star = options->star_rating.star;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1773 c_options->star_rating.rejected = options->star_rating.rejected;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1774
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1775 str = g_string_new(NULL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1776 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1777 pref_label_new(hbox, "Star character: ");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1778 str = g_string_append_unichar(str, options->star_rating.star);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1779 pref_label_new(hbox, g_strdup(str->str));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1780 rating_symbol = g_strdup_printf("U+%X", options->star_rating.star);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1781 star_rating_entry = gtk_entry_new();
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1782 gtk_entry_set_text(GTK_ENTRY(star_rating_entry), rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1783 gtk_box_pack_start(GTK_BOX(hbox), star_rating_entry, FALSE, FALSE, 0);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1784 gtk_entry_set_width_chars(GTK_ENTRY(star_rating_entry), 15);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1785 gtk_widget_show(star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1786 button = pref_button_new(NULL, NULL, _("Set"), FALSE,
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1787 G_CALLBACK(star_rating_star_test_cb), hbox);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1788 gtk_widget_set_tooltip_text(button, _("Display selected character"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1789 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1790 gtk_widget_show(button);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1791 gtk_widget_set_tooltip_text(star_rating_entry, _("Hexadecimal representation of a Unicode character. A list of all Unicode characters may be found on the Internet."));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1792 gtk_entry_set_icon_from_stock(GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1793 GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1794 gtk_entry_set_icon_tooltip_text (GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1795 GTK_ENTRY_ICON_SECONDARY, _("Clear"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1796 gtk_entry_set_icon_from_stock(GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1797 GTK_ENTRY_ICON_PRIMARY, GTK_STOCK_REVERT_TO_SAVED);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1798 gtk_entry_set_icon_tooltip_text (GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1799 GTK_ENTRY_ICON_PRIMARY, _("Default"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1800 g_signal_connect(GTK_ENTRY(star_rating_entry), "icon-press",
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1801 G_CALLBACK(star_rating_star_icon_cb),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1802 star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1803
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1804 g_string_free(str, TRUE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1805 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1806
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1807 str = g_string_new(NULL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1808 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1809 pref_label_new(hbox, "Rejected character: ");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1810 str = g_string_append_unichar(str, options->star_rating.rejected);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1811 pref_label_new(hbox, g_strdup(str->str));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1812 rating_symbol = g_strdup_printf("U+%X", options->star_rating.rejected);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1813 star_rating_entry = gtk_entry_new();
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1814 gtk_entry_set_text(GTK_ENTRY(star_rating_entry), rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1815 gtk_box_pack_start(GTK_BOX(hbox), star_rating_entry, FALSE, FALSE, 0);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1816 gtk_entry_set_width_chars(GTK_ENTRY(star_rating_entry), 15);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1817 gtk_widget_show(star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1818 button = pref_button_new(NULL, NULL, _("Set"), FALSE,
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1819 G_CALLBACK(star_rating_rejected_test_cb), hbox);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1820 gtk_widget_set_tooltip_text(button, _("Display selected character"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1821 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1822 gtk_widget_show(button);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1823 gtk_widget_set_tooltip_text(star_rating_entry, _("Hexadecimal representation of a Unicode character. A list of all Unicode characters may be found on the Internet."));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1824 gtk_entry_set_icon_from_stock(GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1825 GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1826 gtk_entry_set_icon_tooltip_text (GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1827 GTK_ENTRY_ICON_SECONDARY, _("Clear"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1828 gtk_entry_set_icon_from_stock(GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1829 GTK_ENTRY_ICON_PRIMARY, GTK_STOCK_REVERT_TO_SAVED);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1830 gtk_entry_set_icon_tooltip_text (GTK_ENTRY(star_rating_entry),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1831 GTK_ENTRY_ICON_PRIMARY, _("Default"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1832 g_signal_connect(GTK_ENTRY(star_rating_entry), "icon-press",
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1833 G_CALLBACK(star_rating_rejected_icon_cb),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1834 star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1835
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1836 g_string_free(str, TRUE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1837 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1838
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1839 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
1840
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
1841 c_options->slideshow.delay = options->slideshow.delay;
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1842 hours = options->slideshow.delay / (3600 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1843 remainder = options->slideshow.delay % (3600 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1844 minutes = remainder / (60 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1845 seconds = (gdouble)(remainder % (60 * SLIDESHOW_SUBSECOND_PRECISION)) /
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1846 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1847
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1848 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1849
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1850 spin = pref_spin_new(hbox, _("Delay between image change hrs:mins:secs.dec"), NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1851 0, 23, 1.0, 0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1852 options->slideshow.delay ? hours : 0.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1853 G_CALLBACK(slideshow_delay_hours_cb), NULL);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1854 gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(spin), GTK_UPDATE_ALWAYS);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1855 spin = pref_spin_new(hbox, ":" , NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1856 0, 59, 1.0, 0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1857 options->slideshow.delay ? minutes: 0.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1858 G_CALLBACK(slideshow_delay_minutes_cb), NULL);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1859 gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(spin), GTK_UPDATE_ALWAYS);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1860 spin = pref_spin_new(hbox, ":", NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1861 SLIDESHOW_MIN_SECONDS, 59, 1.0, 1,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1862 options->slideshow.delay ? seconds : 10.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1863 G_CALLBACK(slideshow_delay_seconds_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1864 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
1865
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
1866 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
1867 pref_checkbox_new_int(group, _("Repeat"), options->slideshow.repeat, &c_options->slideshow.repeat);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1868
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1869 group = pref_group_new(vbox, FALSE, _("Image loading and caching"), GTK_ORIENTATION_VERTICAL);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1870
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1871 pref_spin_new_int(group, _("Decoded image cache size (Mb):"), NULL,
2568
78518b422e23 Partial fix #504: Increase limit on Decoded Image Cache Size
Colin Clark <colin.clark@cclark.uk>
parents: 2566
diff changeset
1872 0, 99999, 1, options->image.image_cache_max, &c_options->image.image_cache_max);
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1873 pref_checkbox_new_int(group, _("Preload next image"),
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1874 options->image.enable_read_ahead, &c_options->image.enable_read_ahead);
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1875
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1876 pref_checkbox_new_int(group, _("Refresh on file change"),
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1877 options->update_on_time_change, &c_options->update_on_time_change);
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1878
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1879 group = pref_group_new(vbox, FALSE, _("Info sidebar heights"), GTK_ORIENTATION_VERTICAL);
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1880 pref_label_new(group, _("NOTE! Geeqie must be restarted for changes to take effect"));
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1881 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1882 pref_spin_new_int(hbox, _("Keywords:"), NULL,
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1883 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1884 options->info_keywords.height, &c_options->info_keywords.height);
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1885 pref_spin_new_int(hbox, _("Title:"), NULL,
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1886 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1887 options->info_title.height, &c_options->info_title.height);
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1888 pref_spin_new_int(hbox, _("Comment:"), NULL,
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1889 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1890 options->info_comment.height, &c_options->info_comment.height);
2500
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1891 pref_spin_new_int(hbox, _("Rating:"), NULL,
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1892 1, 9999, 1,
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1893 options->info_rating.height, &c_options->info_rating.height);
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1894
2826
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1895 group = pref_group_new(vbox, FALSE, _("Show predefined keyword tree"), GTK_ORIENTATION_VERTICAL);
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1896
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1897 pref_checkbox_new_int(group, _("Show predefined keyword tree (NOTE! Geeqie must be restarted for change to take effect)"),
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1898 options->show_predefined_keyword_tree, &c_options->show_predefined_keyword_tree);
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1899
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1900 group = pref_group_new(vbox, FALSE, _("On-line help search engine"), GTK_ORIENTATION_VERTICAL);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1901
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1902 help_search_engine_entry = gtk_entry_new();
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1903 gtk_entry_set_text(GTK_ENTRY(help_search_engine_entry), options->help_search_engine);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1904 gtk_box_pack_start(GTK_BOX(group), help_search_engine_entry, FALSE, FALSE, 0);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1905 gtk_widget_show(help_search_engine_entry);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1906
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1907 gtk_widget_set_tooltip_text(help_search_engine_entry, _("The format varies between search engines, e.g the format may be:\nhttps://www.search_engine.com/search?q=site:geeqie.org/help\nhttps://www.search_engine.com/?q=site:geeqie.org/help"));
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1908
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1909 gtk_entry_set_icon_from_stock(GTK_ENTRY(help_search_engine_entry),
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1910 GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1911 gtk_entry_set_icon_tooltip_text (GTK_ENTRY(help_search_engine_entry),
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1912 GTK_ENTRY_ICON_SECONDARY, _("Clear"));
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1913 gtk_entry_set_icon_from_stock(GTK_ENTRY(help_search_engine_entry),
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1914 GTK_ENTRY_ICON_PRIMARY, GTK_STOCK_REVERT_TO_SAVED);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1915 gtk_entry_set_icon_tooltip_text (GTK_ENTRY(help_search_engine_entry),
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1916 GTK_ENTRY_ICON_PRIMARY, _("Default"));
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1917 g_signal_connect(GTK_ENTRY(help_search_engine_entry), "icon-press",
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1918 G_CALLBACK(help_search_engine_entry_icon_cb),
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1919 help_search_engine_entry);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1920 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1921
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1922 /* image tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1923 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
1924 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1925 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1926 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1927 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1928 GtkWidget *ct_button;
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1929 GtkWidget *enlargement_button;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1930 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1931 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1932
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1933 vbox = scrolled_notebook_page(notebook, _("Image"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1934
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1935 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
1936
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1937 table = pref_table_new(group, 2, 1, FALSE, FALSE);
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1938 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
1939
2084
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1940 #ifdef HAVE_CLUTTER
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1941 pref_checkbox_new_int(group, _("Use GPU acceleration via Clutter library"),
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1942 options->image.use_clutter_renderer, &c_options->image.use_clutter_renderer);
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1943 #endif
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1944
1515
99d03a6f394f disabled 2-pass rendering also affect color correction
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1513
diff changeset
1945 pref_checkbox_new_int(group, _("Two pass rendering (apply HQ zoom and color correction in second pass)"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1946 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
1947
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1948 c_options->image.zoom_increment = options->image.zoom_increment;
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1949 spin = pref_spin_new(group, _("Zoom increment:"), NULL,
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1950 0.01, 4.0, 0.01, 2, (gdouble)options->image.zoom_increment / 100.0,
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1951 G_CALLBACK(zoom_increment_cb), NULL);
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1952 gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(spin), GTK_UPDATE_ALWAYS);
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1953
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1954 group = pref_group_new(vbox, FALSE, _("Fit image to window"), GTK_ORIENTATION_VERTICAL);
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1955
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1956 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1957 enlargement_button = pref_checkbox_new_int(hbox, _("Allow enlargement of image (max. size in %)"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1958 options->image.zoom_to_fit_allow_expand, &c_options->image.zoom_to_fit_allow_expand);
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1959 spin = pref_spin_new_int(hbox, NULL, NULL,
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1960 100, 999, 1,
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1961 options->image.max_enlargement_size, &c_options->image.max_enlargement_size);
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1962 pref_checkbox_link_sensitivity(enlargement_button, spin);
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1963 gtk_widget_set_tooltip_text(GTK_WIDGET(hbox), _("Enable this to allow Geeqie to increase the image size for images that are smaller than the current view area when the zoom is set to \"Fit image to window\". This value sets the maximum expansion permitted in percent i.e. 100% is full-size."));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1964
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
1965 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1966 ct_button = pref_checkbox_new_int(hbox, _("Virtual window size (% of actual window):"),
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1967 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
1968 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
1969 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1970 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
1971 pref_checkbox_link_sensitivity(ct_button, spin);
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1972 gtk_widget_set_tooltip_text(GTK_WIDGET(hbox), _("This value will set the virtual size of the window when \"Fit image to window\" is set. Instead of using the actual size of the window, the specified percentage of the window will be used. It allows one to keep a border around the image (values lower than 100%) or to auto zoom the image (values greater than 100%). It affects fullscreen mode too."));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1973
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1974 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
1975
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1976 pref_checkbox_new_int(group, _("Use custom border color in window mode"),
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
1977 options->image.use_custom_border_color, &c_options->image.use_custom_border_color);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1978
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1979 pref_checkbox_new_int(group, _("Use custom border color in fullscreen mode"),
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1980 options->image.use_custom_border_color_in_fullscreen, &c_options->image.use_custom_border_color_in_fullscreen);
208
d74cfaa3d146 set user-defined color as image background - patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 199
diff changeset
1981
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
1982 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
1983 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
1984
2457
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1985 c_options->image.border_color = options->image.border_color;
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1986
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1987 pref_color_button_new(group, _("Alpha channel color 1"), &options->image.alpha_color_1,
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1988 G_CALLBACK(pref_color_button_set_cb), &c_options->image.alpha_color_1);
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1989
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1990 pref_color_button_new(group, _("Alpha channel color 2"), &options->image.alpha_color_2,
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1991 G_CALLBACK(pref_color_button_set_cb), &c_options->image.alpha_color_2);
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1992
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1993 c_options->image.alpha_color_1 = options->image.alpha_color_1;
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1994 c_options->image.alpha_color_2 = options->image.alpha_color_2;
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1995
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1996 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
1997
2066
01d2c966209e exif autorotate for proofs
Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
parents: 2059
diff changeset
1998 pref_checkbox_new_int(group, _("Auto rotate proofs using Exif information"),
01d2c966209e exif autorotate for proofs
Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
parents: 2059
diff changeset
1999 options->image.exif_proof_rotate_enable, &c_options->image.exif_proof_rotate_enable);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2000 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2001
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2002 /* windows tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2003 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
2004 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2005 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2006 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2007 GtkWidget *group;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2008 GtkWidget *button;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2009 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2010 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2011
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
2012 vbox = scrolled_notebook_page(notebook, _("Windows"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2013
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2014 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
2015
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2016 ct_button = pref_checkbox_new_int(group, _("Remember window positions"),
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2017 options->save_window_positions, &c_options->save_window_positions);
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2018
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2019 button = pref_checkbox_new_int(group, _("Use saved window positions also for new windows"),
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2020 options->use_saved_window_positions_for_new_windows, &c_options->use_saved_window_positions_for_new_windows);
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2021 pref_checkbox_link_sensitivity(ct_button, button);
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2022
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2023 pref_checkbox_new_int(group, _("Remember tool state (float/hidden)"),
1436
13d61fe760fb completely separated global and layout window options
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1400
diff changeset
2024 options->tools_restore_state, &c_options->tools_restore_state);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2025
2670
ec21b78a088c Fix #543: Size of dialog windows in the GTK3 version is too small
Colin Clark <colin.clark@cclark.uk>
parents: 2666
diff changeset
2026 pref_checkbox_new_int(group, _("Remember dialog window positions"),
ec21b78a088c Fix #543: Size of dialog windows in the GTK3 version is too small
Colin Clark <colin.clark@cclark.uk>
parents: 2666
diff changeset
2027 options->save_dialog_window_positions, &c_options->save_dialog_window_positions);
ec21b78a088c Fix #543: Size of dialog windows in the GTK3 version is too small
Colin Clark <colin.clark@cclark.uk>
parents: 2666
diff changeset
2028
2740
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
2029 pref_checkbox_new_int(group, _("Show window IDs"),
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
2030 options->show_window_ids, &c_options->show_window_ids);
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
2031
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2032 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
2033
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2034 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
2035 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
2036
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2037 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
2038 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
2039 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
2040 spin = pref_spin_new_int(hbox, NULL, NULL,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2041 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
2042 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
2043 pref_checkbox_link_sensitivity(ct_button, spin);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2044
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2045 group = pref_group_new(vbox, FALSE, _("Full screen"), GTK_ORIENTATION_VERTICAL);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2046
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2047 c_options->fullscreen.screen = options->fullscreen.screen;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2048 c_options->fullscreen.above = options->fullscreen.above;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2049 hbox = fullscreen_prefs_selection_new(_("Location:"), &c_options->fullscreen.screen, &c_options->fullscreen.above);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2050 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2051 gtk_widget_show(hbox);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2052
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2053 pref_checkbox_new_int(group, _("Smooth image flip"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2054 options->fullscreen.clean_flip, &c_options->fullscreen.clean_flip);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2055 pref_checkbox_new_int(group, _("Disable screen saver"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2056 options->fullscreen.disable_saver, &c_options->fullscreen.disable_saver);
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2057 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2058
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2059 /* overlay screen display tab */
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2060 static const gchar *predefined_tags[][2] = {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2061 {"%name%", N_("Name")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2062 {"%path:60%*", N_("Path")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2063 {"%date%", N_("Date")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2064 {"%size%", N_("Size")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2065 {"%zoom%", N_("Zoom")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2066 {"%dimensions%", N_("Dimensions")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2067 {"%collection%", N_("Collection")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2068 {"%number%", N_("Collection number")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2069 {"%total%", N_("Collection total")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2070 {"%file.ctime%", N_("File ctime")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2071 {"%file.mode%", N_("File mode")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2072 {"%file.owner%", N_("File owner")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2073 {"%file.group%", N_("File group")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2074 {"%file.link%", N_("File link")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2075 {"%file.class%", N_("File class")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2076 {"%formatted.DateTime%", N_("Image date")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2077 {"%formatted.DateTimeDigitized%", N_("Date digitized")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2078 {"%formatted.ShutterSpeed%", N_("ShutterSpeed")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2079 {"%formatted.Aperture%", N_("Aperture")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2080 {"%formatted.ExposureBias%", N_("Exposure bias")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2081 {"%formatted.Resolution%", N_("Resolution")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2082 {"%formatted.Camera%", N_("Camera")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2083 {"%formatted.ShutterSpeed%", N_("Shutter speed")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2084 {"%formatted.ISOSpeedRating%", N_("ISO")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2085 {"%formatted.FocalLength%", N_("Focal length")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2086 {"%formatted.FocalLength35mmFilm%", N_("Focal len. 35mm")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2087 {"%formatted.SubjectDistance%", N_("Subject distance")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2088 {"%formatted.Flash%", N_("Flash")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2089 {"%formatted.ColorProfile%", N_("Color profile")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2090 {"%formatted.GPSPosition%", N_("Lat, Long")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2091 {"%formatted.GPSAltitude%", N_("Altitude")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2092 {"%formatted.localtime%", N_("Local time")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2093 {"%formatted.timezone%", N_("Timezone")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2094 {"%formatted.countryname%", N_("Country name")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2095 {"%formatted.countrycode%", N_("Country code")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2096 {"%formatted.star_rating%", N_("Star rating")},
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2097 {NULL, NULL}};
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2098
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2099 static GtkTargetEntry osd_drag_types[] = {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2100 { "text/plain", GTK_TARGET_SAME_APP, TARGET_TEXT_PLAIN }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2101 };
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2102
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2103 typedef struct _TagData TagData;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2104 struct _TagData
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2105 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2106 gchar *key;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2107 gchar *title;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2108 };
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2109
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2110 static void tag_button_cb(GtkWidget *widget, gpointer data)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2111 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2112 GtkTextView *image_overlay_template_view = data;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2113 GtkTextBuffer *buffer;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2114 TagData *td;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2115
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2116 buffer = gtk_text_view_get_buffer(image_overlay_template_view);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2117 td = g_object_get_data(G_OBJECT(widget), "tag_data");
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2118 gtk_text_buffer_insert_at_cursor(GTK_TEXT_BUFFER(buffer), td->key, -1);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2119
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2120 gtk_widget_grab_focus(GTK_WIDGET(image_overlay_template_view));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2121 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2122
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2123 static void osd_dnd_get_cb(GtkWidget *btn, GdkDragContext *context,
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2124 GtkSelectionData *selection_data, guint info,
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2125 guint time, gpointer data)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2126 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2127 TagData *td;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2128 GtkTextView *image_overlay_template_view = data;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2129
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2130 td = g_object_get_data(G_OBJECT(btn), "tag_data");
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2131 gtk_selection_data_set_text(selection_data, td->key, -1);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2132
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2133 gtk_widget_grab_focus(GTK_WIDGET(image_overlay_template_view));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2134 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2135
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2136 static void osd_btn_destroy_cb(GtkWidget *btn, GdkDragContext *context,
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2137 GtkSelectionData *selection_data, guint info,
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2138 guint time, gpointer data)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2139 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2140 TagData *td;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2141
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2142 td = g_object_get_data(G_OBJECT(btn), "tag_data");
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2143 g_free(td->key);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2144 g_free(td->title);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2145 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2146
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2147 static void set_osd_button(GtkWidget *widget, const gchar *key, const gchar *title,
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2148 GtkWidget *image_overlay_template_view)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2149 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2150 GtkWidget *new_button;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2151 TagData *td;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2152
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2153 new_button = pref_button_new(widget, NULL, _(title), TRUE,
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2154 G_CALLBACK(tag_button_cb), image_overlay_template_view);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2155
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2156 td = g_new0(TagData, 1);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2157 td->key = g_strdup(key);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2158 td->title = g_strdup(title);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2159
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2160 g_object_set_data(G_OBJECT(new_button), "tag_data", td);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2161
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2162 gtk_drag_source_set(new_button, GDK_BUTTON1_MASK, osd_drag_types, 1, GDK_ACTION_COPY);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2163 g_signal_connect(G_OBJECT(new_button), "drag_data_get",
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2164 G_CALLBACK(osd_dnd_get_cb), image_overlay_template_view);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2165 g_signal_connect(G_OBJECT(new_button), "destroy",
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2166 G_CALLBACK(osd_btn_destroy_cb), new_button);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2167 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2168
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2169 static void config_tab_osd(GtkWidget *notebook)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2170 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2171 GtkWidget *hbox;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2172 GtkWidget *vbox;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2173 GtkWidget *vbox_buttons;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2174 GtkWidget *group;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2175 GtkWidget *button;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2176 GtkWidget *image_overlay_template_view;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2177 GtkWidget *scrolled;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2178 GtkTextBuffer *buffer;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2179 GtkWidget *label;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2180 GtkWidget * subgroup;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2181 gint i = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2182 gint rows = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2183 gint cols = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2184
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2185 vbox = scrolled_notebook_page(notebook, _("OSD"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2186
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2187 image_overlay_template_view = gtk_text_view_new();
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2188
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2189 group = pref_group_new(vbox, FALSE, _("Overlay Screen Display"), GTK_ORIENTATION_VERTICAL);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2190
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2191 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2192
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2193 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2194 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2195
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2196 pref_label_new(hbox, _("To include predefined tags in the template, click a button or drag-and-drop"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2197
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2198 subgroup = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2199 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2200 gtk_box_pack_start(GTK_BOX(subgroup), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2201 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2202
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2203 for (cols = 0; cols < 6; cols++)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2204 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2205 vbox_buttons = gtk_vbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2206 rows = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2207
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2208 gtk_box_pack_start(GTK_BOX(hbox), vbox_buttons, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2209
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2210 while (rows < 6 && predefined_tags[i][0])
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2211 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2212 set_osd_button(vbox_buttons, predefined_tags[i][0], predefined_tags[i][1], image_overlay_template_view);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2213 i = i + 1;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2214 rows++;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2215 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2216 gtk_widget_show(vbox_buttons);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2217 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2218
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2219 pref_line(group, PREF_PAD_GAP);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2220
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2221 pref_label_new(group, _("Image overlay template"));
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2222
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2223 scrolled = gtk_scrolled_window_new(NULL, NULL);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2224 gtk_widget_set_size_request(scrolled, 200, 150);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2225 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled), GTK_SHADOW_IN);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2226 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2227 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2228 gtk_box_pack_start(GTK_BOX(group), scrolled, TRUE, TRUE, 5);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2229 gtk_widget_show(scrolled);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2230
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2231 gtk_widget_set_tooltip_markup(image_overlay_template_view,
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2232 _("Extensive formatting options are shown in the Help file"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2233
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2234 gtk_container_add(GTK_CONTAINER(scrolled), image_overlay_template_view);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2235 gtk_widget_show(image_overlay_template_view);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2236
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2237 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2238
2337
7ff7000c458c Image overlay configurable items
Colin Clark <cclark@mcb.net>
parents: 2335
diff changeset
2239 #if GTK_CHECK_VERSION(3,4,0)
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
2240 button = pref_button_new(NULL, GTK_STOCK_SELECT_FONT, _("Font"), FALSE,
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
2241 G_CALLBACK(image_overlay_set_font_cb), notebook);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2242 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2243 button = gtk_font_button_new();
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2244 gtk_font_button_set_title(GTK_FONT_BUTTON(button), "Image Overlay Font");
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2245 gtk_font_button_set_font_name(GTK_FONT_BUTTON(button), options->image_overlay.font);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2246 g_signal_connect(G_OBJECT(button), "font-set",
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2247 G_CALLBACK(image_overlay_set_font_cb),NULL);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2248 #endif
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2249 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
2250 gtk_widget_show(button);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
2251
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2252 button = pref_button_new(NULL, GTK_STOCK_COLOR_PICKER, _("Text"), FALSE,
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2253 G_CALLBACK(image_overlay_set_text_colour_cb), NULL);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2254 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2255 gtk_widget_show(button);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2256
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2257 button = pref_button_new(NULL, GTK_STOCK_COLOR_PICKER, _("Background"), FALSE,
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2258 G_CALLBACK(image_overlay_set_background_colour_cb), NULL);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2259 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2260 gtk_widget_show(button);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2261 image_overlay_set_text_colours();
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2262
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2263 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2264 G_CALLBACK(image_overlay_default_template_cb), image_overlay_template_view);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2265 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2266 gtk_widget_show(button);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2267
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2268 button = pref_button_new(NULL, GTK_STOCK_HELP, NULL, FALSE,
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2269 G_CALLBACK(image_overlay_help_cb), NULL);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2270 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2271 gtk_widget_show(button);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2272
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2273 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(image_overlay_template_view));
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2274 if (options->image_overlay.template_string) gtk_text_buffer_set_text(buffer, options->image_overlay.template_string, -1);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2275 g_signal_connect(G_OBJECT(buffer), "changed",
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2276 G_CALLBACK(image_overlay_template_view_changed_cb), image_overlay_template_view);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2277
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2278 pref_line(group, PREF_PAD_GAP);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2279
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2280 group = pref_group_new(vbox, FALSE, _("Exif, XMP or IPTC tags"), GTK_ORIENTATION_VERTICAL);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2281 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2282 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2283 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2284 label = gtk_label_new(_("%Exif.Image.Orientation%"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2285 gtk_box_pack_start(GTK_BOX(hbox),label, FALSE,FALSE,0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2286 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2287 pref_spacer(group,TRUE);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2288
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2289 group = pref_group_new(vbox, FALSE, _("Field separators"), GTK_ORIENTATION_VERTICAL);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2290 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2291 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2292 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2293 label = gtk_label_new(_("Separator shown only if both fields are non-null:\n%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2294 gtk_box_pack_start(GTK_BOX(hbox),label, FALSE,FALSE,0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2295 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2296 pref_spacer(group,TRUE);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2297
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2298 group = pref_group_new(vbox, FALSE, _("Field maximum length"), GTK_ORIENTATION_VERTICAL);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2299 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2300 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2301 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2302 label = gtk_label_new(_("%path:39%"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2303 gtk_box_pack_start(GTK_BOX(hbox),label, FALSE,FALSE,0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2304 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2305 pref_spacer(group,TRUE);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2306
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2307 group = pref_group_new(vbox, FALSE, _("Pre- and post- text"), GTK_ORIENTATION_VERTICAL);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2308 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2309 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2310 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2311 label = gtk_label_new(_("Text shown only if the field is non-null:\n%formatted.Aperture:F no. * setting%\n %formatted.Aperture:10:F no. * setting%"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2312 gtk_box_pack_start(GTK_BOX(hbox),label, FALSE,FALSE,0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2313 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2314 pref_spacer(group,TRUE);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2315
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2316 group = pref_group_new(vbox, FALSE, _("Pango markup"), GTK_ORIENTATION_VERTICAL);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2317 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2318 gtk_box_pack_start(GTK_BOX(group), hbox, FALSE, FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2319 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2320 label = gtk_label_new(_("<b>bold</b>\n<u>underline</u>\n<i>italic</i>\n<s>strikethrough</s>"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2321 gtk_box_pack_start(GTK_BOX(hbox),label, FALSE,FALSE,0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2322 gtk_widget_show(label);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2323 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2324
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2325 static GtkTreeModel *create_class_model(void)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2326 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2327 GtkListStore *model;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2328 GtkTreeIter iter;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2329 gint i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2330
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2331 /* create list store */
1346
b3378273091e No space between function name and first parenthesis, it eases greping (see CODING).
Laurent Monin <geeqie@norz.org>
parents: 1336
diff changeset
2332 model = gtk_list_store_new(1, G_TYPE_STRING);
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2333 for (i = 0; i < FILE_FORMAT_CLASSES; i++)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2334 {
1346
b3378273091e No space between function name and first parenthesis, it eases greping (see CODING).
Laurent Monin <geeqie@norz.org>
parents: 1336
diff changeset
2335 gtk_list_store_append(model, &iter);
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2336 gtk_list_store_set(model, &iter, 0, _(format_class_list[i]), -1);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2337 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2338 return GTK_TREE_MODEL (model);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2339 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2340
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2341
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2342 /* filtering tab */
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
2343 static void config_tab_files(GtkWidget *notebook)
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2344 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2345 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2346 GtkWidget *frame;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2347 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2348 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2349 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2350 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2351 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2352 GtkWidget *filter_view;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2353 GtkCellRenderer *renderer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2354 GtkTreeSelection *selection;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2355 GtkTreeViewColumn *column;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2356
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
2357 vbox = scrolled_notebook_page(notebook, _("Files"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2358
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2359 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
2360
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
2361 pref_checkbox_new_int(group, _("Show hidden files or folders"),
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
2362 options->file_filter.show_hidden_files, &c_options->file_filter.show_hidden_files);
2265
15d51cf8ff3d Allow to choose to show parent folder
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2255
diff changeset
2363 pref_checkbox_new_int(group, _("Show parent folder (..)"),
15d51cf8ff3d Allow to choose to show parent folder
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2255
diff changeset
2364 options->file_filter.show_parent_directory, &c_options->file_filter.show_parent_directory);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2365 pref_checkbox_new_int(group, _("Case sensitive sort"),
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
2366 options->file_sort.case_sensitive, &c_options->file_sort.case_sensitive);
2406
16fcfac12c77 Fix #417: Natural sort order
Colin Clark <cclark@mcb.net>
parents: 2386
diff changeset
2367 pref_checkbox_new_int(group, _("Natural sort order"),
16fcfac12c77 Fix #417: Natural sort order
Colin Clark <cclark@mcb.net>
parents: 2386
diff changeset
2368 options->file_sort.natural, &c_options->file_sort.natural);
2301
dec8d9db5770 Fix #333 Renaming file extensions
Colin Clark <cclark@mcb.net>
parents: 2265
diff changeset
2369 pref_checkbox_new_int(group, _("Disable file extension checks"),
dec8d9db5770 Fix #333 Renaming file extensions
Colin Clark <cclark@mcb.net>
parents: 2265
diff changeset
2370 options->file_filter.disable_file_extension_checks, &c_options->file_filter.disable_file_extension_checks);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2371
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2372 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
2373 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
2374
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2375
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2376 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
2377
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2378 sidecar_ext_entry = gtk_entry_new();
1229
2f11fec715ca sidecar files grouping was made case-insensitive
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1216
diff changeset
2379 gtk_entry_set_text(GTK_ENTRY(sidecar_ext_entry), options->sidecar.ext);
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2380 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
2381 gtk_widget_show(sidecar_ext_entry);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2382
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2383 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
2384
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2385 frame = pref_group_parent(group);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2386 g_signal_connect(G_OBJECT(ct_button), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2387 G_CALLBACK(filter_disable_cb), frame);
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
2388 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
2389
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2390 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2391 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled), GTK_SHADOW_IN);
513
6743a5928e09 Remove whitespace between function name and first parenthesis for the sake of consistency. (pass 2)
Laurent Monin <geeqie@norz.org>
parents: 512
diff changeset
2392 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2393 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
2394 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2395
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2396 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
2397 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
2398 g_object_unref(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2399 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
2400 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
2401
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2402 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
2403
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2404 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2405 gtk_tree_view_column_set_title(column, _("Filter"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2406 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2407
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2408 renderer = gtk_cell_renderer_toggle_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2409 g_signal_connect(G_OBJECT(renderer), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2410 G_CALLBACK(filter_store_enable_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2411 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
2412 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
2413 GINT_TO_POINTER(FE_ENABLE), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2414
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2415 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2416 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2417 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
2418 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
2419 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
2420 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
2421 GINT_TO_POINTER(FE_EXTENSION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2422 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
2423
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2424 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2425 gtk_tree_view_column_set_title(column, _("Description"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2426 gtk_tree_view_column_set_resizable(column, TRUE);
2056
f59b27312a31 Set fixed (but resizeable) width for Description column in Preferences > Files table
Laurent Monin <geeqie@norz.org>
parents: 2052
diff changeset
2427 gtk_tree_view_column_set_fixed_width(column, 200);
f59b27312a31 Set fixed (but resizeable) width for Description column in Preferences > Files table
Laurent Monin <geeqie@norz.org>
parents: 2052
diff changeset
2428 gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_FIXED);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2429
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2430 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2431 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2432 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
2433 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
2434 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
2435 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
2436 GINT_TO_POINTER(FE_DESCRIPTION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2437 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
2438
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2439 column = gtk_tree_view_column_new();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2440 gtk_tree_view_column_set_title(column, _("Class"));
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2441 gtk_tree_view_column_set_resizable(column, TRUE);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2442 renderer = gtk_cell_renderer_combo_new();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2443 g_object_set(G_OBJECT(renderer), "editable", (gboolean)TRUE,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2444 "model", create_class_model(),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2445 "text-column", 0,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2446 "has-entry", FALSE,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2447 NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2448
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2449 g_signal_connect(G_OBJECT(renderer), "edited",
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2450 G_CALLBACK(filter_store_class_edit_cb), filter_store);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2451 gtk_tree_view_column_pack_start(column, renderer, TRUE);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2452 gtk_tree_view_column_set_cell_data_func(column, renderer, filter_set_func,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2453 GINT_TO_POINTER(FE_CLASS), NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2454 gtk_tree_view_append_column(GTK_TREE_VIEW(filter_view), column);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2455
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2456 column = gtk_tree_view_column_new();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2457 gtk_tree_view_column_set_title(column, _("Writable"));
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2458 gtk_tree_view_column_set_resizable(column, FALSE);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2459 renderer = gtk_cell_renderer_toggle_new();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2460 g_signal_connect(G_OBJECT(renderer), "toggled",
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2461 G_CALLBACK(filter_store_writable_cb), filter_store);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2462 gtk_tree_view_column_pack_start(column, renderer, FALSE);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2463 gtk_tree_view_column_set_cell_data_func(column, renderer, filter_set_func,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2464 GINT_TO_POINTER(FE_WRITABLE), NULL);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2465 gtk_tree_view_append_column(GTK_TREE_VIEW(filter_view), column);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2466
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2467 column = gtk_tree_view_column_new();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2468 gtk_tree_view_column_set_title(column, _("Sidecar is allowed"));
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2469 gtk_tree_view_column_set_resizable(column, FALSE);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2470 renderer = gtk_cell_renderer_toggle_new();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2471 g_signal_connect(G_OBJECT(renderer), "toggled",
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2472 G_CALLBACK(filter_store_sidecar_cb), filter_store);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2473 gtk_tree_view_column_pack_start(column, renderer, FALSE);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2474 gtk_tree_view_column_set_cell_data_func(column, renderer, filter_set_func,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2475 GINT_TO_POINTER(FE_ALLOW_SIDECAR), NULL);
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2476 gtk_tree_view_append_column(GTK_TREE_VIEW(filter_view), column);
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2477
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2478
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2479 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2480 gtk_container_add(GTK_CONTAINER(scrolled), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2481 gtk_widget_show(filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2482
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2483 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
2484
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2485 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
2486 G_CALLBACK(filter_default_cb), filter_view);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2487 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
2488 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2489
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2490 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
2491 G_CALLBACK(filter_remove_cb), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2492 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
2493 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2494
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2495 button = pref_button_new(NULL, GTK_STOCK_ADD, NULL, FALSE,
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
2496 G_CALLBACK(filter_add_cb), filter_view);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2497 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
2498 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
2499 }
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2500
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2501 /* metadata tab */
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2502 static void config_tab_metadata(GtkWidget *notebook)
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2503 {
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2504 GtkWidget *vbox;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2505 GtkWidget *hbox;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2506 GtkWidget *group;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2507 GtkWidget *ct_button;
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2508 GtkWidget *label;
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2509 gchar *text;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2511 vbox = scrolled_notebook_page(notebook, _("Metadata"));
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2512
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2513
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2514 group = pref_group_new(vbox, FALSE, _("Metadata writing process"), GTK_ORIENTATION_VERTICAL);
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2515 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2516 label = pref_label_new(group, _("Warning: Geeqie is built without Exiv2. Some options are disabled."));
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2517 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2518 label = pref_label_new(group, _("Metadata are written in the following order. The process ends after first success."));
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2519 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2520
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
2521 ct_button = pref_checkbox_new_int(group, _("1) Save metadata in image files, or sidecar files, according to the XMP standard"),
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2522 options->metadata.save_in_image_file, &c_options->metadata.save_in_image_file);
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2523 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2524 gtk_widget_set_sensitive(ct_button, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2525 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2526
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2527 pref_checkbox_new_int(group, _("2) Save metadata in '.metadata' folder, local to image folder (non-standard)"),
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2528 options->metadata.enable_metadata_dirs, &c_options->metadata.enable_metadata_dirs);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2529
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2530 text = g_strdup_printf(_("3) Save metadata in Geeqie private directory '%s'"), get_metadata_cache_dir());
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2531 label = pref_label_new(group, text);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2532 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
2057
9d8b56fde03c Align "3) Save metadata in Geeqie private directory" with previous entries.
Laurent Monin <geeqie@norz.org>
parents: 2056
diff changeset
2533 gtk_misc_set_padding(GTK_MISC(label), 22, 0);
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2534 g_free(text);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2535
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2536 group = pref_group_new(vbox, FALSE, _("Step 1: Write to image files"), GTK_ORIENTATION_VERTICAL);
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2537 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2538 gtk_widget_set_sensitive(group, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2539 #endif
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2540
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2541 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_SPACE);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2542 pref_checkbox_link_sensitivity(ct_button, hbox);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2543
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2544 pref_checkbox_new_int(hbox, _("Store metadata also in legacy IPTC tags (converted according to IPTC4XMP standard)"),
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2545 options->metadata.save_legacy_IPTC, &c_options->metadata.save_legacy_IPTC);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2546
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2547 pref_checkbox_new_int(hbox, _("Warn if the image files are unwritable"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2548 options->metadata.warn_on_write_problems, &c_options->metadata.warn_on_write_problems);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2549
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2550 pref_checkbox_new_int(hbox, _("Ask before writing to image files"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2551 options->metadata.confirm_write, &c_options->metadata.confirm_write);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2552
2454
93d1c77a312b Fix #147: Alternative format for sidecar extension
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2444
diff changeset
2553 pref_checkbox_new_int(hbox, _("Create sidecar files named image.ext.xmp (as opposed to image.xmp)"),
93d1c77a312b Fix #147: Alternative format for sidecar extension
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2444
diff changeset
2554 options->metadata.sidecar_extended_name, &c_options->metadata.sidecar_extended_name);
93d1c77a312b Fix #147: Alternative format for sidecar extension
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2444
diff changeset
2555
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2556 group = pref_group_new(vbox, FALSE, _("Step 2 and 3: write to Geeqie private files"), GTK_ORIENTATION_VERTICAL);
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2557 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2558 gtk_widget_set_sensitive(group, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2559 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2560
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2561 pref_checkbox_new_int(group, _("Use GQview legacy metadata format (supports only keywords and comments) instead of XMP"),
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2562 options->metadata.save_legacy_format, &c_options->metadata.save_legacy_format);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2563
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2564
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2565 group = pref_group_new(vbox, FALSE, _("Miscellaneous"), GTK_ORIENTATION_VERTICAL);
1663
c39c4ee5d94c improved description string
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1644
diff changeset
2566 pref_checkbox_new_int(group, _("Write the same description tags (keywords, comment, etc.) to all grouped sidecars"),
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2567 options->metadata.sync_grouped_files, &c_options->metadata.sync_grouped_files);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2568
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2569 pref_checkbox_new_int(group, _("Allow keywords to differ only in case"),
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2570 options->metadata.keywords_case_sensitive, &c_options->metadata.keywords_case_sensitive);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2571
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2572 ct_button = pref_checkbox_new_int(group, _("Write altered image orientation to the metadata"),
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2573 options->metadata.write_orientation, &c_options->metadata.write_orientation);
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2574 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2575 gtk_widget_set_sensitive(ct_button, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2576 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2577
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2578 group = pref_group_new(vbox, FALSE, _("Auto-save options"), GTK_ORIENTATION_VERTICAL);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2579
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2580 ct_button = pref_checkbox_new_int(group, _("Write metadata after timeout"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2581 options->metadata.confirm_after_timeout, &c_options->metadata.confirm_after_timeout);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2582
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2583 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2584 pref_checkbox_link_sensitivity(ct_button, hbox);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2585
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2586 pref_spin_new_int(hbox, _("Timeout (seconds):"), NULL, 0, 900, 1,
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2587 options->metadata.confirm_timeout, &c_options->metadata.confirm_timeout);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2588
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2589 pref_checkbox_new_int(group, _("Write metadata on image change"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2590 options->metadata.confirm_on_image_change, &c_options->metadata.confirm_on_image_change);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2591
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2592 pref_checkbox_new_int(group, _("Write metadata on directory change"),
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2593 options->metadata.confirm_on_dir_change, &c_options->metadata.confirm_on_dir_change);
2770
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2594
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2595 group = pref_group_new(vbox, FALSE, _("Pre-load metadata"), GTK_ORIENTATION_VERTICAL);
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2596
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2597 ct_button = pref_checkbox_new_int(group, _("Read metadata in background"),
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2598 options->read_metadata_in_idle, &c_options->read_metadata_in_idle);
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2599 gtk_widget_set_tooltip_text(ct_button,"On folder change, read DateTimeOriginal, DateTimeDigitized and Star Rating in the idle loop.\nIf this is not selected, initial loading of the folder will be faster but sorting on these items will be slower");
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2600 }
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2601
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2602 /* keywords tab */
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2603
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2604 typedef struct _KeywordFindData KeywordFindData;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2605 struct _KeywordFindData
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2606 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2607 GenericDialog *gd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2608
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2609 GList *list;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2610 GList *list_dir;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2611
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2612 GtkWidget *button_close;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2613 GtkWidget *button_stop;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2614 GtkWidget *button_start;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2615 GtkWidget *progress;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2616 GtkWidget *spinner;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2617
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2618 GtkWidget *group;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2619 GtkWidget *entry;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2620
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2621 gboolean recurse;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2622
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2623 guint idle_id; /* event source id */
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2624 };
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2625
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2626 #define KEYWORD_DIALOG_WIDTH 400
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2627
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2628 static void keywords_find_folder(KeywordFindData *kfd, FileData *dir_fd)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2629 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2630 GList *list_d = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2631 GList *list_f = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2632
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2633 if (kfd->recurse)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2634 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2635 filelist_read(dir_fd, &list_f, &list_d);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2636 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2637 else
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2638 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2639 filelist_read(dir_fd, &list_f, NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2640 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2641
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2642 list_f = filelist_filter(list_f, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2643 list_d = filelist_filter(list_d, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2644
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2645 kfd->list = g_list_concat(list_f, kfd->list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2646 kfd->list_dir = g_list_concat(list_d, kfd->list_dir);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2647 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2648
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2649 static void keywords_find_reset(KeywordFindData *kfd)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2650 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2651 filelist_free(kfd->list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2652 kfd->list = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2653
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2654 filelist_free(kfd->list_dir);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2655 kfd->list_dir = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2656 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2657
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2658 static void keywords_find_close_cb(GenericDialog *fd, gpointer data)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2659 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2660 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2661
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2662 if (!gtk_widget_get_sensitive(kfd->button_close)) return;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2663
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2664 keywords_find_reset(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2665 generic_dialog_close(kfd->gd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2666 g_free(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2667 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2668
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2669 static void keywords_find_finish(KeywordFindData *kfd)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2670 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2671 keywords_find_reset(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2672
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2673 gtk_entry_set_text(GTK_ENTRY(kfd->progress), _("done"));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2674 spinner_set_interval(kfd->spinner, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2675
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2676 gtk_widget_set_sensitive(kfd->group, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2677 gtk_widget_set_sensitive(kfd->button_start, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2678 gtk_widget_set_sensitive(kfd->button_stop, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2679 gtk_widget_set_sensitive(kfd->button_close, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2680 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2681
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2682 static void keywords_find_stop_cb(GenericDialog *fd, gpointer data)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2683 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2684 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2685
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2686 g_idle_remove_by_data(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2687
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2688 keywords_find_finish(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2689 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2690
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2691 static gboolean keywords_find_file(gpointer data)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2692 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2693 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2694 GtkTextIter iter;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2695 GtkTextBuffer *buffer;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2696 gchar *tmp;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2697 GList *keywords;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2698
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2699 if (kfd->list)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2700 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2701 FileData *fd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2702
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2703 fd = kfd->list->data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2704 kfd->list = g_list_remove(kfd->list, fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2705
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2706 keywords = metadata_read_list(fd, KEYWORD_KEY, METADATA_PLAIN);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2707 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(keyword_text));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2708
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2709 while (keywords)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2710 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2711 gtk_text_buffer_get_end_iter(buffer, &iter);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2712 tmp = g_strconcat(keywords->data, "\n", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2713 gtk_text_buffer_insert(buffer, &iter, tmp, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2714 g_free(tmp);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2715 keywords = keywords->next;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2716 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2717
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2718 gtk_entry_set_text(GTK_ENTRY(kfd->progress), fd->path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2719 file_data_unref(fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2720 string_list_free(keywords);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2721
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2722 return (TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2723 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2724 else if (kfd->list_dir)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2725 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2726 FileData *fd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2727
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2728 fd = kfd->list_dir->data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2729 kfd->list_dir = g_list_remove(kfd->list_dir, fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2730
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2731 keywords_find_folder(kfd, fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2732
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2733 file_data_unref(fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2734
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2735 return TRUE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2736 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2737
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2738 keywords_find_finish(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2739
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2740 return FALSE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2741 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2742
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2743 static void keywords_find_start_cb(GenericDialog *fd, gpointer data)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2744 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2745 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2746 gchar *path;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2747
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2748 if (kfd->list || !gtk_widget_get_sensitive(kfd->button_start)) return;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2749
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2750 path = remove_trailing_slash((gtk_entry_get_text(GTK_ENTRY(kfd->entry))));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2751 parse_out_relatives(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2752
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2753 if (!isdir(path))
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2754 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2755 warning_dialog(_("Invalid folder"),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2756 _("The specified folder can not be found."),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2757 GTK_STOCK_DIALOG_WARNING, kfd->gd->dialog);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2758 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2759 else
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2760 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2761 FileData *dir_fd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2762
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2763 gtk_widget_set_sensitive(kfd->group, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2764 gtk_widget_set_sensitive(kfd->button_start, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2765 gtk_widget_set_sensitive(kfd->button_stop, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2766 gtk_widget_set_sensitive(kfd->button_close, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2767 spinner_set_interval(kfd->spinner, SPINNER_SPEED);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2768
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2769 dir_fd = file_data_new_dir(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2770 keywords_find_folder(kfd, dir_fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2771 file_data_unref(dir_fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2772 kfd->idle_id = g_idle_add(keywords_find_file, kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2773 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2774
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2775 g_free(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2776 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2777
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2778 static void keywords_find_dialog(GtkWidget *widget, const gchar *path)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2779 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2780 KeywordFindData *kfd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2781 GtkWidget *hbox;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2782 GtkWidget *label;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2783
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2784 kfd = g_new0(KeywordFindData, 1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2785
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2786 kfd->gd = generic_dialog_new(_("Search for keywords"),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2787 "search_for_keywords",
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2788 widget, FALSE,
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2789 NULL, kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2790 gtk_window_set_default_size(GTK_WINDOW(kfd->gd->dialog), KEYWORD_DIALOG_WIDTH, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2791 kfd->gd->cancel_cb = keywords_find_close_cb;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2792 kfd->button_close = generic_dialog_add_button(kfd->gd, GTK_STOCK_CLOSE, NULL,
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2793 keywords_find_close_cb, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2794 kfd->button_start = generic_dialog_add_button(kfd->gd, GTK_STOCK_OK, _("S_tart"),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2795 keywords_find_start_cb, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2796 kfd->button_stop = generic_dialog_add_button(kfd->gd, GTK_STOCK_STOP, NULL,
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2797 keywords_find_stop_cb, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2798 gtk_widget_set_sensitive(kfd->button_stop, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2799
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2800 generic_dialog_add_message(kfd->gd, NULL, _("Search for keywords"), NULL, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2801
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2802 hbox = pref_box_new(kfd->gd->vbox, FALSE, GTK_ORIENTATION_HORIZONTAL, 0);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2803 pref_spacer(hbox, PREF_PAD_INDENT);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2804 kfd->group = pref_box_new(hbox, TRUE, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2805
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2806 hbox = pref_box_new(kfd->group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2807 pref_label_new(hbox, _("Folder:"));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2808
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2809 label = tab_completion_new(&kfd->entry, path, NULL, NULL, NULL, NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2810 tab_completion_add_select_button(kfd->entry,_("Select folder") , TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2811 gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2812 gtk_widget_show(label);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2813
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2814 pref_checkbox_new_int(kfd->group, _("Include subfolders"), FALSE, &kfd->recurse);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2815
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2816 pref_line(kfd->gd->vbox, PREF_PAD_SPACE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2817 hbox = pref_box_new(kfd->gd->vbox, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2818
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2819 kfd->progress = gtk_entry_new();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2820 gtk_widget_set_can_focus(kfd->progress, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2821 gtk_editable_set_editable(GTK_EDITABLE(kfd->progress), FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2822 gtk_entry_set_text(GTK_ENTRY(kfd->progress), _("click start to begin"));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2823 gtk_box_pack_start(GTK_BOX(hbox), kfd->progress, TRUE, TRUE, 0);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2824 gtk_widget_show(kfd->progress);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2825
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2826 kfd->spinner = spinner_new(NULL, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2827 gtk_box_pack_start(GTK_BOX(hbox), kfd->spinner, FALSE, FALSE, 0);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2828 gtk_widget_show(kfd->spinner);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2829
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2830 kfd->list = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2831
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2832 gtk_widget_show(kfd->gd->dialog);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2833 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2834
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2835 static void keywords_find_cb(GtkWidget *widget, gpointer data)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2836 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2837 const gchar *path = layout_get_path(NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2838
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2839 if (!path || !*path) path = homedir();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2840 keywords_find_dialog(widget, path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2841 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2842
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2843 static void config_tab_keywords_save()
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2844 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2845 GtkTextIter start, end;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2846 GtkTextBuffer *buffer;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2847 GList *kw_list = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2848 GList *work;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2849 gchar *buffer_text;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2850 gchar *kw_split;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2851 gboolean found;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2852
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2853 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(keyword_text));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2854 gtk_text_buffer_get_bounds(buffer, &start, &end);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2855
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2856 buffer_text = gtk_text_buffer_get_text(buffer, &start, &end, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2857
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2858 kw_split = strtok(buffer_text, "\n");
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2859 while (kw_split != NULL)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2860 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2861 work = kw_list;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2862 found = FALSE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2863 while (work)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2864 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2865 if (g_strcmp0(work->data, kw_split) == 0)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2866 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2867 found = TRUE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2868 break;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2869 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2870 work = work->next;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2871 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2872 if (!found)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2873 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2874 kw_list = g_list_append(kw_list, g_strdup(kw_split));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2875 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2876 kw_split = strtok(NULL, "\n");
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2877 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2878
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2879 keyword_list_set(kw_list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2880
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2881 string_list_free(kw_list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2882 g_free(buffer_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2883 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2884
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2885 static void config_tab_keywords(GtkWidget *notebook)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2886 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2887 GtkWidget *hbox;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2888 GtkWidget *vbox;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2889 GtkWidget *group;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2890 GtkWidget *button;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2891 GtkWidget *scrolled;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2892 GtkTextIter iter;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2893 GtkTextBuffer *buffer;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2894 gchar *tmp;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2895
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2896 vbox = scrolled_notebook_page(notebook, _("Keywords"));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2897
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2898 group = pref_group_new(vbox, TRUE, _("Edit keywords autocompletion list"), GTK_ORIENTATION_VERTICAL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2899
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2900 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2901
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2902 button = pref_button_new(hbox, GTK_STOCK_EXECUTE, _("Search"), FALSE,
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2903 G_CALLBACK(keywords_find_cb), keyword_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2904 gtk_widget_set_tooltip_text(button, "Search for existing keywords");
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2905
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2906
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2907 keyword_text = gtk_text_view_new();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2908 gtk_widget_set_size_request(keyword_text, 20, 20);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2909 scrolled = gtk_scrolled_window_new(NULL, NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2910 gtk_box_pack_start(GTK_BOX(group), scrolled, TRUE, TRUE, 0);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2911 gtk_widget_show(scrolled);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2912
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2913 gtk_container_add(GTK_CONTAINER(scrolled), keyword_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2914 gtk_widget_show(keyword_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2915
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2916 gtk_text_view_set_editable(GTK_TEXT_VIEW(keyword_text), TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2917
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2918 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(keyword_text));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2919 gtk_text_buffer_create_tag(buffer, "monospace",
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2920 "family", "monospace", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2921
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2922 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(keyword_text), GTK_WRAP_WORD);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2923 gtk_text_buffer_get_start_iter(buffer, &iter);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2924 gtk_text_buffer_create_mark(buffer, "end", &iter, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2925 gchar *path;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2926
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2927 path = g_build_filename(get_rc_dir(), "keywords", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2928
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2929 GList *kwl = keyword_list_get();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2930 kwl = g_list_first(kwl);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2931 while (kwl)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2932 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2933 gtk_text_buffer_get_end_iter (buffer, &iter);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2934 tmp = g_strconcat(kwl->data, "\n", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2935 gtk_text_buffer_insert(buffer, &iter, tmp, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2936 kwl = kwl->next;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2937 g_free(tmp);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2938 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2939
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2940 gtk_text_buffer_set_modified(buffer, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2941
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2942 g_free(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2943 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2944
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2945 /* metadata tab */
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2946 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2947 static void intent_menu_cb(GtkWidget *combo, gpointer data)
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2948 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2949 gint *option = data;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2950
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2951 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2952 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2953 case 0:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2954 default:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2955 *option = INTENT_PERCEPTUAL;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2956 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2957 case 1:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2958 *option = INTENT_RELATIVE_COLORIMETRIC;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2959 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2960 case 2:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2961 *option = INTENT_SATURATION;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2962 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2963 case 3:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2964 *option = INTENT_ABSOLUTE_COLORIMETRIC;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2965 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2966 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2967 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2968
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2969 static void add_intent_menu(GtkWidget *table, gint column, gint row, const gchar *text,
2441
a2d4729a3b2d Fix GCC and Clang compile warnings.
Omari Stephens <xsdg@google.com>
parents: 2412
diff changeset
2970 gint option, gint *option_c)
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2971 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2972 GtkWidget *combo;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2973 gint current = 0;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2974
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2975 *option_c = option;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2976
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2977 pref_table_label(table, column, row, text, 0.0);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2978
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2979 combo = gtk_combo_box_text_new();
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2980
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2981 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Perceptual"));
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2982 if (option == INTENT_PERCEPTUAL) current = 0;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2983 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Relative Colorimetric"));
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2984 if (option == INTENT_RELATIVE_COLORIMETRIC) current = 1;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2985 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Saturation"));
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2986 if (option == INTENT_SATURATION) current = 2;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2987 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Absolute Colorimetric"));
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2988 if (option == INTENT_ABSOLUTE_COLORIMETRIC) current = 3;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2989
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2990 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2991
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2992 gtk_widget_set_tooltip_text(combo,"Refer to the lcms documentation for the defaults used when the selected Intent is not available");
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2993
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2994 g_signal_connect(G_OBJECT(combo), "changed",
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2995 G_CALLBACK(intent_menu_cb), option_c);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2996
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2997 gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1,
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2998 GTK_EXPAND | GTK_FILL, 0, 0, 0);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2999 gtk_widget_show(combo);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3000 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3001 #endif
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3002
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3003 static void config_tab_color(GtkWidget *notebook)
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3004 {
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3005 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3006 GtkWidget *vbox;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3007 GtkWidget *group;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3008 GtkWidget *tabcomp;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3009 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3010 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3011
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
3012 vbox = scrolled_notebook_page(notebook, _("Color management"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3013
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3014 group = pref_group_new(vbox, FALSE, _("Input profiles"), GTK_ORIENTATION_VERTICAL);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3015 #ifndef HAVE_LCMS
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3016 gtk_widget_set_sensitive(pref_group_parent(group), FALSE);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3017 #endif
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3018
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3019 table = pref_table_new(group, 3, COLOR_PROFILE_INPUTS + 1, FALSE, FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3020 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
3021
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3022 label = pref_table_label(table, 0, 0, _("Type"), 0.0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3023 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3024
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3025 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
3026 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3027
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3028 label = pref_table_label(table, 2, 0, _("File"), 0.0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3029 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3030
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3031 for (i = 0; i < COLOR_PROFILE_INPUTS; i++)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3032 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
3033 GtkWidget *entry;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3034 gchar *buf;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3035
1625
e5c894eda2a4 Ongoing translation
Klaus Ethgen <Klaus@Ethgen.de>
parents: 1619
diff changeset
3036 buf = g_strdup_printf(_("Input %d:"), i + COLOR_PROFILE_FILE);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3037 pref_table_label(table, 0, i + 1, buf, 1.0);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3038 g_free(buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3039
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
3040 entry = gtk_entry_new();
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3041 gtk_entry_set_max_length(GTK_ENTRY(entry), EDITOR_NAME_MAX_LENGTH);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3042 if (options->color_profile.input_name[i])
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3043 {
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3044 gtk_entry_set_text(GTK_ENTRY(entry), options->color_profile.input_name[i]);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3045 }
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3046 gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 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
3047 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
3048 gtk_widget_show(entry);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3049 color_profile_input_name_entry[i] = entry;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3050
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
3051 tabcomp = tab_completion_new(&entry, options->color_profile.input_file[i], NULL, ".icc", "ICC Files", NULL);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3052 tab_completion_add_select_button(entry, _("Select color profile"), FALSE);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3053 gtk_widget_set_size_request(entry, 160, -1);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3054 gtk_table_attach(GTK_TABLE(table), tabcomp, 2, 3, i + 1, i + 2,
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3055 GTK_FILL | GTK_EXPAND, 0, 0, 0);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3056 gtk_widget_show(tabcomp);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3057 color_profile_input_file_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3058 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3059
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3060 group = pref_group_new(vbox, FALSE, _("Screen profile"), GTK_ORIENTATION_VERTICAL);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3061 #ifndef HAVE_LCMS
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3062 gtk_widget_set_sensitive(pref_group_parent(group), FALSE);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3063 #endif
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3064 pref_checkbox_new_int(group, _("Use system screen profile if available"),
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3065 options->color_profile.use_x11_screen_profile, &c_options->color_profile.use_x11_screen_profile);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3066
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3067 table = pref_table_new(group, 2, 1, FALSE, FALSE);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3068
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3069 pref_table_label(table, 0, 0, _("Screen:"), 1.0);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3070 tabcomp = tab_completion_new(&color_profile_screen_file_entry,
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
3071 options->color_profile.screen_file, NULL, ".icc", "ICC Files", NULL);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3072 tab_completion_add_select_button(color_profile_screen_file_entry, _("Select color profile"), FALSE);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3073 gtk_widget_set_size_request(color_profile_screen_file_entry, 160, -1);
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3074 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3075 add_intent_menu(table, 0, 1, _("Render Intent:"), options->color_profile.render_intent, &c_options->color_profile.render_intent);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3076 #endif
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3077 gtk_table_attach(GTK_TABLE(table), tabcomp, 1, 2,
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
3078 0, 1,
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3079 GTK_FILL | GTK_EXPAND, 0, 0, 0);
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
3080
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3081 gtk_widget_show(tabcomp);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3082 }
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
3083
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3084 /* advanced entry tab */
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3085 static void use_geeqie_trash_cb(GtkWidget *widget, gpointer data)
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3086 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3087 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3088 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3089 c_options->file_ops.use_system_trash = FALSE;
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3090 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3091 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3092
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3093 static void use_system_trash_cb(GtkWidget *widget, gpointer data)
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3094 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3095 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3096 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3097 c_options->file_ops.use_system_trash = TRUE;
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3098 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3099 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3100
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3101 static void config_tab_behavior(GtkWidget *notebook)
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3102 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3103 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3104 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3105 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3106 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3107 GtkWidget *tabcomp;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3108 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3109 GtkWidget *spin;
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
3110 GtkWidget *table;
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
3111 GtkWidget *marks;
2769
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
3112 GtkWidget *with_rename;
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3113 GtkWidget *collections_on_top;
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
3114
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
3115 vbox = scrolled_notebook_page(notebook, _("Behavior"));
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
3116
1685
041cdca65160 Revert "Add pgettext for some ambiguous strings"
Klaus Ethgen <Klaus@Ethgen.de>
parents: 1678
diff changeset
3117 group = pref_group_new(vbox, FALSE, _("Delete"), GTK_ORIENTATION_VERTICAL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3118
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3119 pref_checkbox_new_int(group, _("Confirm permanent file delete"),
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
3120 options->file_ops.confirm_delete, &c_options->file_ops.confirm_delete);
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3121 pref_checkbox_new_int(group, _("Confirm move file to Trash"),
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3122 options->file_ops.confirm_move_to_trash, &c_options->file_ops.confirm_move_to_trash);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3123 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
3124 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
3125
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3126 ct_button = pref_radiobutton_new(group, NULL, _("Use Geeqie trash location"),
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3127 !options->file_ops.use_system_trash, G_CALLBACK(use_geeqie_trash_cb),NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3128
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3129 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
3130 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3131
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3132 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
3133 pref_label_new(hbox, _("Folder:"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3134
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
3135 tabcomp = tab_completion_new(&safe_delete_path_entry, options->file_ops.safe_delete_path, NULL, NULL, NULL, NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3136 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
3137 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
3138 gtk_widget_show(tabcomp);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3139
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3140 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
3141 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3142
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3143 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
3144 spin = pref_spin_new_int(hbox, _("Maximum size:"), _("MB"),
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3145 0, 2048, 1, options->file_ops.safe_delete_folder_maxsize, &c_options->file_ops.safe_delete_folder_maxsize);
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
3146 gtk_widget_set_tooltip_markup(spin, _("Set to 0 for unlimited size"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3147 button = pref_button_new(NULL, NULL, _("View"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3148 G_CALLBACK(safe_delete_view_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3149 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
3150 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3151
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3152 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
3153 G_CALLBACK(safe_delete_clear_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3154 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3155 pref_radiobutton_new(group, ct_button, _("Use system Trash bin"),
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3156 options->file_ops.use_system_trash, G_CALLBACK(use_system_trash_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3157 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3158
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3159 pref_spacer(group, PREF_PAD_GROUP);
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3160
497
29dc838f7d6b Allow the copy of file paths to clipboard.
Laurent Monin <geeqie@norz.org>
parents: 475
diff changeset
3161
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3162 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
3163
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3164 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
3165 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
3166
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3167 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
3168 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
3169
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3170 pref_checkbox_new_int(group, _("List directory view uses single click to enter"),
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3171 options->view_dir_list_single_click_enter, &c_options->view_dir_list_single_click_enter);
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3172
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
3173 marks = pref_checkbox_new_int(group, _("Save marks on exit"),
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
3174 options->marks_save, &c_options->marks_save);
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
3175 gtk_widget_set_tooltip_text(marks,"Note that marks linked to a keyword will be saved irrespective of this setting");
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
3176
2769
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
3177 with_rename = pref_checkbox_new_int(group, _("Use \"With Rename\" as default for Copy/Move dialogs"),
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
3178 options->with_rename, &c_options->with_rename);
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
3179 gtk_widget_set_tooltip_text(with_rename,"Change the default button for Copy/Move dialogs");
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
3180
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3181 collections_on_top = pref_checkbox_new_int(group, _("Open collections on top"),
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3182 options->collections_on_top, &c_options->collections_on_top);
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3183 gtk_widget_set_tooltip_text(collections_on_top,"Open collections window on top");
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3184
2424
83d9886b9bcb Preferences: Open recent list maximum size
Colin Clark <cclark@mcb.net>
parents: 2423
diff changeset
3185 pref_spin_new_int(group, _("Recent folder list maximum size"), NULL,
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
3186 1, 50, 1, options->open_recent_list_maxsize, &c_options->open_recent_list_maxsize);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3187
458
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
3188 pref_spin_new_int(group, _("Drag'n drop icon size"), NULL,
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
3189 16, 256, 16, options->dnd_icon_size, &c_options->dnd_icon_size);
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
3190
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
3191 table = pref_table_new(group, 2, 1, FALSE, FALSE);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
3192 add_clipboard_selection_menu(table, 0, 0, _("Copy path clipboard selection:"), options->clipboard_selection, &c_options->clipboard_selection);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
3193
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3194 pref_spacer(group, PREF_PAD_GROUP);
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3195
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3196 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
3197
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3198 pref_checkbox_new_int(group, _("Progressive keyboard scrolling"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
3199 options->progressive_key_scrolling, &c_options->progressive_key_scrolling);
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3200 pref_spin_new_int(group, _("Keyboard scrolling step multiplier:"), NULL,
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3201 1, 32, 1, options->keyboard_scroll_step, (int *)&c_options->keyboard_scroll_step);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3202 pref_checkbox_new_int(group, _("Mouse wheel scrolls image"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
3203 options->mousewheel_scrolls, &c_options->mousewheel_scrolls);
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3204 pref_checkbox_new_int(group, _("Navigation by left or middle click on image"),
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3205 options->image_lm_click_nav, &c_options->image_lm_click_nav);
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
3206 pref_checkbox_new_int(group, _("Play video by left click on image"),
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
3207 options->image_l_click_video, &c_options->image_l_click_video);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
3208 table = pref_table_new(group, 2, 1, FALSE, FALSE);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
3209 add_video_menu(table, 0, 0, _("Play with:"), options->image_l_click_video_editor, &c_options->image_l_click_video_editor);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
3210
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3211
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3212 #ifdef DEBUG
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3213 pref_spacer(group, PREF_PAD_GROUP);
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3214
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3215 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
3216
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3217 pref_spin_new_int(group, _("Debug level:"), NULL,
507
7408e89b601d Move debug macros from main.h to new debug.h.
Laurent Monin <geeqie@norz.org>
parents: 497
diff changeset
3218 DEBUG_LEVEL_MIN, DEBUG_LEVEL_MAX, 1, get_debug_level(), &debug_c);
2505
d01e5b8e80d9 Eliminate FIXME: Log window line limit
Colin Clark <colin.clark@cclark.uk>
parents: 2501
diff changeset
3219
2596
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
3220 pref_checkbox_new_int(group, _("Timer data"),
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
3221 options->log_window.timer_data, &c_options->log_window.timer_data);
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
3222
2505
d01e5b8e80d9 Eliminate FIXME: Log window line limit
Colin Clark <colin.clark@cclark.uk>
parents: 2501
diff changeset
3223 pref_spin_new_int(group, _("Log Window max. lines:"), NULL,
d01e5b8e80d9 Eliminate FIXME: Log window line limit
Colin Clark <colin.clark@cclark.uk>
parents: 2501
diff changeset
3224 1, 99999, 1, options->log_window_lines, &options->log_window_lines);
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3225 #endif
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3226 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3227
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3228 /* accelerators tab */
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3229 static void config_tab_accelerators(GtkWidget *notebook)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3230 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3231 GtkWidget *hbox;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3232 GtkWidget *vbox;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3233 GtkWidget *group;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3234 GtkWidget *button;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3235 GtkWidget *scrolled;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3236 GtkWidget *accel_view;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3237 GtkCellRenderer *renderer;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3238 GtkTreeSelection *selection;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3239 GtkTreeViewColumn *column;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3240
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3241 vbox = scrolled_notebook_page(notebook, _("Keyboard"));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3242
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3243 group = pref_group_new(vbox, TRUE, _("Accelerators"), GTK_ORIENTATION_VERTICAL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3244
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3245 scrolled = gtk_scrolled_window_new(NULL, NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3246 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled), GTK_SHADOW_IN);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3247 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3248 gtk_box_pack_start(GTK_BOX(group), scrolled, TRUE, TRUE, 0);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3249 gtk_widget_show(scrolled);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3250
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3251 accel_store = gtk_tree_store_new(4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3252
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3253 accel_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(accel_store));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3254 g_object_unref(accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3255 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(accel_view));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3256 gtk_tree_selection_set_mode(GTK_TREE_SELECTION(selection), GTK_SELECTION_MULTIPLE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3257
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3258 gtk_tree_view_set_enable_search(GTK_TREE_VIEW(accel_view), FALSE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3259
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3260 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3261
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3262 column = gtk_tree_view_column_new_with_attributes(_("Action"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3263 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3264 "text", AE_ACTION,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3265 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3266
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3267 gtk_tree_view_column_set_sort_column_id(column, AE_ACTION);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3268 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3269 gtk_tree_view_append_column(GTK_TREE_VIEW(accel_view), column);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3270
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3271
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3272 renderer = gtk_cell_renderer_accel_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3273 g_signal_connect(G_OBJECT(renderer), "accel-cleared",
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3274 G_CALLBACK(accel_store_cleared_cb), accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3275 g_signal_connect(G_OBJECT(renderer), "accel-edited",
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3276 G_CALLBACK(accel_store_edited_cb), accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3277
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3278
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3279 g_object_set (renderer,
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3280 "editable", TRUE,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3281 "accel-mode", GTK_CELL_RENDERER_ACCEL_MODE_OTHER,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3282 NULL);
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3283
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3284 column = gtk_tree_view_column_new_with_attributes(_("KEY"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3285 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3286 "text", AE_KEY,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3287 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3288
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3289 gtk_tree_view_column_set_sort_column_id(column, AE_KEY);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3290 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3291 gtk_tree_view_append_column(GTK_TREE_VIEW(accel_view), column);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3292
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3293 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3294
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3295 column = gtk_tree_view_column_new_with_attributes(_("Tooltip"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3296 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3297 "text", AE_TOOLTIP,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3298 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3299
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3300 gtk_tree_view_column_set_sort_column_id(column, AE_TOOLTIP);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3301 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3302 gtk_tree_view_append_column(GTK_TREE_VIEW(accel_view), column);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3303
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3304 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3305
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3306 column = gtk_tree_view_column_new_with_attributes("Accel",
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3307 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3308 "text", AE_ACCEL,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3309 NULL);
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3310
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3311 gtk_tree_view_column_set_sort_column_id(column, AE_ACCEL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3312 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3313 gtk_tree_view_append_column(GTK_TREE_VIEW(accel_view), column);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3314
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3315 accel_store_populate();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3316 gtk_container_add(GTK_CONTAINER(scrolled), accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3317 gtk_widget_show(accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3318
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3319 hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_BUTTON_GAP);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3320
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3321 button = pref_button_new(NULL, NULL, _("Defaults"), FALSE,
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
3322 G_CALLBACK(accel_default_cb), accel_view);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3323 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3324 gtk_widget_show(button);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3325
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3326 button = pref_button_new(NULL, NULL, _("Reset selected"), FALSE,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3327 G_CALLBACK(accel_reset_cb), accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3328 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3329 gtk_widget_show(button);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3330 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3331
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3332 /* toolbar tab */
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3333 static void config_tab_toolbar(GtkWidget *notebook)
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3334 {
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3335 GtkWidget *vbox;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3336 GtkWidget *toolbardata;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3337 LayoutWindow *lw;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3338
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3339 lw = layout_window_list->data;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3340
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3341 vbox = scrolled_notebook_page(notebook, _("Toolbar"));
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3342
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3343 toolbardata = toolbar_select_new(lw);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3344 gtk_box_pack_start(GTK_BOX(vbox), toolbardata, TRUE, TRUE, 0);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3345 gtk_widget_show(vbox);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3346 }
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3347
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3348 /* stereo tab */
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3349 static void config_tab_stereo(GtkWidget *notebook)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3350 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3351 GtkWidget *vbox;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3352 GtkWidget *group;
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
3353 GtkWidget *group2;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3354 GtkWidget *table;
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3355 GtkWidget *box;
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3356 GtkWidget *box2;
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
3357 GtkWidget *fs_button;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3358 vbox = scrolled_notebook_page(notebook, _("Stereo"));
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3359
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3360 group = pref_group_new(vbox, FALSE, _("Windowed stereo mode"), GTK_ORIENTATION_VERTICAL);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3361
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3362 table = pref_table_new(group, 2, 1, FALSE, FALSE);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3363 add_stereo_mode_menu(table, 0, 0, _("Windowed stereo mode"), options->stereo.mode, &c_options->stereo.mode, FALSE);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3364
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3365 table = pref_table_new(group, 2, 2, TRUE, FALSE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3366 box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3367 pref_checkbox_new_int(box, _("Mirror left image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3368 options->stereo.mode & PR_STEREO_MIRROR_LEFT, &c_options->stereo.tmp.mirror_left);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3369 box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3370 pref_checkbox_new_int(box, _("Flip left image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3371 options->stereo.mode & PR_STEREO_FLIP_LEFT, &c_options->stereo.tmp.flip_left);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3372 box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3373 pref_checkbox_new_int(box, _("Mirror right image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3374 options->stereo.mode & PR_STEREO_MIRROR_RIGHT, &c_options->stereo.tmp.mirror_right);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3375 box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3376 pref_checkbox_new_int(box, _("Flip right image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3377 options->stereo.mode & PR_STEREO_FLIP_RIGHT, &c_options->stereo.tmp.flip_right);
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3378 pref_checkbox_new_int(group, _("Swap left and right images"),
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3379 options->stereo.mode & PR_STEREO_SWAP, &c_options->stereo.tmp.swap);
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3380 pref_checkbox_new_int(group, _("Disable stereo mode on single image source"),
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3381 options->stereo.mode & PR_STEREO_TEMP_DISABLE, &c_options->stereo.tmp.temp_disable);
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3382
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3383 group = pref_group_new(vbox, FALSE, _("Fullscreen stereo mode"), GTK_ORIENTATION_VERTICAL);
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
3384 fs_button = pref_checkbox_new_int(group, _("Use different settings for fullscreen"),
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3385 options->stereo.enable_fsmode, &c_options->stereo.enable_fsmode);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3386 box2 = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_SPACE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3387 pref_checkbox_link_sensitivity(fs_button, box2);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3388 table = pref_table_new(box2, 2, 1, FALSE, FALSE);
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3389 add_stereo_mode_menu(table, 0, 0, _("Fullscreen stereo mode"), options->stereo.fsmode, &c_options->stereo.fsmode, TRUE);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3390 table = pref_table_new(box2, 2, 2, TRUE, FALSE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3391 box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3392 pref_checkbox_new_int(box, _("Mirror left image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3393 options->stereo.fsmode & PR_STEREO_MIRROR_LEFT, &c_options->stereo.tmp.fs_mirror_left);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3394 box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3395 pref_checkbox_new_int(box, _("Flip left image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3396 options->stereo.fsmode & PR_STEREO_FLIP_LEFT, &c_options->stereo.tmp.fs_flip_left);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3397 box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3398 pref_checkbox_new_int(box, _("Mirror right image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3399 options->stereo.fsmode & PR_STEREO_MIRROR_RIGHT, &c_options->stereo.tmp.fs_mirror_right);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3400 box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3401 pref_checkbox_new_int(box, _("Flip right image"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3402 options->stereo.fsmode & PR_STEREO_FLIP_RIGHT, &c_options->stereo.tmp.fs_flip_right);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3403 pref_checkbox_new_int(box2, _("Swap left and right images"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3404 options->stereo.fsmode & PR_STEREO_SWAP, &c_options->stereo.tmp.fs_swap);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3405 pref_checkbox_new_int(box2, _("Disable stereo mode on single image source"),
1889
14088e0b25ec temporarily disable stereo mode, added more stereo prefs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1887
diff changeset
3406 options->stereo.fsmode & PR_STEREO_TEMP_DISABLE, &c_options->stereo.tmp.fs_temp_disable);
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3407
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3408 group2 = pref_group_new(box2, FALSE, _("Fixed position"), GTK_ORIENTATION_VERTICAL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3409 table = pref_table_new(group2, 5, 3, FALSE, FALSE);
1921
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3410 pref_table_spin_new_int(table, 0, 0, _("Width"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3411 1, 5000, 1, options->stereo.fixed_w, &c_options->stereo.fixed_w);
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3412 pref_table_spin_new_int(table, 3, 0, _("Height"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3413 1, 5000, 1, options->stereo.fixed_h, &c_options->stereo.fixed_h);
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3414 pref_table_spin_new_int(table, 0, 1, _("Left X"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3415 0, 5000, 1, options->stereo.fixed_x1, &c_options->stereo.fixed_x1);
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3416 pref_table_spin_new_int(table, 3, 1, _("Left Y"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3417 0, 5000, 1, options->stereo.fixed_y1, &c_options->stereo.fixed_y1);
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3418 pref_table_spin_new_int(table, 0, 2, _("Right X"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3419 0, 5000, 1, options->stereo.fixed_x2, &c_options->stereo.fixed_x2);
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3420 pref_table_spin_new_int(table, 3, 2, _("Right Y"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3421 0, 5000, 1, options->stereo.fixed_y2, &c_options->stereo.fixed_y2);
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
3422
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3423 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3424
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3425 /* Main preferences window */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3426 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
3427 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3428 GtkWidget *win_vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3429 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3430 GtkWidget *notebook;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3431 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3432 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3433
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
3434 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
3435
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
3436 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
3437 gtk_window_set_type_hint(GTK_WINDOW(configwindow), GDK_WINDOW_TYPE_HINT_DIALOG);
513
6743a5928e09 Remove whitespace between function name and first parenthesis for the sake of consistency. (pass 2)
Laurent Monin <geeqie@norz.org>
parents: 512
diff changeset
3438 g_signal_connect(G_OBJECT(configwindow), "delete_event",
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3439 G_CALLBACK(config_window_delete), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3440 gtk_window_set_default_size(GTK_WINDOW(configwindow), CONFIG_WINDOW_DEF_WIDTH, CONFIG_WINDOW_DEF_HEIGHT);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3441 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
3442 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
3443
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3444 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
3445 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
3446 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
3447
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3448 notebook = gtk_notebook_new();
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3449 gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP);
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
3450 gtk_notebook_set_scrollable(GTK_NOTEBOOK(notebook), TRUE);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3451 gtk_box_pack_start(GTK_BOX(win_vbox), notebook, TRUE, TRUE, 0);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3452
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3453 config_tab_general(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3454 config_tab_image(notebook);
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
3455 config_tab_osd(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3456 config_tab_windows(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3457 config_tab_accelerators(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3458 config_tab_files(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3459 config_tab_metadata(notebook);
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
3460 config_tab_keywords(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3461 config_tab_color(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3462 config_tab_stereo(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3463 config_tab_behavior(notebook);
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3464 config_tab_toolbar(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3465
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3466 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
3467 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
3468 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
3469 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
3470 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
3471
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3472 button = pref_button_new(NULL, GTK_STOCK_HELP, NULL, FALSE,
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3473 G_CALLBACK(config_window_help_cb), notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3474 gtk_container_add(GTK_CONTAINER(hbox), button);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3475 gtk_widget_set_can_default(button, TRUE);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3476 gtk_widget_show(button);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3477
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3478 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
3479 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
3480 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3481 gtk_widget_set_can_default(button, TRUE);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3482 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
3483 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
3484
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3485 ct_button = button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3486
1024
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
3487 button = pref_button_new(NULL, GTK_STOCK_SAVE, NULL, FALSE,
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
3488 G_CALLBACK(config_window_save_cb), NULL);
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
3489 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3490 gtk_widget_set_can_default(button, TRUE);
1024
32e69d16dc5c Add a Save button to Preferences dialog, which allow to save options to file without quitting the application.
Laurent Monin <geeqie@norz.org>
parents: 1001
diff changeset
3491 gtk_widget_show(button);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3492
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3493 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
3494 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
3495 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3496 gtk_widget_set_can_default(button, TRUE);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3497 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
3498
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3499 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
3500 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
3501 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3502 gtk_widget_set_can_default(button, TRUE);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3503 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
3504
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3505 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
3506 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3507 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
3508 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3509
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3510 gtk_widget_show(notebook);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3511
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3512 gtk_widget_show(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3513 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3514
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3515 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3516 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3517 * config window show (public)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3518 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3519 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3520
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3521 void show_config_window(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3522 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3523 if (configwindow)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3524 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3525 gtk_window_present(GTK_WINDOW(configwindow));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3526 return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3527 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3528
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3529 config_window_create();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3530 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3531
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3532 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3533 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3534 * about window
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3535 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3536 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3537
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3538 void show_about_window(LayoutWindow *lw)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3539 {
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3540 GdkPixbuf *pixbuf_logo;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3541 GdkPixbuf *pixbuf_icon;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3542 gchar *authors[1000];
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3543 gchar *comment;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3544 gint i_authors = 0;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3545 gchar *path;
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3546 GString *copyright;
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3547 gchar *zd_path;
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3548 ZoneDetect *cd;
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3549 FILE *fp = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3550 #define LINE_LENGTH 1000
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3551 gchar line[LINE_LENGTH];
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3552
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3553 copyright = g_string_new(NULL);
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3554 copyright = g_string_append(copyright, "This program comes with absolutely no warranty.\nGNU General Public License, version 2 or later.\nSee https://www.gnu.org/licenses/old-licenses/gpl-2.0.html\n\n");
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3555
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3556 zd_path = g_build_filename(GQ_BIN_DIR, TIMEZONE_DATABASE, NULL);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3557 cd = ZDOpenDatabase(zd_path);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3558 if (cd)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3559 {
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3560 copyright = g_string_append(copyright, ZDGetNotice(cd));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3561 }
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3562 ZDCloseDatabase(cd);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3563 g_free(zd_path);
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3564
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3565 authors[0] = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3566 path = g_build_filename(GQ_HELPDIR, "AUTHORS", NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3567 fp = fopen(path, "r");
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3568 if (fp)
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3569 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3570 while(fgets(line, LINE_LENGTH, fp))
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3571 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3572 /* get rid of ending \n from fgets */
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3573 line[strlen(line) - 1] = '\0';
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3574 authors[i_authors] = g_strdup(line);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3575 i_authors++;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3576 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3577 authors[i_authors] = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3578 fclose(fp);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3579 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3580 g_free(path);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3581
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3582 comment = g_strconcat("Development and bug reports:\n", GQ_EMAIL_ADDRESS,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3583 "\nhttps://github.com/BestImageViewer/geeqie/issues",NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3584
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3585 pixbuf_logo = pixbuf_inline(PIXBUF_INLINE_LOGO);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3586 pixbuf_icon = pixbuf_inline(PIXBUF_INLINE_ICON);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3587 gtk_show_about_dialog(GTK_WINDOW(lw->window),
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3588 "title", _("About Geeqie"),
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3589 "resizable", TRUE,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3590 "program-name", GQ_APPNAME,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3591 "version", VERSION,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3592 "logo", pixbuf_logo,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3593 "icon", pixbuf_icon,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3594 "website", GQ_WEBSITE,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3595 "website-label", "Website",
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3596 "comments", comment,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3597 "authors", authors,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3598 "translator-credits", _("translator-credits"),
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3599 "wrap-license", TRUE,
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3600 "license", copyright->str,
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3601 NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3602
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3603 g_string_free(copyright, TRUE);
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3604
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3605 gint n = 0;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3606 while(n < i_authors)
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3607 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3608 g_free(authors[n]);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3609 n++;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3610 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3611 g_free(comment);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3612
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3613 return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3614 }
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3615
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3616 static void image_overlay_set_text_colours()
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3617 {
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3618 c_options->image_overlay.text_red = options->image_overlay.text_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3619 c_options->image_overlay.text_green = options->image_overlay.text_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3620 c_options->image_overlay.text_blue = options->image_overlay.text_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3621 c_options->image_overlay.text_alpha = options->image_overlay.text_alpha;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3622 c_options->image_overlay.background_red = options->image_overlay.background_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3623 c_options->image_overlay.background_green = options->image_overlay.background_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3624 c_options->image_overlay.background_blue = options->image_overlay.background_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3625 c_options->image_overlay.background_alpha = options->image_overlay.background_alpha;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3626 }
1055
4bbdfab3c89a Adding a vim modeline to all files - patch by Klaus Ethgen
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1053
diff changeset
3627 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */