annotate src/preferences.c @ 2825:b29ce668abca

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