annotate src/preferences.c @ 2875:198c76b748e0

Preferences tabs orientation Move preferences tabs to the left side so that all tabs are always in view.
author Colin Clark <colin.clark@cclark.uk>
date Tue, 18 Dec 2018 16:42:02 +0000
parents 87242753ed2c
children 2e7fd08bfbe4
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"
2866
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
42 #include "osd.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
43 #include "pixbuf_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
44 #include "slideshow.h"
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
45 #include "toolbar.h"
597
471697db9e6b moved safe delete functions to separate file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 594
diff changeset
46 #include "trash.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
47 #include "utilops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
48 #include "ui_fileops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
49 #include "ui_misc.h"
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
50 #include "ui_spinner.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
51 #include "ui_tabcomp.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
52 #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
53 #include "window.h"
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
54 #include "zonedetect.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
55
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
56 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
57 #ifdef HAVE_LCMS2
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
58 #include <lcms2.h>
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
59 #else
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
60 #include <lcms.h>
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
61 #endif
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
62 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
63
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
64 #define EDITOR_NAME_MAX_LENGTH 32
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
65 #define EDITOR_COMMAND_MAX_LENGTH 1024
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
66
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
67 static void image_overlay_set_text_colours();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
68
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
69 GtkWidget *keyword_text;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
70 static void config_tab_keywords_save();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
71
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
72 typedef struct _ThumbSize ThumbSize;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
73 struct _ThumbSize
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
74 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
75 gint w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
76 gint h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
77 };
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 static ThumbSize thumb_size_list[] =
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
80 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
81 { 24, 24 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
82 { 32, 32 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
83 { 48, 48 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
84 { 64, 64 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
85 { 96, 72 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
86 { 96, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
87 { 128, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
88 { 128, 128 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
89 { 160, 120 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
90 { 160, 160 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
91 { 192, 144 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
92 { 192, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
93 { 256, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
94 { 256, 256 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
95 };
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 enum {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
98 FE_ENABLE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
99 FE_EXTENSION,
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
100 FE_DESCRIPTION,
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
101 FE_CLASS,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
102 FE_WRITABLE,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
103 FE_ALLOW_SIDECAR
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
104 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
105
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
106 enum {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
107 AE_ACTION,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
108 AE_KEY,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
109 AE_TOOLTIP,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
110 AE_ACCEL
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
111 };
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
112
2768
7d275582e37d Fix #612: Pan view image class filtering
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2756
diff changeset
113 gchar *format_class_list[] = {
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
114 N_("Unknown"),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
115 N_("Image"),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
116 N_("RAW Image"),
2597
e65df743a5a1 Ref #510: Rudimentary video support
Colin Clark <colin.clark@cclark.uk>
parents: 2596
diff changeset
117 N_("Metadata"),
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
118 N_("Video"),
2799
ea4163f0c769 Ref #332: include pdf-view
Colin Clark <colin.clark@cclark.uk>
parents: 2793
diff changeset
119 N_("Collection"),
ea4163f0c769 Ref #332: include pdf-view
Colin Clark <colin.clark@cclark.uk>
parents: 2793
diff changeset
120 N_("Pdf")
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
121 };
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
122
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
123 /* config memory values */
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
124 static ConfOptions *c_options = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
125
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
126
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
127 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
128 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
129 #endif
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
130
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
131 static GtkWidget *configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
132 static GtkListStore *filter_store = NULL;
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
133 static GtkTreeStore *accel_store = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
134
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
135 static GtkWidget *safe_delete_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
136
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
137 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
138 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
139 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
140
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
141 static GtkWidget *sidecar_ext_entry;
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
142 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
143
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 #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
146 #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
147
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
148 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
149 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
150 * option widget callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
151 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
152 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
153
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
154 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
155 {
2341
c9948056a6db Refined zoom step
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2337
diff changeset
156 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
157 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
158
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
159 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
160 {
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
161 gint mins_secs_tenths, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
162
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
163 mins_secs_tenths = c_options->slideshow.delay %
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
164 (3600 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
165
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
166 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
167 (3600 * SLIDESHOW_SUBSECOND_PRECISION) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
168 mins_secs_tenths);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
169
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
170 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
171 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
172 }
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 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
175 {
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
176 gint hours, secs_tenths, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
177
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
178 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
179 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
180
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
181 delay = hours * (3600 * SLIDESHOW_SUBSECOND_PRECISION) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
182 (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
183 (60 * SLIDESHOW_SUBSECOND_PRECISION) + secs_tenths);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
184
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
185 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
186 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
187 }
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 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
190 {
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
191 gint hours_mins, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
192
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
193 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
194
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
195 delay = (hours_mins * (60 * SLIDESHOW_SUBSECOND_PRECISION)) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
196 (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
197 (gdouble)(SLIDESHOW_SUBSECOND_PRECISION) + 0.01);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
198
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
199 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
200 SLIDESHOW_SUBSECOND_PRECISION;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
201 }
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 * sync progam to config window routine (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
206 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
207 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
208
1436
13d61fe760fb completely separated global and layout window options
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1400
diff changeset
209 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
210 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
211 const gchar *buf;
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
212
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
213 g_free(*option);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
214 *option = NULL;
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
215 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
216 if (buf && strlen(buf) > 0)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
217 {
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
218 if (func)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
219 *option = func(buf);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
220 else
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
221 *option = g_strdup(buf);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
222 }
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
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
226 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
227 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
228 gchar *accel_path, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
229
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
230 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
231
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
232 if (accel_path && accel_path[0])
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
233 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
234 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
235 gtk_accelerator_parse(accel, &key.accel_key, &key.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
236 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
237 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
238
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
239 g_free(accel_path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
240 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
241
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
242 return FALSE;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
243 }
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
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
246 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
247 {
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
248 gint i;
1437
cc423d10b73e gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1436
diff changeset
249 gboolean refresh = FALSE;
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
250
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
251 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
252
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
253 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
254 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
255 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
256 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
257 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
258 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
259 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
260
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
261 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
262 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
263 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
264 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
265 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
266 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
267 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
268 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
269 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
270 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
271 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
272 options->image.zoom_2pass = c_options->image.zoom_2pass;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
273 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
274 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
275 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
276 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
277 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
278 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
279 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
280 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
281 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
282 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
283
1506
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
284 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
285 || 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
286 || 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
287 {
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
288 thumb_format_changed = TRUE;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
289 refresh = TRUE;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
290 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
291 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
292 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
293 }
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
294 options->thumbnails.enable_caching = c_options->thumbnails.enable_caching;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
295 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
296 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
297 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
298 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
299 // 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
300 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
301 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
302 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
303 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
304 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
305 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
306
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
307 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
308 options->file_sort.natural = c_options->file_sort.natural;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
309 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
310
1229
2f11fec715ca sidecar files grouping was made case-insensitive
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1216
diff changeset
311 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
312 sidecar_ext_parse(options->sidecar.ext);
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
313
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
314 options->slideshow.random = c_options->slideshow.random;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
315 options->slideshow.repeat = c_options->slideshow.repeat;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
316 options->slideshow.delay = c_options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
317
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
318 options->mousewheel_scrolls = c_options->mousewheel_scrolls;
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
319 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
320 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
321 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
322
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
323 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
324
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
325 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
326 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
327
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
328 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
329
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
330 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
331
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
332 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
333
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
334
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
335 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
336 || 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
337 || !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
338 {
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
339 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
340 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
341 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
342 layout_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
343 view_window_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
344 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
345
2457
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
346 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
347 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
348
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
349 options->fullscreen.screen = c_options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
350 options->fullscreen.clean_flip = c_options->fullscreen.clean_flip;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
351 options->fullscreen.disable_saver = c_options->fullscreen.disable_saver;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
352 options->fullscreen.above = c_options->fullscreen.above;
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
353 if (c_options->image_overlay.template_string)
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
354 set_image_overlay_template_string(&options->image_overlay.template_string,
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
355 c_options->image_overlay.template_string);
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
356 if (c_options->image_overlay.font)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
357 set_image_overlay_font_string(&options->image_overlay.font,
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
358 c_options->image_overlay.font);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
359 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
360 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
361 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
362 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
363 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
364 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
365 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
366 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
367 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
368 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
369
342
de6de19bd03a Rename dupe_custom_threshold option to duplicates_similarity_threshold.
Laurent Monin <geeqie@norz.org>
parents: 341
diff changeset
370 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
371 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
372
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
373 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
374
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
375 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
376
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
377 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
378 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
379 options->clipboard_selection = c_options->clipboard_selection;
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
380
1208
338afd22a394 added options for metadata - not yet used
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1188
diff changeset
381 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
382 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
383 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
384 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
385 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
386 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
387 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
388 options->metadata.confirm_timeout = c_options->metadata.confirm_timeout;
1244
eeefa0f10d39 improved metadata preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1239
diff changeset
389 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
390 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
391 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
392 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
393 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
394 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
395 (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
396 (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
397 (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
398 (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
399 (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
400 (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
401 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
402 (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
403 (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
404 (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
405 (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
406 (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
407 (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
408 options->stereo.enable_fsmode = c_options->stereo.enable_fsmode;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
409 options->stereo.fixed_w = c_options->stereo.fixed_w;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
410 options->stereo.fixed_h = c_options->stereo.fixed_h;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
411 options->stereo.fixed_x1 = c_options->stereo.fixed_x1;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
412 options->stereo.fixed_y1 = c_options->stereo.fixed_y1;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
413 options->stereo.fixed_x2 = c_options->stereo.fixed_x2;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
414 options->stereo.fixed_y2 = c_options->stereo.fixed_y2;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
415
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
416 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
417 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
418 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
419 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
420
2826
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
421 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
422
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
423 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
424 options->with_rename = c_options->with_rename;
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
425 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
426 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
427
2770
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
428 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
429
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
430 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
431 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
432 #ifdef DEBUG
507
7408e89b601d Move debug macros from main.h to new debug.h.
Laurent Monin <geeqie@norz.org>
parents: 497
diff changeset
433 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
434 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
435
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
436 #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
437 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
438 {
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
439 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
440 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
441 }
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
442 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
443 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
444 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
445 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
446 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
447 color_man_update();
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
448 }
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
449 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
450
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
451 config_tab_keywords_save();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
452
26
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
453 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
454
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
455 if (refresh)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
456 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
457 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
458 layout_refresh(NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
459 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
460
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
461 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
462
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
463 toolbar_apply();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
464 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
465
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 * config window main button callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
469 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
470 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
471
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
472 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
473 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
474 gtk_widget_destroy(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
475 configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
476 filter_store = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
477 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
478
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
479 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
480 {
2431
1f5389d824df Fix compile warnings
Colin Clark <cclark@mcb.net>
parents: 2429
diff changeset
481 GtkWidget *notebook = data;
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
482 gint i;
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
483
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
484 static gchar *html_section[] =
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
485 {
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
486 "GuideOptionsGeneral.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
487 "GuideOptionsImage.html",
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
488 "GuideOptionsOSD.html",
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
489 "GuideOptionsWindow.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
490 "GuideOptionsKeyboard.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
491 "GuideOptionsFiltering.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
492 "GuideOptionsMetadata.html",
2825
b29ce668abca Bug fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2824
diff changeset
493 "GuideOptionsKeywords.html",
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
494 "GuideOptionsColor.html",
2628
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
495 "GuideOptionsStereo.html",
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
496 "GuideOptionsBehavior.html",
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
497 "GuideOptionsToolbar.html"
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
498 };
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
499
2441
a2d4729a3b2d Fix GCC and Clang compile warnings.
Omari Stephens <xsdg@google.com>
parents: 2412
diff changeset
500 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
501 help_window_show(html_section[i]);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
502 }
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
503
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
504 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
505 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
506 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
507 return TRUE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
508 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
509
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
510 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
511 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
512 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
513 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
514 }
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 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
517 {
2501
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
518 LayoutWindow *lw;
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
519 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
520
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
521 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
522 layout_util_sync(lw);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
523 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
524
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
525 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
526 {
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 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
528 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
529 }
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
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
531 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
532 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
533 * config window setup (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
534 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
535 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
536
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
537 static void quality_menu_cb(GtkWidget *combo, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
538 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
539 gint *option = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
540
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
541 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
542 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
543 case 0:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
544 default:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
545 *option = GDK_INTERP_NEAREST;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
546 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
547 case 1:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
548 *option = GDK_INTERP_TILES;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
549 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
550 case 2:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
551 *option = GDK_INTERP_BILINEAR;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
552 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
553 case 3:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
554 *option = GDK_INTERP_HYPER;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
555 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
556 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
557 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
558
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
559 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
560 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
561 gint *option = data;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
562
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
563 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
564 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
565 case 0:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
566 default:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
567 *option = PRIMARY;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
568 break;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
569 case 1:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
570 *option = CLIPBOARD;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
571 break;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
572 }
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
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
575 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
576 guint option, guint *option_c)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
577 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
578 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
579 gint current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
580
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
581 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
582
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
583 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
584
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
585 combo = gtk_combo_box_text_new();
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
586
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
587 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
588 if (option == GDK_INTERP_NEAREST) current = 0;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
589 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
590 if (option == GDK_INTERP_TILES) current = 1;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
591 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
592 if (option == GDK_INTERP_BILINEAR) current = 2;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
593 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
594 if (option == GDK_INTERP_HYPER) current = 3;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
595
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
596 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
597
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
598 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
599 G_CALLBACK(quality_menu_cb), option_c);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
600
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
601 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
602 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
603 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
604 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
605
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
606 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
607 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
608 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
609 GtkWidget *combo;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
610 gint current = 0;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
611
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
612 *option_c = option;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
613
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
614 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
615
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
616 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
617
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
618 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
619 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
620 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
621 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
622
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
623 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
624
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
625 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
626 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
627
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
628 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
629 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
630 gtk_widget_show(combo);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
631 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
632
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
633 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
634 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
635 gint n;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
636
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
637 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
638 if (n < 0) return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
639
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
640 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
641 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
642 c_options->thumbnails.max_width = thumb_size_list[n].w;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
643 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
644 }
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
645 else
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
646 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
647 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
648 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
649 }
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 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
653 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
654 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
655 gint current;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
656 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
657
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
658 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
659 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
660
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
661 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
662
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
663 combo = gtk_combo_box_text_new();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
664
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
665 current = -1;
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
666 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
667 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
668 gint w, h;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
669 gchar *buf;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
670
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
671 w = thumb_size_list[i].w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
672 h = thumb_size_list[i].h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
673
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
674 buf = g_strdup_printf("%d x %d", w, h);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
675 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
676 g_free(buf);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
677
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
678 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
679 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
680
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
681 if (current == -1)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
682 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
683 gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
684
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
685 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
686 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
687 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
688
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
689 current = i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
690 }
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 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
693 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
694 G_CALLBACK(thumb_size_menu_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
695
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
696 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
697 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
698 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
699 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
700
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
701 static void stereo_mode_menu_cb(GtkWidget *combo, gpointer data)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
702 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
703 gint *option = data;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
704
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
705 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
706 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
707 case 0:
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
708 default:
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
709 *option = PR_STEREO_NONE;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
710 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
711 case 1:
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
712 *option = PR_STEREO_ANAGLYPH_RC;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
713 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
714 case 2:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
715 *option = PR_STEREO_ANAGLYPH_GM;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
716 break;
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
717 case 3:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
718 *option = PR_STEREO_ANAGLYPH_YB;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
719 break;
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
720 case 4:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
721 *option = PR_STEREO_ANAGLYPH_GRAY_RC;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
722 break;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
723 case 5:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
724 *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
725 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
726 case 6:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
727 *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
728 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
729 case 7:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
730 *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
731 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
732 case 8:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
733 *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
734 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
735 case 9:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
736 *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
737 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
738 case 10:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
739 *option = PR_STEREO_HORIZ;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
740 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
741 case 11:
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
742 *option = PR_STEREO_HORIZ | PR_STEREO_HALF;
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
743 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
744 case 12:
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
745 *option = PR_STEREO_VERT;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
746 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
747 case 13:
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
748 *option = PR_STEREO_VERT | PR_STEREO_HALF;
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
749 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
750 case 14:
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
751 *option = PR_STEREO_FIXED;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
752 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
753 }
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 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
757 gint option, gint *option_c, gboolean add_fixed)
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
758 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
759 GtkWidget *combo;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
760 gint current = 0;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
761
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
762 *option_c = option;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
763
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
764 pref_table_label(table, column, row, text, 0.0);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
765
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
766 combo = gtk_combo_box_text_new();
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
767
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
768 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
769
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
770 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
771 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
772 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
773 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
774 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
775 if (option & PR_STEREO_ANAGLYPH_YB) current = 3;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
776 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
777 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
778 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
779 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
780 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
781 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
782 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
783 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
784 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
785 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
786 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
787 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
788
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
789 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
790 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
791 if (option & PR_STEREO_HORIZ)
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
792 {
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
793 current = 10;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
794 if (option & PR_STEREO_HALF) current = 11;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
795 }
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
796
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
797 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
798 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
799 if (option & PR_STEREO_VERT)
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
800 {
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
801 current = 12;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
802 if (option & PR_STEREO_HALF) current = 13;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
803 }
2185
c14a1d8e6aa4 Trim trailing white spaces on empty lines.
Laurent Monin <zas@norz.org>
parents: 2184
diff changeset
804
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
805 if (add_fixed)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
806 {
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
807 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
808 if (option & PR_STEREO_FIXED) current = 14;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
809 }
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 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
812
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
813 g_signal_connect(G_OBJECT(combo), "changed",
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
814 G_CALLBACK(stereo_mode_menu_cb), option_c);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
815
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
816 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
817 GTK_EXPAND | GTK_FILL, 0, 0, 0);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
818 gtk_widget_show(combo);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
819 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
820
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
821 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
822 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
823 gchar **option = data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
824
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
825 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
826 *option = ed->key;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
827 }
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 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
830 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
831 GtkWidget *combo = user_data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
832 EditorDescription *ed = data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
833
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
834 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
835 }
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 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
838 gchar *option, gchar **option_c)
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
839 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
840 GtkWidget *combo;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
841 gint current;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
842 /* use lists since they are sorted */
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
843 GList *eds = editor_list_get();
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
844
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
845 *option_c = option;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
846
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
847 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
848
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
849 combo = gtk_combo_box_text_new();
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
850 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
851 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
852
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
853 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
854
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
855 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
856 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
857
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
858 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
859 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
860 gtk_widget_show(combo);
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
861 }
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
862
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
863 static void filter_store_populate(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
864 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
865 GList *work;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
866
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
867 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
868
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
869 gtk_list_store_clear(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
870
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
871 work = filter_get_list();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
872 while (work)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
873 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
874 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
875 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
876
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
877 fe = work->data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
878 work = work->next;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
879
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
880 gtk_list_store_append(filter_store, &iter);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
881 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
882 }
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 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
886 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
887 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
888 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
889 FilterEntry *fe = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
890 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
891 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
892
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
893 if (!new_text || strlen(new_text) < 1) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
894
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
895 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
896 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
897 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
898
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
899 g_free(fe->extensions);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
900 fe->extensions = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
901
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
902 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
903 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
904 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
905
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
906 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
907 gchar *new_text, gpointer data)
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
908 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
909 GtkWidget *model = data;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
910 FilterEntry *fe = data;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
911 GtkTreePath *tpath;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
912 GtkTreeIter iter;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
913 gint i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
914
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
915 if (!new_text || !new_text[0]) return;
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
916
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
917 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
918 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
919 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
920
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
921 for (i = 0; i < FILE_FORMAT_CLASSES; i++)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
922 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
923 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
924 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
925 fe->file_class = i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
926 break;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
927 }
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 gtk_tree_path_free(tpath);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
931 filter_rebuild();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
932 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
933
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
934 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
935 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
936 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
937 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
938 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
939 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
940 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
941
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
942 if (!new_text || !new_text[0]) return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
943
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
944 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
945 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
946 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
947
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
948 g_free(fe->description);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
949 fe->description = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
950
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
951 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
952 }
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 static void filter_store_enable_cb(GtkCellRendererToggle *renderer,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
955 gchar *path_str, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
956 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
957 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
958 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
959 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
960 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
961
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
962 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
963 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
964 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
965
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
966 fe->enabled = !fe->enabled;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
967
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
968 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
969 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
970 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
971
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
972 static void filter_store_writable_cb(GtkCellRendererToggle *renderer,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
973 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
974 {
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
975 GtkWidget *model = data;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
976 FilterEntry *fe;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
977 GtkTreePath *tpath;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
978 GtkTreeIter iter;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
979
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
980 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
981 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
982 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
983
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
984 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
985 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
986
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
987 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
988 filter_rebuild();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
989 }
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 static void filter_store_sidecar_cb(GtkCellRendererToggle *renderer,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
992 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
993 {
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
994 GtkWidget *model = data;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
995 FilterEntry *fe;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
996 GtkTreePath *tpath;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
997 GtkTreeIter iter;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
998
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
999 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
1000 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
1001 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
1002
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1003 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
1004 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
1005
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1006 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
1007 filter_rebuild();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1008 }
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1009
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1010 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
1011 GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1012 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1013 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1014
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1015 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
1016
1347
84d289bde1ea Add missing space between switch and first parenthesis.
Laurent Monin <geeqie@norz.org>
parents: 1346
diff changeset
1017 switch (GPOINTER_TO_INT(data))
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1018 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1019 case FE_ENABLE:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1020 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1021 "active", fe->enabled, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1022 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1023 case FE_EXTENSION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1024 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1025 "text", fe->extensions, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1026 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1027 case FE_DESCRIPTION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1028 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1029 "text", fe->description, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1030 break;
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1031 case FE_CLASS:
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1032 g_object_set(GTK_CELL_RENDERER(cell),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1033 "text", _(format_class_list[fe->file_class]), NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1034 break;
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1035 case FE_WRITABLE:
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1036 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
1037 "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
1038 break;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1039 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
1040 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
1041 "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
1042 break;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1043 }
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
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1046 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
1047 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1048 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
1049 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
1050 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
1051 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
1052 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
1053 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
1054 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
1055 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
1056
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1057 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
1058 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
1059
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1060 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
1061 do {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1062 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
1063 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
1064 i++;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1065 } 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
1066
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1067 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
1068 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
1069
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1070 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
1071 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
1072 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
1073 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
1074
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1075 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
1076 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
1077 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
1078
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1079 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
1080 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1081
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1082 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
1083 {
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1084 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
1085 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1086
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1087 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
1088 }
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 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
1091 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1092 GtkWidget *filter_view = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1093 GtkTreeSelection *selection;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1094 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1095 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1096
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1097 if (!filter_store) return;
995
401cd18f8d38 Whitespaces cleanup.
Laurent Monin <geeqie@norz.org>
parents: 980
diff changeset
1098 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
1099 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
1100 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
1101 if (!fe) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1102
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1103 filter_remove_entry(fe);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1104 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1105 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1106 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1107
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1108 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
1109 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1110 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
1111 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
1112 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
1113
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1114 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
1115 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
1116 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
1117
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1118 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
1119 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
1120 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
1121
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1122 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
1123
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1124 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
1125 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1126
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1127 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
1128 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1129 filter_reset();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1130 filter_add_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1131 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1132 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
1133
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1134 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
1135 }
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 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
1138 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1139 /* no op, only so cancel button appears */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1140 }
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 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
1143 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1144 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1145
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1146 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
1147 "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
1148 dummy_cancel_cb, data);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1149 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
1150 _("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
1151 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
1152 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1153 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1154
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1155 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
1156 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1157 GtkWidget *frame = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1158
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1159 gtk_widget_set_sensitive(frame,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1160 !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
1161 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1162
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1163 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
1164 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1165 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
1166 }
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 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
1169 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1170 file_util_trash_clear();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1171 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1172
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1173 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
1174 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1175 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1176 GtkWidget *entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1177 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
1178 "clear_trash", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1179 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1180 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
1181 _("This will remove the trash contents."), FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1182 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
1183 entry = gtk_entry_new();
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
1184 gtk_widget_set_can_focus(entry, FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1185 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
1186 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
1187 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
1188 gtk_widget_show(entry);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1189 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1190 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1191
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1192 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
1193 {
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 GtkWidget *pTextView;
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1195 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
1196 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
1197 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
1198
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 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
1200
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 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
1202 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
1203 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
1204
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1205 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
1206 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
1207 }
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
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1209 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
1210 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1211 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
1212 GtkTextBuffer *buffer;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1213
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1214 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
1215 if (!configwindow) return;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1216
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1217 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
1218 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
1219 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1220
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1221 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
1222 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1223 GenericDialog *gd;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1224
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1225 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
1226 "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
1227 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
1228 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
1229 _("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
1230 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
1231 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
1232 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1233
625
96e360e5949d Add an help button to OSD info configuration in Preferences dialog.
Laurent Monin <geeqie@norz.org>
parents: 597
diff changeset
1234 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
1235 {
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
1236 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
1237 }
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1238
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1239 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
1240 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1241 #if GTK_CHECK_VERSION(3,4,0)
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1242 GtkWidget *dialog;
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1243 char *font;
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1244 PangoFontDescription *font_desc;
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1245
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1246 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
1247 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
1248
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1249 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1250 {
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1251 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
1252 font = pango_font_description_to_string(font_desc);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1253 g_free(c_options->image_overlay.font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1254 c_options->image_overlay.font = g_strdup(font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1255 g_free(font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1256 }
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 gtk_widget_destroy(dialog);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1259 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1260 const char *font;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1261
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1262 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
1263 c_options->image_overlay.font = g_strdup(font);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1264 #endif
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1265 }
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1266
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1267 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
1268 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1269 GtkWidget *dialog;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1270 #if GTK_CHECK_VERSION(3,4,0)
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1271 GdkRGBA colour;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1272
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1273 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
1274 colour.red = options->image_overlay.text_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1275 colour.green = options->image_overlay.text_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1276 colour.blue = options->image_overlay.text_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1277 colour.alpha = options->image_overlay.text_alpha;
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1278 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
1279 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
1280
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1281 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1282 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1283 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
1284 c_options->image_overlay.text_red = colour.red*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1285 c_options->image_overlay.text_green = colour.green*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1286 c_options->image_overlay.text_blue = colour.blue*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1287 c_options->image_overlay.text_alpha = colour.alpha*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1288 }
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1289 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1290 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1291 GdkColor colour;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1292 GtkColorSelection *colorsel;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1293
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1294 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
1295 gtk_window_set_keep_above(GTK_WINDOW(dialog),TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1296 colour.red = options->image_overlay.text_red*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1297 colour.green = options->image_overlay.text_green*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1298 colour.blue = options->image_overlay.text_blue*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1299 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
1300 gtk_color_selection_set_has_opacity_control(colorsel, TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1301 gtk_color_selection_set_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1302 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
1303
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1304 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
1305 {
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1306 gtk_color_selection_get_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1307 c_options->image_overlay.text_red = colour.red/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1308 c_options->image_overlay.text_green = colour.green/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1309 c_options->image_overlay.text_blue = colour.blue/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1310 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
1311 }
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1312 gtk_widget_destroy (dialog);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1313 #endif
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1314 }
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1315
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1316
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1317 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
1318 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1319 GtkWidget *dialog;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1320 #if GTK_CHECK_VERSION(3,4,0)
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1321 GdkRGBA colour;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1322
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1323 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
1324 colour.red = options->image_overlay.background_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1325 colour.green = options->image_overlay.background_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1326 colour.blue = options->image_overlay.background_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1327 colour.alpha = options->image_overlay.background_alpha;
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1328 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
1329 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
1330
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1331 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1332 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1333 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
1334 c_options->image_overlay.background_red = colour.red*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1335 c_options->image_overlay.background_green = colour.green*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1336 c_options->image_overlay.background_blue = colour.blue*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1337 c_options->image_overlay.background_alpha = colour.alpha*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1338 }
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1339 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1340 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1341 GdkColor colour;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1342 GtkColorSelection *colorsel;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1344 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
1345 gtk_window_set_keep_above(GTK_WINDOW(dialog),TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1346 colour.red = options->image_overlay.background_red*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1347 colour.green = options->image_overlay.background_green*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1348 colour.blue = options->image_overlay.background_blue*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1349 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
1350 gtk_color_selection_set_has_opacity_control(colorsel, TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1351 gtk_color_selection_set_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1352 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
1353
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1354 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
1355 {
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1356 gtk_color_selection_get_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1357 c_options->image_overlay.background_red = colour.red/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1358 c_options->image_overlay.background_green = colour.green/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1359 c_options->image_overlay.background_blue = colour.blue/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1360 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
1361 }
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1362 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1363 #endif
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1364 }
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1365
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1366 static void accel_store_populate(void)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1367 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1368 LayoutWindow *lw;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1369 GList *groups, *actions;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1370 GtkAction *action;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1371 const gchar *accel_path;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1372 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1373 GtkTreeIter iter;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1374
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1375 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
1376
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1377 gtk_tree_store_clear(accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1378 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
1379
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1380 g_assert(lw && lw->ui_manager);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1381 groups = gtk_ui_manager_get_action_groups(lw->ui_manager);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1382 while (groups)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1383 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1384 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
1385 while (actions)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1386 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1387 action = GTK_ACTION(actions->data);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1388 accel_path = gtk_action_get_accel_path(action);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1389 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
1390 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1391 gchar *label, *label2, *tooltip, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1392 g_object_get(action,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1393 "tooltip", &tooltip,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1394 "label", &label,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1395 NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1396
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1397 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
1398 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1399 g_free(label);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1400 label = label2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1401 }
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 accel = gtk_accelerator_name(key.accel_key, key.accel_mods);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1404
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1405 if (tooltip)
1619
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1406 {
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1407 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
1408 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
1409 AE_ACTION, label,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1410 AE_KEY, accel,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1411 AE_TOOLTIP, tooltip ? tooltip : "",
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1412 AE_ACCEL, accel_path,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1413 -1);
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1414 }
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1415
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1416 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1417 g_free(label);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1418 g_free(tooltip);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1419 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1420 actions = actions->next;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1421 }
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 groups = groups->next;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1424 }
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 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
1428 {
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1429
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1430 }
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 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
1433 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1434 gchar *accel1 = data;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1435 gchar *accel2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1436 GtkAccelKey key1;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1437 GtkAccelKey key2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1438
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1439 gtk_tree_model_get(model, iter, AE_KEY, &accel2, -1);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1440
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1441 gtk_accelerator_parse(accel1, &key1.accel_key, &key1.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1442 gtk_accelerator_parse(accel2, &key2.accel_key, &key2.accel_mods);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1443
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1444 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
1445 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1446 gtk_tree_store_set(accel_store, iter, AE_KEY, "", -1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1447 DEBUG_1("accelerator key '%s' is already used, removing.", accel1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1448 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1449
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1450 g_free(accel2);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1451
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1452 return FALSE;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1453 }
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 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
1457 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1458 GtkTreeModel *model = (GtkTreeModel *)accel_store;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1459 GtkTreeIter iter;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1460 gchar *acc;
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1461 gchar *accel_path;
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1462 GtkAccelKey old_key, key;
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1463 GtkTreePath *path = gtk_tree_path_new_from_string(path_string);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1464
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1465 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
1466 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
1467
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1468 /* 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
1469 gtk_accel_map_lookup_entry(accel_path, &old_key);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1470
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1471 /* 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
1472 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
1473 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
1474
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1475 /* 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
1476 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
1477
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1478 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
1479 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
1480
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1481 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
1482 gtk_tree_path_free(path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1483 g_free(acc);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1484 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1485
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1486 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
1487 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1488 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
1489 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
1490 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
1491
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1492 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
1493 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
1494 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
1495
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1496 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
1497 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
1498 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
1499
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1500 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
1501
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1502 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
1503 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1504
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1505 static void accel_default_cb(GtkWidget *widget, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1506 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1507 accel_store_populate();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1508
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1509 g_idle_add((GSourceFunc)accel_default_scroll, data);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1510 }
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 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
1513 {
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1514 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
1515 }
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 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
1518 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1519 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1520 gchar *accel_path, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1521
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1522 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
1523 gtk_accel_map_lookup_entry(accel_path, &key);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1524 accel = gtk_accelerator_name(key.accel_key, key.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1525
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1526 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
1527
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1528 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
1529 g_free(accel_path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1530 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1531 }
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 static void accel_reset_cb(GtkWidget *widget, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1534 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1535 GtkTreeSelection *selection;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1536
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1537 if (!accel_store) return;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1538 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(data));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1539 gtk_tree_selection_selected_foreach(selection, &accel_reset_selection, NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1540 }
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
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1544 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
1545 {
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1546 GtkWidget *label;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1547 GtkWidget *vbox;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1548 GtkWidget *scrolled;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1549 GtkWidget *viewport;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1550
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1551 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
1552 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
1553 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
1554 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
1555 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
1556 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
1557 gtk_widget_show(scrolled);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1558
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1559 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
1560 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
1561 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
1562 gtk_widget_show(viewport);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1563
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1564 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
1565 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
1566 gtk_widget_show(vbox);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1567
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1568 return vbox;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1569 }
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1570
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1571 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
1572 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1573 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
1574 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1575 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
1576 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
1577 }
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 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
1581 {
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1582 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
1583 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1584 c_options->thumbnails.spec_standard =FALSE;
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1585 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
1586 }
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 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
1590 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1591 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
1592 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1593 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
1594 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
1595 }
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
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1598 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
1599 GdkEvent *event, gpointer userdata)
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1600 {
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1601 if (pos == GTK_ENTRY_ICON_PRIMARY)
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1602 {
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1603 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
1604 }
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1605 else
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1606 {
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1607 gtk_entry_set_text(GTK_ENTRY(userdata), "");
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1608 }
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
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1611 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
1612 GdkEvent *event, gpointer userdata)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1613 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1614 gchar *rating_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1615
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1616 if (pos == GTK_ENTRY_ICON_PRIMARY)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1617 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1618 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
1619 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
1620 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1621 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1622 else
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1623 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1624 gtk_entry_set_text(GTK_ENTRY(userdata), "U+");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1625 gtk_widget_grab_focus(GTK_WIDGET(userdata));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1626 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
1627 }
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 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
1631 GdkEvent *event, gpointer userdata)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1632 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1633 gchar *rating_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1634
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1635 if (pos == GTK_ENTRY_ICON_PRIMARY)
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1636 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1637 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
1638 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
1639 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1640 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1641 else
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1642 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1643 gtk_entry_set_text(GTK_ENTRY(userdata), "U+");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1644 gtk_widget_grab_focus(GTK_WIDGET(userdata));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1645 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
1646 }
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 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
1650 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1651 GtkContainer *hbox = data;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1652 GString *str = g_string_new(NULL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1653 GtkEntry *hex_code_entry;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1654 gchar *hex_code_full;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1655 gchar **hex_code;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1656 GList *list;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1657 guint64 hex_value = 0;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1658
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1659 list = gtk_container_get_children(hbox);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1660
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1661 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
1662 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
1663
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1664 hex_code = g_strsplit(hex_code_full, "+", 2);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1665 if (hex_code[0] && hex_code[1])
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1666 {
2784
03dd5a7bb410 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2777
diff changeset
1667 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
1668 }
2784
03dd5a7bb410 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2777
diff changeset
1669 if (!hex_value || hex_value > 0x10FFFF)
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1670 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1671 hex_value = 0x003F; // Unicode 'Question Mark'
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1672 }
2784
03dd5a7bb410 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2777
diff changeset
1673 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
1674 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
1675
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1676 g_strfreev(hex_code);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1677 g_string_free(str, TRUE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1678 g_free(hex_code_full);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1679
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1680 return hex_value;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1681 }
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 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
1684 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1685 guint64 star_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1686
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1687 star_symbol = star_rating_symbol_test(widget, data);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1688 c_options->star_rating.star = star_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1689 }
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 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
1692 {
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1693 guint64 rejected_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1694
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1695 rejected_symbol = star_rating_symbol_test(widget, data);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1696 c_options->star_rating.rejected = rejected_symbol;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1697 }
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1698
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1699 /* general options tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1700 static void config_tab_general(GtkWidget *notebook)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1701 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1702 GtkWidget *vbox;
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1703 GtkWidget *hbox;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1704 GtkWidget *group;
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1705 GtkWidget *group_frame;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1706 GtkWidget *subgroup;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1707 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1708 GtkWidget *ct_button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1709 GtkWidget *table;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1710 GtkWidget *spin;
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1711 gint hours, minutes, remainder;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1712 gdouble seconds;
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1713 GtkWidget *star_rating_entry;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1714 GString *str;
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1715 gchar *rating_symbol;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1716
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1717 vbox = scrolled_notebook_page(notebook, _("General"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1718
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1719 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
1720
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1721 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
1722 add_thumb_size_menu(table, 0, 0, _("Size:"));
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
1723 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
1724
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1725 ct_button = pref_checkbox_new_int(group, _("Cache thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
1726 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
1727
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1728 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
1729 pref_checkbox_link_sensitivity(ct_button, subgroup);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1730
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1731 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
1732 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
1733 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
1734 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
1735 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
1736 !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
1737 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
1738
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1739 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
1740 _("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
1741 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
1742 pref_radiobutton_new(group_frame, button, "*/.thumbnails",
2802
34fd30078c53 Bug fix: Preserve cache mode
Colin Clark <colin.clark@cclark.uk>
parents: 2800
diff changeset
1743 !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
1744 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
1745
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1746 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
1747 _("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
1748 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
1749 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
1750 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
1751 G_CALLBACK(cache_standard_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1752
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1753 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
1754 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
1755
2800
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1756 spin = pref_spin_new_int(group, _("Collection preview:"), NULL,
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1757 1, 999, 1,
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1758 options->thumbnails.collection_preview, &c_options->thumbnails.collection_preview);
0ecd4885dc09 Bug fix: Collection preview
Colin Clark <colin.clark@cclark.uk>
parents: 2799
diff changeset
1759 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
1760
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
1761 #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
1762 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
1763 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
1764
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 // 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
1766 // 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
1767 #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
1768
2777
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1769 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
1770
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1771 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
1772 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
1773
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1774 str = g_string_new(NULL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1775 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
1776 pref_label_new(hbox, "Star character: ");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1777 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
1778 pref_label_new(hbox, g_strdup(str->str));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1779 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
1780 star_rating_entry = gtk_entry_new();
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1781 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
1782 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
1783 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
1784 gtk_widget_show(star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1785 button = pref_button_new(NULL, NULL, _("Set"), FALSE,
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1786 G_CALLBACK(star_rating_star_test_cb), hbox);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1787 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
1788 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
1789 gtk_widget_show(button);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1790 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
1791 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
1792 GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1793 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
1794 GTK_ENTRY_ICON_SECONDARY, _("Clear"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1795 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
1796 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
1797 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
1798 GTK_ENTRY_ICON_PRIMARY, _("Default"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1799 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
1800 G_CALLBACK(star_rating_star_icon_cb),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1801 star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1802
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1803 g_string_free(str, TRUE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1804 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1805
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1806 str = g_string_new(NULL);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1807 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
1808 pref_label_new(hbox, "Rejected character: ");
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1809 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
1810 pref_label_new(hbox, g_strdup(str->str));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1811 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
1812 star_rating_entry = gtk_entry_new();
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1813 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
1814 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
1815 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
1816 gtk_widget_show(star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1817 button = pref_button_new(NULL, NULL, _("Set"), FALSE,
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1818 G_CALLBACK(star_rating_rejected_test_cb), hbox);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1819 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
1820 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
1821 gtk_widget_show(button);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1822 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
1823 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
1824 GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1825 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
1826 GTK_ENTRY_ICON_SECONDARY, _("Clear"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1827 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
1828 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
1829 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
1830 GTK_ENTRY_ICON_PRIMARY, _("Default"));
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1831 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
1832 G_CALLBACK(star_rating_rejected_icon_cb),
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1833 star_rating_entry);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1834
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1835 g_string_free(str, TRUE);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1836 g_free(rating_symbol);
813be27b1cd5 Addl fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2770
diff changeset
1837
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1838 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
1839
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
1840 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
1841 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
1842 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
1843 minutes = remainder / (60 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1844 seconds = (gdouble)(remainder % (60 * SLIDESHOW_SUBSECOND_PRECISION)) /
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1845 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1846
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1847 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
1848
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1849 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
1850 0, 23, 1.0, 0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1851 options->slideshow.delay ? hours : 0.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1852 G_CALLBACK(slideshow_delay_hours_cb), NULL);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1853 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
1854 spin = pref_spin_new(hbox, ":" , NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1855 0, 59, 1.0, 0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1856 options->slideshow.delay ? minutes: 0.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1857 G_CALLBACK(slideshow_delay_minutes_cb), NULL);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1858 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
1859 spin = pref_spin_new(hbox, ":", NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1860 SLIDESHOW_MIN_SECONDS, 59, 1.0, 1,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1861 options->slideshow.delay ? seconds : 10.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1862 G_CALLBACK(slideshow_delay_seconds_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1863 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
1864
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
1865 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
1866 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
1867
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1868 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
1869
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1870 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
1871 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
1872 pref_checkbox_new_int(group, _("Preload next image"),
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1873 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
1874
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1875 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
1876 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
1877
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1878 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
1879 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
1880 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
1881 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
1882 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1883 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
1884 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
1885 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1886 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
1887 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
1888 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1889 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
1890 pref_spin_new_int(hbox, _("Rating:"), NULL,
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1891 1, 9999, 1,
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1892 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
1893
2826
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1894 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
1895
d0c6c5ae586b Option to hide predefined keyword tree
Colin Clark <colin.clark@cclark.uk>
parents: 2825
diff changeset
1896 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
1897 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
1898
2756
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1899 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
1900
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1901 help_search_engine_entry = gtk_entry_new();
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1902 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
1903 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
1904 gtk_widget_show(help_search_engine_entry);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1905
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1906 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
1907
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1908 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
1909 GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1910 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
1911 GTK_ENTRY_ICON_SECONDARY, _("Clear"));
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1912 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
1913 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
1914 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
1915 GTK_ENTRY_ICON_PRIMARY, _("Default"));
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1916 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
1917 G_CALLBACK(help_search_engine_entry_icon_cb),
f2f01d556f51 Fix #597: Help file search
Colin Clark <colin.clark@cclark.uk>
parents: 2750
diff changeset
1918 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
1919 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1920
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1921 /* image tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1922 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
1923 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1924 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1925 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1926 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1927 GtkWidget *ct_button;
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1928 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
1929 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1930 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1931
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1932 vbox = scrolled_notebook_page(notebook, _("Image"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1933
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1934 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
1935
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1936 table = pref_table_new(group, 2, 1, FALSE, FALSE);
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1937 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
1938
2084
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1939 #ifdef HAVE_CLUTTER
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1940 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
1941 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
1942 #endif
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1943
1515
99d03a6f394f disabled 2-pass rendering also affect color correction
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1513
diff changeset
1944 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
1945 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
1946
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1947 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
1948 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
1949 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
1950 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
1951 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
1952
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1953 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
1954
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1955 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
1956 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
1957 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
1958 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
1959 100, 999, 1,
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1960 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
1961 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
1962 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
1963
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
1964 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
1965 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
1966 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
1967 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
1968 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1969 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
1970 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
1971 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
1972
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1973 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
1974
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1975 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
1976 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
1977
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1978 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
1979 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
1980
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
1981 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
1982 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
1983
2457
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1984 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
1985
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1986 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
1987 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
1988
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1989 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
1990 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
1991
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1992 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
1993 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
1994
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1995 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
1996
2066
01d2c966209e exif autorotate for proofs
Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
parents: 2059
diff changeset
1997 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
1998 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
1999 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2000
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2001 /* windows tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2002 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
2003 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2004 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2005 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2006 GtkWidget *group;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2007 GtkWidget *button;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2008 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2009 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2010
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
2011 vbox = scrolled_notebook_page(notebook, _("Windows"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2012
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2013 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
2014
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2015 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
2016 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
2017
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2018 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
2019 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
2020 pref_checkbox_link_sensitivity(ct_button, button);
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2021
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2022 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
2023 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
2024
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
2025 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
2026 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
2027
2740
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
2028 pref_checkbox_new_int(group, _("Show window IDs"),
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
2029 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
2030
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2031 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
2032
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2033 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
2034 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
2035
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2036 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
2037 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
2038 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
2039 spin = pref_spin_new_int(hbox, NULL, NULL,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2040 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
2041 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
2042 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
2043
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2044 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
2045
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2046 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
2047 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
2048 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
2049 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
2050 gtk_widget_show(hbox);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2051
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2052 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
2053 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
2054 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
2055 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
2056 }
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2057
2866
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2058 #define PRE_FORMATTED_COLUMNS 5
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2059 static void config_tab_osd(GtkWidget *notebook)
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2060 {
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2061 GtkWidget *hbox;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2062 GtkWidget *vbox;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2063 GtkWidget *vbox_buttons;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2064 GtkWidget *group;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2065 GtkWidget *button;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2066 GtkWidget *image_overlay_template_view;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2067 GtkWidget *scrolled;
2866
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2068 GtkWidget *scrolled_pre_formatted;
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2069 GtkTextBuffer *buffer;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2070 GtkWidget *label;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2071 GtkWidget * subgroup;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2072 gint i = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2073 gint rows = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2074 gint cols = 0;
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2075
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2076 vbox = scrolled_notebook_page(notebook, _("OSD"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2077
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2078 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
2079
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2080 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
2081
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2082 subgroup = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
2866
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2083
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2084 scrolled_pre_formatted = osd_new(PRE_FORMATTED_COLUMNS, image_overlay_template_view);
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2085 gtk_widget_set_size_request(scrolled_pre_formatted, 200, 150);
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2086 gtk_box_pack_start(GTK_BOX(subgroup), scrolled_pre_formatted, FALSE, FALSE, 0);
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2087 gtk_widget_show(scrolled_pre_formatted);
87242753ed2c Ref #160: Replace print dialog by standard GTK dialog
Colin Clark <colin.clark@cclark.uk>
parents: 2860
diff changeset
2088 gtk_widget_show(subgroup);
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2089
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2090 pref_line(group, PREF_PAD_GAP);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2091
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2092 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
2093
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2094 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
2095 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
2096 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
2097 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
2098 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
2099 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
2100 gtk_widget_show(scrolled);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2101
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2102 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
2103 _("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
2104
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2105 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
2106 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
2107
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2108 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
2109
2337
7ff7000c458c Image overlay configurable items
Colin Clark <cclark@mcb.net>
parents: 2335
diff changeset
2110 #if GTK_CHECK_VERSION(3,4,0)
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
2111 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
2112 G_CALLBACK(image_overlay_set_font_cb), notebook);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2113 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2114 button = gtk_font_button_new();
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2115 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
2116 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
2117 g_signal_connect(G_OBJECT(button), "font-set",
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2118 G_CALLBACK(image_overlay_set_font_cb),NULL);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2119 #endif
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
2120 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
2121 gtk_widget_show(button);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
2122
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2123 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
2124 G_CALLBACK(image_overlay_set_text_colour_cb), NULL);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2125 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
2126 gtk_widget_show(button);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2127
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2128 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
2129 G_CALLBACK(image_overlay_set_background_colour_cb), NULL);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2130 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
2131 gtk_widget_show(button);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2132 image_overlay_set_text_colours();
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2133
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2134 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
2135 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
2136 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
2137 gtk_widget_show(button);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2138
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2139 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
2140 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
2141 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
2142 gtk_widget_show(button);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2143
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2144 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
2145 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
2146 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
2147 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
2148
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2149 pref_line(group, PREF_PAD_GAP);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2150
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2151 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
2152 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2153 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
2154 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2155 label = gtk_label_new(_("%Exif.Image.Orientation%"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2156 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
2157 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2158 pref_spacer(group,TRUE);
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 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
2161 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2162 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
2163 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2164 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
2165 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
2166 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2167 pref_spacer(group,TRUE);
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 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
2170 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2171 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
2172 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2173 label = gtk_label_new(_("%path:39%"));
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2174 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
2175 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2176 pref_spacer(group,TRUE);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2177
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2178 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
2179 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2180 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
2181 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2182 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
2183 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
2184 gtk_widget_show(label);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2185 pref_spacer(group,TRUE);
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 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
2188 hbox = gtk_hbox_new(FALSE, 0);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2189 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
2190 gtk_widget_show(hbox);
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
2191 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
2192 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
2193 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
2194 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2195
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2196 static GtkTreeModel *create_class_model(void)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2197 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2198 GtkListStore *model;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2199 GtkTreeIter iter;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2200 gint i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2201
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2202 /* 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
2203 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
2204 for (i = 0; i < FILE_FORMAT_CLASSES; i++)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2205 {
1346
b3378273091e No space between function name and first parenthesis, it eases greping (see CODING).
Laurent Monin <geeqie@norz.org>
parents: 1336
diff changeset
2206 gtk_list_store_append(model, &iter);
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2207 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
2208 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2209 return GTK_TREE_MODEL (model);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2210 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2211
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2212
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2213 /* filtering tab */
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
2214 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
2215 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2216 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2217 GtkWidget *frame;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2218 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2219 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2220 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2221 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2222 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2223 GtkWidget *filter_view;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2224 GtkCellRenderer *renderer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2225 GtkTreeSelection *selection;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2226 GtkTreeViewColumn *column;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2227
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
2228 vbox = scrolled_notebook_page(notebook, _("Files"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2229
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2230 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
2231
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
2232 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
2233 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
2234 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
2235 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
2236 pref_checkbox_new_int(group, _("Case sensitive sort"),
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
2237 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
2238 pref_checkbox_new_int(group, _("Natural sort order"),
16fcfac12c77 Fix #417: Natural sort order
Colin Clark <cclark@mcb.net>
parents: 2386
diff changeset
2239 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
2240 pref_checkbox_new_int(group, _("Disable file extension checks"),
dec8d9db5770 Fix #333 Renaming file extensions
Colin Clark <cclark@mcb.net>
parents: 2265
diff changeset
2241 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
2242
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2243 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
2244 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
2245
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2246
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2247 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
2248
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2249 sidecar_ext_entry = gtk_entry_new();
1229
2f11fec715ca sidecar files grouping was made case-insensitive
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1216
diff changeset
2250 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
2251 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
2252 gtk_widget_show(sidecar_ext_entry);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
2253
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2254 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
2255
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2256 frame = pref_group_parent(group);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2257 g_signal_connect(G_OBJECT(ct_button), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2258 G_CALLBACK(filter_disable_cb), frame);
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
2259 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
2260
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2261 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2262 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
2263 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
2264 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
2265 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2266
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2267 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
2268 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
2269 g_object_unref(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2270 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
2271 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
2272
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2273 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
2274
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2275 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2276 gtk_tree_view_column_set_title(column, _("Filter"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2277 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2278
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2279 renderer = gtk_cell_renderer_toggle_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2280 g_signal_connect(G_OBJECT(renderer), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2281 G_CALLBACK(filter_store_enable_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2282 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
2283 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
2284 GINT_TO_POINTER(FE_ENABLE), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2285
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2286 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2287 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2288 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
2289 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
2290 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
2291 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
2292 GINT_TO_POINTER(FE_EXTENSION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2293 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
2294
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2295 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2296 gtk_tree_view_column_set_title(column, _("Description"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2297 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
2298 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
2299 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
2300
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2301 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2302 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2303 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
2304 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
2305 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
2306 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
2307 GINT_TO_POINTER(FE_DESCRIPTION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2308 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
2309
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2310 column = gtk_tree_view_column_new();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2311 gtk_tree_view_column_set_title(column, _("Class"));
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2312 gtk_tree_view_column_set_resizable(column, TRUE);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2313 renderer = gtk_cell_renderer_combo_new();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2314 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
2315 "model", create_class_model(),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2316 "text-column", 0,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2317 "has-entry", FALSE,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2318 NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2319
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2320 g_signal_connect(G_OBJECT(renderer), "edited",
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2321 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
2322 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
2323 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
2324 GINT_TO_POINTER(FE_CLASS), NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2325 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
2326
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2327 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
2328 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
2329 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
2330 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
2331 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
2332 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
2333 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
2334 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
2335 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
2336 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
2337
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2338 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
2339 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
2340 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
2341 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
2342 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
2343 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
2344 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
2345 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
2346 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
2347 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
2348
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2349
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2350 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2351 gtk_container_add(GTK_CONTAINER(scrolled), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2352 gtk_widget_show(filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2353
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2354 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
2355
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2356 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
2357 G_CALLBACK(filter_default_cb), filter_view);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2358 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
2359 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2360
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2361 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
2362 G_CALLBACK(filter_remove_cb), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2363 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
2364 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2365
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2366 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
2367 G_CALLBACK(filter_add_cb), filter_view);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2368 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
2369 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
2370 }
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2371
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2372 /* metadata tab */
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2373 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
2374 {
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2375 GtkWidget *vbox;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2376 GtkWidget *hbox;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2377 GtkWidget *group;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2378 GtkWidget *ct_button;
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2379 GtkWidget *label;
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2380 gchar *text;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2381
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2382 vbox = scrolled_notebook_page(notebook, _("Metadata"));
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2383
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2384
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2385 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
2386 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2387 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
2388 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2389 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
2390 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
2391
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
2392 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
2393 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
2394 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2395 gtk_widget_set_sensitive(ct_button, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2396 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2397
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2398 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
2399 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
2400
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2401 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
2402 label = pref_label_new(group, text);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2403 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
2404 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
2405 g_free(text);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2406
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2407 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
2408 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2409 gtk_widget_set_sensitive(group, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2410 #endif
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2411
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2412 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
2413 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
2414
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2415 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
2416 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
2417
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2418 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
2419 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
2420
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2421 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
2422 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
2423
2454
93d1c77a312b Fix #147: Alternative format for sidecar extension
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2444
diff changeset
2424 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
2425 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
2426
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2427 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
2428 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2429 gtk_widget_set_sensitive(group, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2430 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2431
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2432 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
2433 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
2434
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2435
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2436 group = pref_group_new(vbox, FALSE, _("Miscellaneous"), GTK_ORIENTATION_VERTICAL);
1663
c39c4ee5d94c improved description string
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1644
diff changeset
2437 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
2438 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
2439
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2440 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
2441 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
2442
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2443 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
2444 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
2445 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2446 gtk_widget_set_sensitive(ct_button, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2447 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2448
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2449 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
2450
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2451 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
2452 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
2453
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2454 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
2455 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
2456
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2457 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
2458 options->metadata.confirm_timeout, &c_options->metadata.confirm_timeout);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2459
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2460 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
2461 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
2462
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2463 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
2464 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
2465
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2466 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
2467
2e819f4a7a41 Read metadata in the idle loop
Colin Clark <colin.clark@cclark.uk>
parents: 2769
diff changeset
2468 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
2469 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
2470 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
2471 }
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2472
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2473 /* keywords tab */
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2474
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2475 typedef struct _KeywordFindData KeywordFindData;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2476 struct _KeywordFindData
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2477 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2478 GenericDialog *gd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2479
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2480 GList *list;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2481 GList *list_dir;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2482
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2483 GtkWidget *button_close;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2484 GtkWidget *button_stop;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2485 GtkWidget *button_start;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2486 GtkWidget *progress;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2487 GtkWidget *spinner;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2488
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2489 GtkWidget *group;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2490 GtkWidget *entry;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2491
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2492 gboolean recurse;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2493
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2494 guint idle_id; /* event source id */
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2495 };
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2496
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2497 #define KEYWORD_DIALOG_WIDTH 400
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2498
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2499 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
2500 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2501 GList *list_d = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2502 GList *list_f = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2503
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2504 if (kfd->recurse)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2505 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2506 filelist_read(dir_fd, &list_f, &list_d);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2507 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2508 else
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2509 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2510 filelist_read(dir_fd, &list_f, NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2511 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2512
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2513 list_f = filelist_filter(list_f, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2514 list_d = filelist_filter(list_d, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2515
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2516 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
2517 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
2518 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2519
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2520 static void keywords_find_reset(KeywordFindData *kfd)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2521 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2522 filelist_free(kfd->list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2523 kfd->list = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2524
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2525 filelist_free(kfd->list_dir);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2526 kfd->list_dir = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2527 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2528
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2529 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
2530 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2531 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2532
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2533 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
2534
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2535 keywords_find_reset(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2536 generic_dialog_close(kfd->gd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2537 g_free(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2538 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2539
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2540 static void keywords_find_finish(KeywordFindData *kfd)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2541 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2542 keywords_find_reset(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2543
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2544 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
2545 spinner_set_interval(kfd->spinner, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2546
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2547 gtk_widget_set_sensitive(kfd->group, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2548 gtk_widget_set_sensitive(kfd->button_start, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2549 gtk_widget_set_sensitive(kfd->button_stop, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2550 gtk_widget_set_sensitive(kfd->button_close, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2551 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2552
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2553 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
2554 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2555 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2556
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2557 g_idle_remove_by_data(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2558
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2559 keywords_find_finish(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2560 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2561
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2562 static gboolean keywords_find_file(gpointer data)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2563 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2564 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2565 GtkTextIter iter;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2566 GtkTextBuffer *buffer;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2567 gchar *tmp;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2568 GList *keywords;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2569
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2570 if (kfd->list)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2571 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2572 FileData *fd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2573
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2574 fd = kfd->list->data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2575 kfd->list = g_list_remove(kfd->list, fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2576
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2577 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
2578 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
2579
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2580 while (keywords)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2581 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2582 gtk_text_buffer_get_end_iter(buffer, &iter);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2583 tmp = g_strconcat(keywords->data, "\n", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2584 gtk_text_buffer_insert(buffer, &iter, tmp, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2585 g_free(tmp);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2586 keywords = keywords->next;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2587 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2588
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2589 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
2590 file_data_unref(fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2591 string_list_free(keywords);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2592
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2593 return (TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2594 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2595 else if (kfd->list_dir)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2596 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2597 FileData *fd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2598
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2599 fd = kfd->list_dir->data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2600 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
2601
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2602 keywords_find_folder(kfd, fd);
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 file_data_unref(fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2605
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2606 return TRUE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2607 }
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 keywords_find_finish(kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2610
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2611 return FALSE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2612 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2613
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2614 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
2615 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2616 KeywordFindData *kfd = data;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2617 gchar *path;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2618
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2619 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
2620
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2621 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
2622 parse_out_relatives(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2623
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2624 if (!isdir(path))
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 warning_dialog(_("Invalid folder"),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2627 _("The specified folder can not be found."),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2628 GTK_STOCK_DIALOG_WARNING, kfd->gd->dialog);
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 else
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2631 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2632 FileData *dir_fd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2633
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2634 gtk_widget_set_sensitive(kfd->group, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2635 gtk_widget_set_sensitive(kfd->button_start, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2636 gtk_widget_set_sensitive(kfd->button_stop, TRUE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2637 gtk_widget_set_sensitive(kfd->button_close, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2638 spinner_set_interval(kfd->spinner, SPINNER_SPEED);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2639
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2640 dir_fd = file_data_new_dir(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2641 keywords_find_folder(kfd, dir_fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2642 file_data_unref(dir_fd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2643 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
2644 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2645
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2646 g_free(path);
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_dialog(GtkWidget *widget, const gchar *path)
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 KeywordFindData *kfd;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2652 GtkWidget *hbox;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2653 GtkWidget *label;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2654
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2655 kfd = g_new0(KeywordFindData, 1);
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 kfd->gd = generic_dialog_new(_("Search for keywords"),
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2658 "search_for_keywords",
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2659 widget, FALSE,
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2660 NULL, kfd);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2661 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
2662 kfd->gd->cancel_cb = keywords_find_close_cb;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2663 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
2664 keywords_find_close_cb, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2665 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
2666 keywords_find_start_cb, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2667 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
2668 keywords_find_stop_cb, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2669 gtk_widget_set_sensitive(kfd->button_stop, FALSE);
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 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
2672
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2673 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
2674 pref_spacer(hbox, PREF_PAD_INDENT);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2675 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
2676
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2677 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
2678 pref_label_new(hbox, _("Folder:"));
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2679
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2680 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
2681 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
2682 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
2683 gtk_widget_show(label);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2684
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2685 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
2686
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2687 pref_line(kfd->gd->vbox, PREF_PAD_SPACE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2688 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
2689
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2690 kfd->progress = gtk_entry_new();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2691 gtk_widget_set_can_focus(kfd->progress, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2692 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
2693 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
2694 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
2695 gtk_widget_show(kfd->progress);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2696
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2697 kfd->spinner = spinner_new(NULL, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2698 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
2699 gtk_widget_show(kfd->spinner);
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 kfd->list = NULL;
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 gtk_widget_show(kfd->gd->dialog);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2704 }
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 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
2707 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2708 const gchar *path = layout_get_path(NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2709
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2710 if (!path || !*path) path = homedir();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2711 keywords_find_dialog(widget, path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2712 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2713
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2714 static void config_tab_keywords_save()
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2715 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2716 GtkTextIter start, end;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2717 GtkTextBuffer *buffer;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2718 GList *kw_list = NULL;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2719 GList *work;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2720 gchar *buffer_text;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2721 gchar *kw_split;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2722 gboolean found;
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 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
2725 gtk_text_buffer_get_bounds(buffer, &start, &end);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2726
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2727 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
2728
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2729 kw_split = strtok(buffer_text, "\n");
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2730 while (kw_split != NULL)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2731 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2732 work = kw_list;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2733 found = FALSE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2734 while (work)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2735 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2736 if (g_strcmp0(work->data, kw_split) == 0)
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 found = TRUE;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2739 break;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2740 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2741 work = work->next;
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 if (!found)
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 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
2746 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2747 kw_split = strtok(NULL, "\n");
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2748 }
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 keyword_list_set(kw_list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2751
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2752 string_list_free(kw_list);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2753 g_free(buffer_text);
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
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2756 static void config_tab_keywords(GtkWidget *notebook)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2757 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2758 GtkWidget *hbox;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2759 GtkWidget *vbox;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2760 GtkWidget *group;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2761 GtkWidget *button;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2762 GtkWidget *scrolled;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2763 GtkTextIter iter;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2764 GtkTextBuffer *buffer;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2765 gchar *tmp;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2766
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2767 vbox = scrolled_notebook_page(notebook, _("Keywords"));
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 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
2770
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2771 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
2772
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2773 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
2774 G_CALLBACK(keywords_find_cb), keyword_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2775 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
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 keyword_text = gtk_text_view_new();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2779 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
2780 scrolled = gtk_scrolled_window_new(NULL, NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2781 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
2782 gtk_widget_show(scrolled);
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 gtk_container_add(GTK_CONTAINER(scrolled), keyword_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2785 gtk_widget_show(keyword_text);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2786
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2787 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
2788
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2789 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
2790 gtk_text_buffer_create_tag(buffer, "monospace",
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2791 "family", "monospace", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2792
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2793 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
2794 gtk_text_buffer_get_start_iter(buffer, &iter);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2795 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
2796 gchar *path;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2797
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2798 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
2799
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2800 GList *kwl = keyword_list_get();
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2801 kwl = g_list_first(kwl);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2802 while (kwl)
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2803 {
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2804 gtk_text_buffer_get_end_iter (buffer, &iter);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2805 tmp = g_strconcat(kwl->data, "\n", NULL);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2806 gtk_text_buffer_insert(buffer, &iter, tmp, -1);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2807 kwl = kwl->next;
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2808 g_free(tmp);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2809 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2810
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2811 gtk_text_buffer_set_modified(buffer, FALSE);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2812
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2813 g_free(path);
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2814 }
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
2815
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2816 /* metadata tab */
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2817 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2818 static void intent_menu_cb(GtkWidget *combo, gpointer data)
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2819 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2820 gint *option = data;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2821
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2822 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2823 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2824 case 0:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2825 default:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2826 *option = INTENT_PERCEPTUAL;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2827 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2828 case 1:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2829 *option = INTENT_RELATIVE_COLORIMETRIC;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2830 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2831 case 2:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2832 *option = INTENT_SATURATION;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2833 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2834 case 3:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2835 *option = INTENT_ABSOLUTE_COLORIMETRIC;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2836 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2837 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2838 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2839
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2840 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
2841 gint option, gint *option_c)
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2842 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2843 GtkWidget *combo;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2844 gint current = 0;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2845
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2846 *option_c = option;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2847
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2848 pref_table_label(table, column, row, text, 0.0);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2849
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2850 combo = gtk_combo_box_text_new();
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2851
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2852 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
2853 if (option == INTENT_PERCEPTUAL) current = 0;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2854 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
2855 if (option == INTENT_RELATIVE_COLORIMETRIC) current = 1;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2856 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
2857 if (option == INTENT_SATURATION) current = 2;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2858 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
2859 if (option == INTENT_ABSOLUTE_COLORIMETRIC) current = 3;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2860
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2861 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2862
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2863 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
2864
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2865 g_signal_connect(G_OBJECT(combo), "changed",
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2866 G_CALLBACK(intent_menu_cb), option_c);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2867
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2868 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
2869 GTK_EXPAND | GTK_FILL, 0, 0, 0);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2870 gtk_widget_show(combo);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2871 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2872 #endif
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2873
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2874 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
2875 {
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2876 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2877 GtkWidget *vbox;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2878 GtkWidget *group;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2879 GtkWidget *tabcomp;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2880 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2881 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2882
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
2883 vbox = scrolled_notebook_page(notebook, _("Color management"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2884
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2885 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
2886 #ifndef HAVE_LCMS
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2887 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
2888 #endif
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2889
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2890 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
2891 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
2892
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2893 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
2894 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2895
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2896 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
2897 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2898
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2899 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
2900 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2901
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2902 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
2903 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
2904 GtkWidget *entry;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2905 gchar *buf;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2906
1625
e5c894eda2a4 Ongoing translation
Klaus Ethgen <Klaus@Ethgen.de>
parents: 1619
diff changeset
2907 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
2908 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
2909 g_free(buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2910
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
2911 entry = gtk_entry_new();
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2912 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
2913 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
2914 {
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2915 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
2916 }
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2917 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
2918 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
2919 gtk_widget_show(entry);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2920 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
2921
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
2922 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
2923 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
2924 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
2925 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
2926 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
2927 gtk_widget_show(tabcomp);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2928 color_profile_input_file_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2929 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2930
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2931 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
2932 #ifndef HAVE_LCMS
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2933 gtk_widget_set_sensitive(pref_group_parent(group), FALSE);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2934 #endif
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2935 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
2936 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
2937
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2938 table = pref_table_new(group, 2, 1, FALSE, FALSE);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2939
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2940 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
2941 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
2942 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
2943 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
2944 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
2945 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2946 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
2947 #endif
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2948 gtk_table_attach(GTK_TABLE(table), tabcomp, 1, 2,
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2949 0, 1,
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2950 GTK_FILL | GTK_EXPAND, 0, 0, 0);
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2951
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2952 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
2953 }
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
2954
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2955 /* advanced entry tab */
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2956 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
2957 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2958 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
2959 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2960 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
2961 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2962 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2963
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2964 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
2965 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2966 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
2967 {
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2968 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
2969 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2970 }
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2971
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2972 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
2973 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2974 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2975 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2976 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2977 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2978 GtkWidget *tabcomp;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2979 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2980 GtkWidget *spin;
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
2981 GtkWidget *table;
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
2982 GtkWidget *marks;
2769
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
2983 GtkWidget *with_rename;
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
2984 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
2985
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2986 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
2987
1685
041cdca65160 Revert "Add pgettext for some ambiguous strings"
Klaus Ethgen <Klaus@Ethgen.de>
parents: 1678
diff changeset
2988 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
2989
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2990 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
2991 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
2992 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
2993 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
2994 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
2995 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
2996
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
2997 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
2998 !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
2999
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3000 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
3001 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3002
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3003 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
3004 pref_label_new(hbox, _("Folder:"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3005
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
3006 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
3007 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
3008 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
3009 gtk_widget_show(tabcomp);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3010
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3011 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
3012 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3013
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3014 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
3015 spin = pref_spin_new_int(hbox, _("Maximum size:"), _("MB"),
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3016 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
3017 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
3018 button = pref_button_new(NULL, NULL, _("View"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3019 G_CALLBACK(safe_delete_view_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3020 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
3021 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3022
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3023 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
3024 G_CALLBACK(safe_delete_clear_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3025 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
3026 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
3027 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
3028 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3029
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3030 pref_spacer(group, PREF_PAD_GROUP);
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3031
497
29dc838f7d6b Allow the copy of file paths to clipboard.
Laurent Monin <geeqie@norz.org>
parents: 475
diff changeset
3032
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3033 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
3034
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3035 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
3036 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
3037
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3038 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
3039 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
3040
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3041 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
3042 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
3043
2750
0eac8ea9b1be Fix #220, 269: marks do not persist
Colin Clark <colin.clark@cclark.uk>
parents: 2746
diff changeset
3044 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
3045 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
3046 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
3047
2769
ed8cc78cb9dd Option to change default button for copy/move dialogs
Colin Clark <colin.clark@cclark.uk>
parents: 2768
diff changeset
3048 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
3049 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
3050 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
3051
2793
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3052 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
3053 options->collections_on_top, &c_options->collections_on_top);
2feed80bcd34 Collections changes
Colin Clark <colin.clark@cclark.uk>
parents: 2784
diff changeset
3054 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
3055
2424
83d9886b9bcb Preferences: Open recent list maximum size
Colin Clark <cclark@mcb.net>
parents: 2423
diff changeset
3056 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
3057 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
3058
458
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
3059 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
3060 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
3061
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
3062 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
3063 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
3064
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3065 pref_spacer(group, PREF_PAD_GROUP);
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3066
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3067 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
3068
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3069 pref_checkbox_new_int(group, _("Progressive keyboard scrolling"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
3070 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
3071 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
3072 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
3073 pref_checkbox_new_int(group, _("Mouse wheel scrolls image"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
3074 options->mousewheel_scrolls, &c_options->mousewheel_scrolls);
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
3075 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
3076 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
3077 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
3078 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
3079 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
3080 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
3081
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3082
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3083 #ifdef DEBUG
2860
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3084 pref_spacer(group, PREF_PAD_GROUP);
b20a96b979a3 Fix #437: Delete to standard Trash directory
Colin Clark <colin.clark@cclark.uk>
parents: 2835
diff changeset
3085
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3086 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
3087
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
3088 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
3089 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
3090
2596
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
3091 pref_checkbox_new_int(group, _("Timer data"),
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
3092 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
3093
2505
d01e5b8e80d9 Eliminate FIXME: Log window line limit
Colin Clark <colin.clark@cclark.uk>
parents: 2501
diff changeset
3094 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
3095 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
3096 #endif
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3097 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3098
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3099 /* accelerators tab */
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3100 static void config_tab_accelerators(GtkWidget *notebook)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3101 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3102 GtkWidget *hbox;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3103 GtkWidget *vbox;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3104 GtkWidget *group;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3105 GtkWidget *button;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3106 GtkWidget *scrolled;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3107 GtkWidget *accel_view;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3108 GtkCellRenderer *renderer;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3109 GtkTreeSelection *selection;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3110 GtkTreeViewColumn *column;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3111
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3112 vbox = scrolled_notebook_page(notebook, _("Keyboard"));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3113
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3114 group = pref_group_new(vbox, TRUE, _("Accelerators"), GTK_ORIENTATION_VERTICAL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3115
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3116 scrolled = gtk_scrolled_window_new(NULL, NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3117 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
3118 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
3119 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
3120 gtk_widget_show(scrolled);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3121
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3122 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
3123
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3124 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
3125 g_object_unref(accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3126 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
3127 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
3128
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3129 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
3130
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3131 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3132
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3133 column = gtk_tree_view_column_new_with_attributes(_("Action"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3134 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3135 "text", AE_ACTION,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3136 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3137
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3138 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
3139 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3140 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
3141
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3142
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3143 renderer = gtk_cell_renderer_accel_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3144 g_signal_connect(G_OBJECT(renderer), "accel-cleared",
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3145 G_CALLBACK(accel_store_cleared_cb), accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3146 g_signal_connect(G_OBJECT(renderer), "accel-edited",
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3147 G_CALLBACK(accel_store_edited_cb), accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3148
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3149
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3150 g_object_set (renderer,
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3151 "editable", TRUE,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3152 "accel-mode", GTK_CELL_RENDERER_ACCEL_MODE_OTHER,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3153 NULL);
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3154
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3155 column = gtk_tree_view_column_new_with_attributes(_("KEY"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3156 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3157 "text", AE_KEY,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3158 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3159
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3160 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
3161 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3162 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
3163
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3164 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3165
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3166 column = gtk_tree_view_column_new_with_attributes(_("Tooltip"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3167 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3168 "text", AE_TOOLTIP,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3169 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3170
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3171 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
3172 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3173 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
3174
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3175 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3176
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3177 column = gtk_tree_view_column_new_with_attributes("Accel",
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3178 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3179 "text", AE_ACCEL,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3180 NULL);
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3181
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3182 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
3183 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3184 gtk_tree_view_append_column(GTK_TREE_VIEW(accel_view), column);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3185
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3186 accel_store_populate();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3187 gtk_container_add(GTK_CONTAINER(scrolled), accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3188 gtk_widget_show(accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3189
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3190 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
3191
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3192 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
3193 G_CALLBACK(accel_default_cb), accel_view);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3194 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
3195 gtk_widget_show(button);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3196
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3197 button = pref_button_new(NULL, NULL, _("Reset selected"), FALSE,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3198 G_CALLBACK(accel_reset_cb), accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3199 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
3200 gtk_widget_show(button);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3201 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
3202
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3203 /* toolbar tab */
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3204 static void config_tab_toolbar(GtkWidget *notebook)
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3205 {
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3206 GtkWidget *vbox;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3207 GtkWidget *toolbardata;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3208 LayoutWindow *lw;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3209
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3210 lw = layout_window_list->data;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3211
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3212 vbox = scrolled_notebook_page(notebook, _("Toolbar"));
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3213
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3214 toolbardata = toolbar_select_new(lw);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3215 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
3216 gtk_widget_show(vbox);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3217 }
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3218
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3219 /* stereo tab */
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3220 static void config_tab_stereo(GtkWidget *notebook)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3221 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3222 GtkWidget *vbox;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3223 GtkWidget *group;
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
3224 GtkWidget *group2;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3225 GtkWidget *table;
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3226 GtkWidget *box;
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3227 GtkWidget *box2;
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
3228 GtkWidget *fs_button;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3229 vbox = scrolled_notebook_page(notebook, _("Stereo"));
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3230
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3231 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
3232
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3233 table = pref_table_new(group, 2, 1, FALSE, FALSE);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3234 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
3235
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3236 table = pref_table_new(group, 2, 2, TRUE, FALSE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3237 box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3238 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
3239 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
3240 box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3241 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
3242 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
3243 box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3244 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
3245 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
3246 box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3247 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
3248 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
3249 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
3250 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
3251 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
3252 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
3253
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3254 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
3255 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
3256 options->stereo.enable_fsmode, &c_options->stereo.enable_fsmode);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3257 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
3258 pref_checkbox_link_sensitivity(fs_button, box2);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3259 table = pref_table_new(box2, 2, 1, FALSE, FALSE);
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3260 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
3261 table = pref_table_new(box2, 2, 2, TRUE, FALSE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3262 box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3263 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
3264 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
3265 box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3266 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
3267 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
3268 box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3269 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
3270 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
3271 box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3272 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
3273 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
3274 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
3275 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
3276 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
3277 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
3278
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3279 group2 = pref_group_new(box2, FALSE, _("Fixed position"), GTK_ORIENTATION_VERTICAL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
3280 table = pref_table_new(group2, 5, 3, FALSE, FALSE);
1921
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3281 pref_table_spin_new_int(table, 0, 0, _("Width"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3282 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
3283 pref_table_spin_new_int(table, 3, 0, _("Height"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
3284 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
3285 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
3286 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
3287 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
3288 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
3289 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
3290 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
3291 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
3292 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
3293
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3294 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
3295
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3296 /* Main preferences window */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3297 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
3298 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3299 GtkWidget *win_vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3300 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3301 GtkWidget *notebook;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3302 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3303 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3304
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
3305 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
3306
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
3307 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
3308 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
3309 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
3310 G_CALLBACK(config_window_delete), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3311 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
3312 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
3313 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
3314
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3315 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
3316 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
3317 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
3318
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3319 notebook = gtk_notebook_new();
2875
198c76b748e0 Preferences tabs orientation
Colin Clark <colin.clark@cclark.uk>
parents: 2866
diff changeset
3320 gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_LEFT);
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
3321 gtk_notebook_set_scrollable(GTK_NOTEBOOK(notebook), TRUE);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3322 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
3323
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3324 config_tab_general(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3325 config_tab_image(notebook);
2835
bb44bd76f857 Simplify OSD settings in Preferences
Colin Clark <colin.clark@cclark.uk>
parents: 2826
diff changeset
3326 config_tab_osd(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3327 config_tab_windows(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3328 config_tab_accelerators(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3329 config_tab_files(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3330 config_tab_metadata(notebook);
2824
c9eded8ad4e0 Fix #305: Faster Tagging (Keywords)
Colin Clark <colin.clark@cclark.uk>
parents: 2802
diff changeset
3331 config_tab_keywords(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3332 config_tab_color(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3333 config_tab_stereo(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3334 config_tab_behavior(notebook);
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
3335 config_tab_toolbar(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3336
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3337 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
3338 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
3339 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
3340 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
3341 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
3342
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3343 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
3344 G_CALLBACK(config_window_help_cb), notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3345 gtk_container_add(GTK_CONTAINER(hbox), button);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3346 gtk_widget_set_can_default(button, TRUE);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3347 gtk_widget_show(button);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
3348
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3349 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
3350 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
3351 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3352 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
3353 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
3354 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
3355
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3356 ct_button = button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3357
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
3358 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
3359 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
3360 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3361 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
3362 gtk_widget_show(button);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
3363
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3364 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
3365 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
3366 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3367 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
3368 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
3369
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3370 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
3371 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
3372 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
3373 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
3374 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
3375
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3376 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
3377 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3378 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
3379 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
3380
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3381 gtk_widget_show(notebook);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3382
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3383 gtk_widget_show(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3384 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3385
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3386 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3387 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3388 * config window show (public)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3389 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
3390 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3391
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3392 void show_config_window(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3393 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3394 if (configwindow)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3395 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3396 gtk_window_present(GTK_WINDOW(configwindow));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3397 return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3398 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3399
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3400 config_window_create();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3401 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3402
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3403 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3404 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3405 * about window
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3406 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3407 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3408
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3409 void show_about_window(LayoutWindow *lw)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3410 {
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3411 GdkPixbuf *pixbuf_logo;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3412 GdkPixbuf *pixbuf_icon;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3413 gchar *authors[1000];
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3414 gchar *comment;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3415 gint i_authors = 0;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3416 gchar *path;
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3417 GString *copyright;
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3418 gchar *zd_path;
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3419 ZoneDetect *cd;
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3420 FILE *fp = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3421 #define LINE_LENGTH 1000
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3422 gchar line[LINE_LENGTH];
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3423
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3424 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
3425 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
3426
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3427 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
3428 cd = ZDOpenDatabase(zd_path);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3429 if (cd)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3430 {
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3431 copyright = g_string_append(copyright, ZDGetNotice(cd));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3432 }
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3433 ZDCloseDatabase(cd);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3434 g_free(zd_path);
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3435
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3436 authors[0] = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3437 path = g_build_filename(GQ_HELPDIR, "AUTHORS", NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3438 fp = fopen(path, "r");
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3439 if (fp)
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3440 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3441 while(fgets(line, LINE_LENGTH, fp))
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3442 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3443 /* get rid of ending \n from fgets */
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3444 line[strlen(line) - 1] = '\0';
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3445 authors[i_authors] = g_strdup(line);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3446 i_authors++;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3447 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3448 authors[i_authors] = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3449 fclose(fp);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3450 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3451 g_free(path);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3452
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3453 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
3454 "\nhttps://github.com/BestImageViewer/geeqie/issues",NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3455
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3456 pixbuf_logo = pixbuf_inline(PIXBUF_INLINE_LOGO);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3457 pixbuf_icon = pixbuf_inline(PIXBUF_INLINE_ICON);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3458 gtk_show_about_dialog(GTK_WINDOW(lw->window),
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3459 "title", _("About Geeqie"),
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3460 "resizable", TRUE,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3461 "program-name", GQ_APPNAME,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3462 "version", VERSION,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3463 "logo", pixbuf_logo,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3464 "icon", pixbuf_icon,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3465 "website", GQ_WEBSITE,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3466 "website-label", "Website",
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3467 "comments", comment,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3468 "authors", authors,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3469 "translator-credits", _("translator-credits"),
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3470 "wrap-license", TRUE,
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
3471 "license", copyright->str,
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3472 NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3473
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3474 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
3475
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3476 gint n = 0;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3477 while(n < i_authors)
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3478 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3479 g_free(authors[n]);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3480 n++;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3481 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3482 g_free(comment);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3483
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
3484 return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
3485 }
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3486
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3487 static void image_overlay_set_text_colours()
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3488 {
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
3489 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
3490 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
3491 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
3492 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
3493 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
3494 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
3495 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
3496 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
3497 }
1055
4bbdfab3c89a Adding a vim modeline to all files - patch by Klaus Ethgen
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1053
diff changeset
3498 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */