annotate src/preferences.c @ 2746:8bab8ac8ade0

Local time - UTC offset and daylight saving correction Use GPS lat/long to provide local time corrected for UTC offset and DST correction. The corrected time is available in formatted.localtime The selected timezone is available in formatted.timezone
author Colin Clark <colin.clark@cclark.uk>
date Wed, 25 Apr 2018 11:46:38 +0100
parents 808983eb036e
children 0eac8ea9b1be
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"
1599
ec811624c949 Include missing header file.
Laurent Monin <geeqie@norz.org>
parents: 1596
diff changeset
26 #include "cache.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
27 #include "cache_maint.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
28 #include "editors.h"
648
36e8da5a771d Move some functions from main.[ch] to new window.[ch].
Laurent Monin <geeqie@norz.org>
parents: 630
diff changeset
29 #include "exif.h"
586
122fc2223b42 split filelist.c to filefilter.c and filedata.c
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 566
diff changeset
30 #include "filedata.h"
122fc2223b42 split filelist.c to filefilter.c and filedata.c
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 566
diff changeset
31 #include "filefilter.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
32 #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
33 #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
34 #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
35 #include "color-man.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
36 #include "img-view.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
37 #include "layout_config.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
38 #include "layout_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
39 #include "pixbuf_util.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
40 #include "slideshow.h"
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
41 #include "toolbar.h"
597
471697db9e6b moved safe delete functions to separate file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 594
diff changeset
42 #include "trash.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
43 #include "utilops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
44 #include "ui_fileops.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
45 #include "ui_misc.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
46 #include "ui_tabcomp.h"
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
47 #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
48 #include "window.h"
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
49 #include "zonedetect.h"
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
50
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
51 #include <math.h>
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
52
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
53 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
54 #ifdef HAVE_LCMS2
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
55 #include <lcms2.h>
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
56 #else
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
57 #include <lcms.h>
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
58 #endif
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
59 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
60
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
61 #define EDITOR_NAME_MAX_LENGTH 32
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
62 #define EDITOR_COMMAND_MAX_LENGTH 1024
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
63
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
64 static void image_overlay_set_text_colours();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
65
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
66 typedef struct _ThumbSize ThumbSize;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
67 struct _ThumbSize
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
68 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
69 gint w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
70 gint h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
71 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
72
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
73 static ThumbSize thumb_size_list[] =
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 { 24, 24 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
76 { 32, 32 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
77 { 48, 48 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
78 { 64, 64 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
79 { 96, 72 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
80 { 96, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
81 { 128, 96 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
82 { 128, 128 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
83 { 160, 120 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
84 { 160, 160 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
85 { 192, 144 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
86 { 192, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
87 { 256, 192 },
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
88 { 256, 256 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
89 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
90
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
91 enum {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
92 FE_ENABLE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
93 FE_EXTENSION,
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
94 FE_DESCRIPTION,
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
95 FE_CLASS,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
96 FE_WRITABLE,
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
97 FE_ALLOW_SIDECAR
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
98 };
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
99
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
100 enum {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
101 AE_ACTION,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
102 AE_KEY,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
103 AE_TOOLTIP,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
104 AE_ACCEL
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
105 };
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
106
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
107 static gchar *format_class_list[] = {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
108 N_("Unknown"),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
109 N_("Image"),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
110 N_("RAW Image"),
2597
e65df743a5a1 Ref #510: Rudimentary video support
Colin Clark <colin.clark@cclark.uk>
parents: 2596
diff changeset
111 N_("Metadata"),
e65df743a5a1 Ref #510: Rudimentary video support
Colin Clark <colin.clark@cclark.uk>
parents: 2596
diff changeset
112 N_("Video")
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
113 };
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
114
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
115 /* config memory values */
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
116 static ConfOptions *c_options = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
117
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
118
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
119 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
120 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
121 #endif
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
122
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
123 static GtkWidget *configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
124 static GtkListStore *filter_store = NULL;
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
125 static GtkTreeStore *accel_store = NULL;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
126
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
127 static GtkWidget *safe_delete_path_entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
128
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
129 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
130 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
131 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
132
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
133 static GtkWidget *sidecar_ext_entry;
225
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
134
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
135
5794f581eafc Make the preferences window resizeable, and try to improve
Laurent Monin <geeqie@norz.org>
parents: 224
diff changeset
136 #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
137 #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
138
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
139 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
140 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
141 * option widget callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
142 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
143 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
144
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
145 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
146 {
2341
c9948056a6db Refined zoom step
Klaus Ethgen <Klaus@Ethgen.de>
parents: 2337
diff changeset
147 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
148 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
149
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
150 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
151 {
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
152 gint mins_secs_tenths, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
153
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
154 mins_secs_tenths = c_options->slideshow.delay %
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
155 (3600 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
156
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
157 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
158 (3600 * SLIDESHOW_SUBSECOND_PRECISION) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
159 mins_secs_tenths);
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 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
162 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
163 }
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
164
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
165 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
166 {
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
167 gint hours, secs_tenths, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
168
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
169 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
170 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
171
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
172 delay = hours * (3600 * SLIDESHOW_SUBSECOND_PRECISION) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
173 (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
174 (60 * SLIDESHOW_SUBSECOND_PRECISION) + secs_tenths);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
175
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
176 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
177 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
178 }
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
179
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
180 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
181 {
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
182 gint hours_mins, delay;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
183
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
184 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
185
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
186 delay = (hours_mins * (60 * SLIDESHOW_SUBSECOND_PRECISION)) +
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
187 (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
188 (gdouble)(SLIDESHOW_SUBSECOND_PRECISION) + 0.01);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
189
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
190 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
191 SLIDESHOW_SUBSECOND_PRECISION;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
192 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
193
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
194 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
195 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
196 * sync progam to config window routine (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
197 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
198 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
199
1436
13d61fe760fb completely separated global and layout window options
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1400
diff changeset
200 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
201 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
202 const gchar *buf;
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
203
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
204 g_free(*option);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
205 *option = NULL;
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
206 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
207 if (buf && strlen(buf) > 0)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
208 {
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
209 if (func)
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
210 *option = func(buf);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
211 else
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
212 *option = g_strdup(buf);
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
213 }
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
214 }
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
215
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
216
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
217 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
218 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
219 gchar *accel_path, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
220
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
221 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
222
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
223 if (accel_path && accel_path[0])
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
224 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
225 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
226 gtk_accelerator_parse(accel, &key.accel_key, &key.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
227 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
228 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
229
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
230 g_free(accel_path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
231 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
232
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
233 return FALSE;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
234 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
235
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
236
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
237 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
238 {
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
239 gint i;
1437
cc423d10b73e gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1436
diff changeset
240 gboolean refresh = FALSE;
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
241
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
242 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
243
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
244 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
245 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
246 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
247 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
248 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
249 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
250 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
251
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
252 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
253 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
254 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
255 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
256 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
257 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
258 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
259 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
260 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
261 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
262 options->image.zoom_2pass = c_options->image.zoom_2pass;
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
263 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
264 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
265 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
266 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
267 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
268 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
269 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
270 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
271 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
272 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
273
1506
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
274 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
275 || 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
276 || 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
277 {
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
278 thumb_format_changed = TRUE;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
279 refresh = TRUE;
6e235e3ba076 Force thumbnails refreshing when thumbnails dimensions are modified through Preferences.
Laurent Monin <geeqie@norz.org>
parents: 1443
diff changeset
280 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
281 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
282 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
283 }
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
284 options->thumbnails.enable_caching = c_options->thumbnails.enable_caching;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
285 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
286 options->thumbnails.use_exif = c_options->thumbnails.use_exif;
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
287 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
288 // 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
289 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
290 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
291 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
292 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
293 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
294 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
295
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
296 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
297 options->file_sort.natural = c_options->file_sort.natural;
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
298 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
299
1229
2f11fec715ca sidecar files grouping was made case-insensitive
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1216
diff changeset
300 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
301 sidecar_ext_parse(options->sidecar.ext);
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
302
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
303 options->slideshow.random = c_options->slideshow.random;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
304 options->slideshow.repeat = c_options->slideshow.repeat;
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
305 options->slideshow.delay = c_options->slideshow.delay;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
306
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
307 options->mousewheel_scrolls = c_options->mousewheel_scrolls;
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
308 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
309 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
310 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
311
341
3e0059a55671 Move safe_delete* and in place rename options to file_ops
Laurent Monin <geeqie@norz.org>
parents: 339
diff changeset
312 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
313
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
314 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
315 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
316
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
317 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
318
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
319 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
320
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
321 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
322
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
323
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
324 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
325 || 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
326 || !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
327 {
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
328 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
329 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
330 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
331 layout_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
332 view_window_colors_update();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
333 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
334
2457
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
335 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
336 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
337
322
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
338 options->fullscreen.screen = c_options->fullscreen.screen;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
339 options->fullscreen.clean_flip = c_options->fullscreen.clean_flip;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
340 options->fullscreen.disable_saver = c_options->fullscreen.disable_saver;
a4fd6dd48d9b Rationalize fullscreen options naming.
Laurent Monin <geeqie@norz.org>
parents: 321
diff changeset
341 options->fullscreen.above = c_options->fullscreen.above;
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
342 if (c_options->image_overlay.template_string)
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
343 set_image_overlay_template_string(&options->image_overlay.template_string,
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
344 c_options->image_overlay.template_string);
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
345 if (c_options->image_overlay.font)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
346 set_image_overlay_font_string(&options->image_overlay.font,
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
347 c_options->image_overlay.font);
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
348 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
349 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
350 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
351 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
352 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
353 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
354 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
355 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
356 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
357 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
358
342
de6de19bd03a Rename dupe_custom_threshold option to duplicates_similarity_threshold.
Laurent Monin <geeqie@norz.org>
parents: 341
diff changeset
359 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
360 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
361
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
362 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
363
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
364 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
365
441
3cc6ee2e3e21 Allow the user to change open_recent_list_maxsize option through
Laurent Monin <geeqie@norz.org>
parents: 426
diff changeset
366 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
367 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
368 options->clipboard_selection = c_options->clipboard_selection;
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
369
1208
338afd22a394 added options for metadata - not yet used
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1188
diff changeset
370 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
371 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
372 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
373 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
374 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
375 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
376 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
377 options->metadata.confirm_timeout = c_options->metadata.confirm_timeout;
1244
eeefa0f10d39 improved metadata preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1239
diff changeset
378 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
379 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
380 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
381 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
382 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
383 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
384 (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
385 (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
386 (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
387 (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
388 (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
389 (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
390 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
391 (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
392 (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
393 (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
394 (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
395 (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
396 (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
397 options->stereo.enable_fsmode = c_options->stereo.enable_fsmode;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
398 options->stereo.fixed_w = c_options->stereo.fixed_w;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
399 options->stereo.fixed_h = c_options->stereo.fixed_h;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
400 options->stereo.fixed_x1 = c_options->stereo.fixed_x1;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
401 options->stereo.fixed_y1 = c_options->stereo.fixed_y1;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
402 options->stereo.fixed_x2 = c_options->stereo.fixed_x2;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
403 options->stereo.fixed_y2 = c_options->stereo.fixed_y2;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
404
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
405 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
406 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
407 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
408 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
409
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
410 #ifdef DEBUG
507
7408e89b601d Move debug macros from main.h to new debug.h.
Laurent Monin <geeqie@norz.org>
parents: 497
diff changeset
411 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
412 #endif
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
413
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
414 #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
415 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
416 {
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
417 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
418 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
419 }
1042
4a5170f2d926 Shorten config_window_apply() a bit, reduce code redunancy.
Laurent Monin <geeqie@norz.org>
parents: 1039
diff changeset
420 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
421 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
422 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
423 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
424 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
425 color_man_update();
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
426 }
113
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
427 #endif
f2109493004f Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 91
diff changeset
428
26
f1fe26e637e9 Mon Mar 28 20:23:34 2005 John Ellis <johne@verizon.net>
John Ellis <johne@verizon.net>
parents: 15
diff changeset
429 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
430
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
431 if (refresh)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
432 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
433 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
434 layout_refresh(NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
435 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
436
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
437 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
438
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
439 toolbar_apply();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
440 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
441
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
442 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
443 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
444 * config window main button callbacks (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
445 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
446 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
447
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
448 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
449 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
450 gtk_widget_destroy(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
451 configwindow = NULL;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
452 filter_store = NULL;
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
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
455 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
456 {
2431
1f5389d824df Fix compile warnings
Colin Clark <cclark@mcb.net>
parents: 2429
diff changeset
457 GtkWidget *notebook = data;
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
458 gint i;
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
459
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
460 static gchar *html_section[] =
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
461 {
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
462 "GuideOptionsGeneral.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
463 "GuideOptionsImage.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
464 "GuideOptionsWindow.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
465 "GuideOptionsKeyboard.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
466 "GuideOptionsFiltering.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
467 "GuideOptionsMetadata.html",
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
468 "GuideOptionsColor.html",
2628
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
469 "GuideOptionsStereo.html",
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
470 "GuideOptionsBehavior.html",
3685b630d2e4 Fix documentation errors
Colin Clark <colin.clark@cclark.uk>
parents: 2623
diff changeset
471 "GuideOptionsToolbar.html"
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
472 };
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
473
2441
a2d4729a3b2d Fix GCC and Clang compile warnings.
Omari Stephens <xsdg@google.com>
parents: 2412
diff changeset
474 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
475 help_window_show(html_section[i]);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
476 }
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
477
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
478 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
479 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
480 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
481 return TRUE;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
482 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
483
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
484 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
485 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
486 config_window_apply();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
487 config_window_close_cb(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
488 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
489
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
490 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
491 {
2501
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
492 LayoutWindow *lw;
b5cec98159e7 Fix #264, 274, 285, 436: Add 'Losslessly rotate image' keyboard shortcuts
Colin Clark <colin.clark@cclark.uk>
parents: 2500
diff changeset
493 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
494
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
495 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
496 layout_util_sync(lw);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
497 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
498
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
499 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
500 {
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
501 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
502 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
503 }
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
504
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
505 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
506 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
507 * config window setup (private)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
508 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
509 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
510
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
511 static void quality_menu_cb(GtkWidget *combo, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
512 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
513 gint *option = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
514
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
515 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
516 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
517 case 0:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
518 default:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
519 *option = GDK_INTERP_NEAREST;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
520 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
521 case 1:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
522 *option = GDK_INTERP_TILES;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
523 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
524 case 2:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
525 *option = GDK_INTERP_BILINEAR;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
526 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
527 case 3:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
528 *option = GDK_INTERP_HYPER;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
529 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
530 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
531 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
532
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
533 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
534 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
535 gint *option = data;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
536
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
537 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
538 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
539 case 0:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
540 default:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
541 *option = PRIMARY;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
542 break;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
543 case 1:
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
544 *option = CLIPBOARD;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
545 break;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
546 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
547 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
548
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
549 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
550 guint option, guint *option_c)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
551 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
552 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
553 gint current = 0;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
554
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
555 *option_c = option;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
556
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
557 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
558
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
559 combo = gtk_combo_box_text_new();
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
560
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
561 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
562 if (option == GDK_INTERP_NEAREST) current = 0;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
563 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
564 if (option == GDK_INTERP_TILES) current = 1;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
565 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
566 if (option == GDK_INTERP_BILINEAR) current = 2;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
567 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
568 if (option == GDK_INTERP_HYPER) current = 3;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
569
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
570 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
571
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
572 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
573 G_CALLBACK(quality_menu_cb), option_c);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
574
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
575 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
576 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
577 gtk_widget_show(combo);
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
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
580 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
581 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
582 {
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
583 GtkWidget *combo;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
584 gint current = 0;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
585
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
586 *option_c = option;
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
587
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
588 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
589
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
590 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
591
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
592 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
593 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
594 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
595 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
596
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
597 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
598
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
599 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
600 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
601
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
602 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
603 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
604 gtk_widget_show(combo);
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
605 }
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
606
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
607 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
608 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
609 gint n;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
610
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
611 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
612 if (n < 0) return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
613
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
614 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
615 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
616 c_options->thumbnails.max_width = thumb_size_list[n].w;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
617 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
618 }
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
619 else
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
620 {
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
621 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
622 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
623 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
624 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
625
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
626 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
627 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
628 GtkWidget *combo;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
629 gint current;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
630 gint i;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
631
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
632 c_options->thumbnails.max_width = options->thumbnails.max_width;
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
633 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
634
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
635 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
636
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
637 combo = gtk_combo_box_text_new();
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
638
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
639 current = -1;
736
31d858f3272d Fix signed vs unsigned warnings.
Laurent Monin <geeqie@norz.org>
parents: 733
diff changeset
640 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
641 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
642 gint w, h;
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
643 gchar *buf;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
644
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
645 w = thumb_size_list[i].w;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
646 h = thumb_size_list[i].h;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
647
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
648 buf = g_strdup_printf("%d x %d", w, h);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
649 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
650 g_free(buf);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
651
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
652 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
653 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
654
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
655 if (current == -1)
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 gchar *buf;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
658
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
659 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
660 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
661 g_free(buf);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
662
226
6b9e4c9e5596 Fix and simplify thumbnails size combo box related code.
Laurent Monin <geeqie@norz.org>
parents: 225
diff changeset
663 current = i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
664 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
665
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
666 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
667 g_signal_connect(G_OBJECT(combo), "changed",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
668 G_CALLBACK(thumb_size_menu_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
669
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
670 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
671 GTK_EXPAND | GTK_FILL, 0, 0, 0);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
672 gtk_widget_show(combo);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
673 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
674
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
675 static void stereo_mode_menu_cb(GtkWidget *combo, gpointer data)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
676 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
677 gint *option = data;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
678
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
679 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
680 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
681 case 0:
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
682 default:
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
683 *option = PR_STEREO_NONE;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
684 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
685 case 1:
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
686 *option = PR_STEREO_ANAGLYPH_RC;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
687 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
688 case 2:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
689 *option = PR_STEREO_ANAGLYPH_GM;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
690 break;
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
691 case 3:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
692 *option = PR_STEREO_ANAGLYPH_YB;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
693 break;
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
694 case 4:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
695 *option = PR_STEREO_ANAGLYPH_GRAY_RC;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
696 break;
1896
9604c72ac670 added more anaglyph modes
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1895
diff changeset
697 case 5:
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
698 *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
699 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
700 case 6:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
701 *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
702 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
703 case 7:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
704 *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
705 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
706 case 8:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
707 *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
708 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
709 case 9:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
710 *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
711 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
712 case 10:
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
713 *option = PR_STEREO_HORIZ;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
714 break;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
715 case 11:
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
716 *option = PR_STEREO_HORIZ | PR_STEREO_HALF;
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
717 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
718 case 12:
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
719 *option = PR_STEREO_VERT;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
720 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
721 case 13:
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
722 *option = PR_STEREO_VERT | PR_STEREO_HALF;
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
723 break;
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
724 case 14:
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
725 *option = PR_STEREO_FIXED;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
726 break;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
727 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
728 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
729
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
730 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
731 gint option, gint *option_c, gboolean add_fixed)
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
732 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
733 GtkWidget *combo;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
734 gint current = 0;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
735
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
736 *option_c = option;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
737
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
738 pref_table_label(table, column, row, text, 0.0);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
739
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
740 combo = gtk_combo_box_text_new();
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
741
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
742 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
743
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
744 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
745 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
746 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
747 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
748 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
749 if (option & PR_STEREO_ANAGLYPH_YB) current = 3;
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
750 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
751 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
752 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
753 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
754 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
755 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
756 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
757 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
758 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
759 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
760 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
761 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
762
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
763 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
764 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
765 if (option & PR_STEREO_HORIZ)
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
766 {
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
767 current = 10;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
768 if (option & PR_STEREO_HALF) current = 11;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
769 }
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
770
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
771 gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), _("Top - Bottom"));
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), _("Top - Bottom Half size"));
2184
9cdebd070874 Trim trailing white spaces.
Laurent Monin <zas@norz.org>
parents: 2181
diff changeset
773 if (option & PR_STEREO_VERT)
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
774 {
2255
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
775 current = 12;
c67b4f60c4b1 Add support for Green-Magenta and Yellow-Blue anaglyph modes
Alexey Akishin <alex@science.su>
parents: 2221
diff changeset
776 if (option & PR_STEREO_HALF) current = 13;
1895
6e3edda945ae added half-size (3dtv) stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1892
diff changeset
777 }
2185
c14a1d8e6aa4 Trim trailing white spaces on empty lines.
Laurent Monin <zas@norz.org>
parents: 2184
diff changeset
778
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
779 if (add_fixed)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
780 {
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
781 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
782 if (option & PR_STEREO_FIXED) current = 14;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
783 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
784
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
785 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
786
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
787 g_signal_connect(G_OBJECT(combo), "changed",
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
788 G_CALLBACK(stereo_mode_menu_cb), option_c);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
789
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
790 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
791 GTK_EXPAND | GTK_FILL, 0, 0, 0);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
792 gtk_widget_show(combo);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
793 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
794
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
795 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
796 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
797 gchar **option = data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
798
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
799 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
800 *option = ed->key;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
801 }
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
802
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
803 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
804 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
805 GtkWidget *combo = user_data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
806 EditorDescription *ed = data;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
807
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
808 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
809 }
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
810
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
811 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
812 gchar *option, gchar **option_c)
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
813 {
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
814 GtkWidget *combo;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
815 gint current;
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
816 /* use lists since they are sorted */
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
817 GList *eds = editor_list_get();
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 *option_c = option;
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 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
822
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
823 combo = gtk_combo_box_text_new();
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
824 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
825 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
826
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
827 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
828
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
829 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
830 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
831
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
832 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
833 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
834 gtk_widget_show(combo);
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
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
837 static void filter_store_populate(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
838 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
839 GList *work;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
840
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
841 if (!filter_store) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
842
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
843 gtk_list_store_clear(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
844
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
845 work = filter_get_list();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
846 while (work)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
847 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
848 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
849 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
850
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
851 fe = work->data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
852 work = work->next;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
853
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
854 gtk_list_store_append(filter_store, &iter);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
855 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
856 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
857 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
858
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
859 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
860 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
861 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
862 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
863 FilterEntry *fe = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
864 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
865 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
866
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
867 if (!new_text || strlen(new_text) < 1) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
868
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
869 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
870 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
871 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
872
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
873 g_free(fe->extensions);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
874 fe->extensions = g_strdup(new_text);
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_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
877 filter_rebuild();
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
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
880 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
881 gchar *new_text, gpointer data)
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
882 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
883 GtkWidget *model = data;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
884 FilterEntry *fe = data;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
885 GtkTreePath *tpath;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
886 GtkTreeIter iter;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
887 gint i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
888
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
889 if (!new_text || !new_text[0]) return;
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
890
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
891 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
892 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
893 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
894
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
895 for (i = 0; i < FILE_FORMAT_CLASSES; i++)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
896 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
897 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
898 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
899 fe->file_class = i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
900 break;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
901 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
902 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
903
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
904 gtk_tree_path_free(tpath);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
905 filter_rebuild();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
906 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
907
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
908 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
909 gchar *new_text, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
910 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
911 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
912 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
913 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
914 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
915
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
916 if (!new_text || !new_text[0]) return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
917
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
918 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
919 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
920 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
921
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
922 g_free(fe->description);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
923 fe->description = g_strdup(new_text);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
924
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
925 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
926 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
927
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
928 static void filter_store_enable_cb(GtkCellRendererToggle *renderer,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
929 gchar *path_str, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
930 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
931 GtkWidget *model = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
932 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
933 GtkTreePath *tpath;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
934 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
935
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
936 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
937 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
938 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
939
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
940 fe->enabled = !fe->enabled;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
941
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
942 gtk_tree_path_free(tpath);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
943 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
944 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
945
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
946 static void filter_store_writable_cb(GtkCellRendererToggle *renderer,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
947 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
948 {
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
949 GtkWidget *model = data;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
950 FilterEntry *fe;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
951 GtkTreePath *tpath;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
952 GtkTreeIter iter;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
953
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
954 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
955 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
956 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
957
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
958 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
959 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
960
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
961 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
962 filter_rebuild();
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
963 }
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
964
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
965 static void filter_store_sidecar_cb(GtkCellRendererToggle *renderer,
1443
e29281a30ed8 gint -> gboolean.
Laurent Monin <geeqie@norz.org>
parents: 1437
diff changeset
966 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
967 {
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
968 GtkWidget *model = data;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
969 FilterEntry *fe;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
970 GtkTreePath *tpath;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
971 GtkTreeIter iter;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
972
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
973 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
974 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
975 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
976
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
977 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
978 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
979
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
980 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
981 filter_rebuild();
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
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
984 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
985 GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
986 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
987 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
988
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
989 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
990
1347
84d289bde1ea Add missing space between switch and first parenthesis.
Laurent Monin <geeqie@norz.org>
parents: 1346
diff changeset
991 switch (GPOINTER_TO_INT(data))
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
992 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
993 case FE_ENABLE:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
994 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
995 "active", fe->enabled, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
996 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
997 case FE_EXTENSION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
998 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
999 "text", fe->extensions, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1000 break;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1001 case FE_DESCRIPTION:
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1002 g_object_set(GTK_CELL_RENDERER(cell),
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1003 "text", fe->description, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1004 break;
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1005 case FE_CLASS:
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1006 g_object_set(GTK_CELL_RENDERER(cell),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1007 "text", _(format_class_list[fe->file_class]), NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1008 break;
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1009 case FE_WRITABLE:
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1010 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
1011 "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
1012 break;
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1013 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
1014 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
1015 "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
1016 break;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1017 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1018 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1019
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1020 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
1021 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1022 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
1023 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
1024 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
1025 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
1026 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
1027 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
1028 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
1029 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
1030
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1031 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
1032 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
1033
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1034 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
1035 do {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1036 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
1037 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
1038 i++;
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1039 } 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
1040
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1041 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
1042 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
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 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
1045 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
1046 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
1047 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
1048
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1049 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
1050 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
1051 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
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 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
1054 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1055
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1056 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
1057 {
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
1058 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
1059 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1060
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1061 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
1062 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1063
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1064 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
1065 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1066 GtkWidget *filter_view = data;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1067 GtkTreeSelection *selection;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1068 GtkTreeIter iter;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1069 FilterEntry *fe;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1070
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1071 if (!filter_store) return;
995
401cd18f8d38 Whitespaces cleanup.
Laurent Monin <geeqie@norz.org>
parents: 980
diff changeset
1072 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
1073 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
1074 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
1075 if (!fe) return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1076
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1077 filter_remove_entry(fe);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1078 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1079 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1080 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1081
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1082 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
1083 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1084 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
1085 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
1086 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
1087
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1088 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
1089 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
1090 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
1091
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1092 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
1093 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
1094 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
1095
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1096 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
1097
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1098 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
1099 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1100
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1101 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
1102 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1103 filter_reset();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1104 filter_add_defaults();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1105 filter_rebuild();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1106 filter_store_populate();
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1107
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1108 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
1109 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1110
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1111 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
1112 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1113 /* no op, only so cancel button appears */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1114 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1115
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1116 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
1117 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1118 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1119
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1120 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
1121 "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
1122 dummy_cancel_cb, data);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1123 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
1124 _("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
1125 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
1126 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1127 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1128
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1129 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
1130 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1131 GtkWidget *frame = data;
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 gtk_widget_set_sensitive(frame,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1134 !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
1135 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1136
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1137 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
1138 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1139 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
1140 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1141
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1142 static void 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
1143 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1144 file_util_trash_clear();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1145 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1146
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1147 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
1148 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1149 GenericDialog *gd;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1150 GtkWidget *entry;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1151 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
1152 "clear_trash", widget, TRUE,
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1153 dummy_cancel_cb, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1154 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
1155 _("This will remove the trash contents."), FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1156 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
1157 entry = gtk_entry_new();
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
1158 gtk_widget_set_can_focus(entry, FALSE);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1159 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
1160 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
1161 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
1162 gtk_widget_show(entry);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1163 gtk_widget_show(gd->dialog);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1164 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1165
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1166 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
1167 {
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
1168 GtkWidget *pTextView;
1001
a1f0b2010ca1 Consistency: type * instead of type*.
Laurent Monin <geeqie@norz.org>
parents: 1000
diff changeset
1169 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
1170 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
1171 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
1172
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
1173 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
1174
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
1175 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
1176 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
1177 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
1178
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1179 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
1180 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
1181 }
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
1182
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1183 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
1184 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1185 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
1186 GtkTextBuffer *buffer;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1187
1336
7fe7536f02e1 fixed overlay configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1327
diff changeset
1188 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
1189 if (!configwindow) return;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1190
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1191 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
1192 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
1193 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1194
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1195 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
1196 {
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1197 GenericDialog *gd;
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1198
469
681796421193 Rename few functions and replace fullscreen info with image overlay template string.
Laurent Monin <geeqie@norz.org>
parents: 468
diff changeset
1199 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
1200 "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
1201 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
1202 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
1203 _("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
1204 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
1205 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
1206 }
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1207
625
96e360e5949d Add an help button to OSD info configuration in Preferences dialog.
Laurent Monin <geeqie@norz.org>
parents: 597
diff changeset
1208 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
1209 {
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
1210 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
1211 }
354
3f7a136c8ef8 Add a button to reset fullscreen info string to default value.
Laurent Monin <geeqie@norz.org>
parents: 342
diff changeset
1212
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1213 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
1214 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1215 #if GTK_CHECK_VERSION(3,4,0)
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1216 GtkWidget *dialog;
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1217 char *font;
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1218 PangoFontDescription *font_desc;
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1219
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1220 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
1221 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
1222
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1223 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1224 {
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1225 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
1226 font = pango_font_description_to_string(font_desc);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1227 g_free(c_options->image_overlay.font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1228 c_options->image_overlay.font = g_strdup(font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1229 g_free(font);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1230 }
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1231
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1232 gtk_widget_destroy(dialog);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1233 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1234 const char *font;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1235
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1236 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
1237 c_options->image_overlay.font = g_strdup(font);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1238 #endif
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1239 }
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1240
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1241 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
1242 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1243 GtkWidget *dialog;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1244 #if GTK_CHECK_VERSION(3,4,0)
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1245 GdkRGBA colour;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1246
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1247 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
1248 colour.red = options->image_overlay.text_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1249 colour.green = options->image_overlay.text_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1250 colour.blue = options->image_overlay.text_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1251 colour.alpha = options->image_overlay.text_alpha;
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1252 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
1253 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
1254
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1255 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1256 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1257 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
1258 c_options->image_overlay.text_red = colour.red*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1259 c_options->image_overlay.text_green = colour.green*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1260 c_options->image_overlay.text_blue = colour.blue*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1261 c_options->image_overlay.text_alpha = colour.alpha*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1262 }
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1263 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1264 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1265 GdkColor colour;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1266 GtkColorSelection *colorsel;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1267
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1268 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
1269 gtk_window_set_keep_above(GTK_WINDOW(dialog),TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1270 colour.red = options->image_overlay.text_red*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1271 colour.green = options->image_overlay.text_green*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1272 colour.blue = options->image_overlay.text_blue*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1273 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
1274 gtk_color_selection_set_has_opacity_control(colorsel, TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1275 gtk_color_selection_set_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1276 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
1277
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1278 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
1279 {
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1280 gtk_color_selection_get_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1281 c_options->image_overlay.text_red = colour.red/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1282 c_options->image_overlay.text_green = colour.green/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1283 c_options->image_overlay.text_blue = colour.blue/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1284 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
1285 }
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1286 gtk_widget_destroy (dialog);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1287 #endif
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1288 }
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1289
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1290
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1291 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
1292 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1293 GtkWidget *dialog;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1294 #if GTK_CHECK_VERSION(3,4,0)
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1295 GdkRGBA colour;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1296
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1297 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
1298 colour.red = options->image_overlay.background_red;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1299 colour.green = options->image_overlay.background_green;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1300 colour.blue = options->image_overlay.background_blue;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1301 colour.alpha = options->image_overlay.background_alpha;
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1302 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
1303 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
1304
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1305 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL)
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1306 {
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1307 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
1308 c_options->image_overlay.background_red = colour.red*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1309 c_options->image_overlay.background_green = colour.green*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1310 c_options->image_overlay.background_blue = colour.blue*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1311 c_options->image_overlay.background_alpha = colour.alpha*255;
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1312 }
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1313 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1314 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1315 GdkColor colour;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1316 GtkColorSelection *colorsel;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1317
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1318 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
1319 gtk_window_set_keep_above(GTK_WINDOW(dialog),TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1320 colour.red = options->image_overlay.background_red*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1321 colour.green = options->image_overlay.background_green*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1322 colour.blue = options->image_overlay.background_blue*257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1323 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
1324 gtk_color_selection_set_has_opacity_control(colorsel, TRUE);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1325 gtk_color_selection_set_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1326 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
1327
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1328 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
1329 {
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1330 gtk_color_selection_get_current_color(colorsel, &colour);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1331 c_options->image_overlay.background_red = colour.red/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1332 c_options->image_overlay.background_green = colour.green/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1333 c_options->image_overlay.background_blue = colour.blue/257;
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1334 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
1335 }
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1336 gtk_widget_destroy(dialog);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1337 #endif
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1338 }
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1339
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1340 static void accel_store_populate(void)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1341 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1342 LayoutWindow *lw;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1343 GList *groups, *actions;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1344 GtkAction *action;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1345 const gchar *accel_path;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1346 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1347 GtkTreeIter iter;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1348
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1349 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
1350
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1351 gtk_tree_store_clear(accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1352 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
1353
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1354 g_assert(lw && lw->ui_manager);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1355 groups = gtk_ui_manager_get_action_groups(lw->ui_manager);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1356 while (groups)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1357 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1358 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
1359 while (actions)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1360 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1361 action = GTK_ACTION(actions->data);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1362 accel_path = gtk_action_get_accel_path(action);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1363 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
1364 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1365 gchar *label, *label2, *tooltip, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1366 g_object_get(action,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1367 "tooltip", &tooltip,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1368 "label", &label,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1369 NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1370
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1371 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
1372 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1373 g_free(label);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1374 label = label2;
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
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1377 accel = gtk_accelerator_name(key.accel_key, key.accel_mods);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1378
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1379 if (tooltip)
1619
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1380 {
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1381 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
1382 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
1383 AE_ACTION, label,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1384 AE_KEY, accel,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1385 AE_TOOLTIP, tooltip ? tooltip : "",
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1386 AE_ACCEL, accel_path,
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1387 -1);
504fbd47f515 do not display menus ("FileMenu" etc.) in accelerator configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1606
diff changeset
1388 }
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1389
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1390 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1391 g_free(label);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1392 g_free(tooltip);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1393 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1394 actions = actions->next;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1395 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1396
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1397 groups = groups->next;
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 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1400
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1401 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
1402 {
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1403
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1404 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1405
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1406 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
1407 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1408 gchar *accel1 = data;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1409 gchar *accel2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1410 GtkAccelKey key1;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1411 GtkAccelKey key2;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1412
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1413 gtk_tree_model_get(model, iter, AE_KEY, &accel2, -1);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1414
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1415 gtk_accelerator_parse(accel1, &key1.accel_key, &key1.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1416 gtk_accelerator_parse(accel2, &key2.accel_key, &key2.accel_mods);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1417
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1418 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
1419 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1420 gtk_tree_store_set(accel_store, iter, AE_KEY, "", -1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1421 DEBUG_1("accelerator key '%s' is already used, removing.", accel1);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1422 }
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1423
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1424 g_free(accel2);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1425
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1426 return FALSE;
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
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 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
1431 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1432 GtkTreeModel *model = (GtkTreeModel *)accel_store;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1433 GtkTreeIter iter;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1434 gchar *acc;
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1435 gchar *accel_path;
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1436 GtkAccelKey old_key, key;
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1437 GtkTreePath *path = gtk_tree_path_new_from_string(path_string);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1438
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1439 gtk_tree_model_get_iter(model, &iter, path);
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1440 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
1441
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1442 /* 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
1443 gtk_accel_map_lookup_entry(accel_path, &old_key);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1444
1664
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1445 /* 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
1446 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
1447 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
1448
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1449 /* 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
1450 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
1451
bb836939160c test if an accelerator can be stored
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1663
diff changeset
1452 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
1453 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
1454
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1455 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
1456 gtk_tree_path_free(path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1457 g_free(acc);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1458 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1459
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1460 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
1461 {
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1462 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
1463 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
1464 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
1465
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1466 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
1467 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
1468 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
1469
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1470 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
1471 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
1472 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
1473
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1474 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
1475
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1476 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
1477 }
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1478
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1479 static void accel_default_cb(GtkWidget *widget, gpointer data)
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 accel_store_populate();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1482
2058
31543e32379a Implement the scroll to/select row stuff for tree view in Preferences dialog
Colin Clark <cclark@mcb.net>
parents: 2057
diff changeset
1483 g_idle_add((GSourceFunc)accel_default_scroll, data);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1484 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1485
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1486 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
1487 {
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
1488 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
1489 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1490
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1491 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
1492 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1493 GtkAccelKey key;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1494 gchar *accel_path, *accel;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1495
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1496 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
1497 gtk_accel_map_lookup_entry(accel_path, &key);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1498 accel = gtk_accelerator_name(key.accel_key, key.accel_mods);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1499
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1500 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
1501
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1502 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
1503 g_free(accel_path);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1504 g_free(accel);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1505 }
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 static void accel_reset_cb(GtkWidget *widget, gpointer data)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1508 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1509 GtkTreeSelection *selection;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1510
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1511 if (!accel_store) return;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1512 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(data));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1513 gtk_tree_selection_selected_foreach(selection, &accel_reset_selection, NULL);
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
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1516
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
1517
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1518 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
1519 {
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1520 GtkWidget *label;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1521 GtkWidget *vbox;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1522 GtkWidget *scrolled;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1523 GtkWidget *viewport;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1524
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1525 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
1526 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
1527 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
1528 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
1529 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
1530 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
1531 gtk_widget_show(scrolled);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1532
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1533 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
1534 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
1535 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
1536 gtk_widget_show(viewport);
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1537
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1538 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
1539 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
1540 gtk_widget_show(vbox);
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 return vbox;
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1543 }
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1544
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1545 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
1546 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1547 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
1548 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1549 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
1550 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
1551 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1552 else
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1553 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1554 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
1555 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1556 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1557
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1558 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
1559 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1560 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
1561 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1562 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
1563 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
1564 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1565 else
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1566 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1567 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
1568 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1569 }
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 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
1572 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1573 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1574 {
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1575 c_options->thumbnails.cache_into_dirs = TRUE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1576 c_options->thumbnails.spec_standard =FALSE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1577 }
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1578 else
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.cache_into_dirs = FALSE;
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1581 }
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
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1584 /* general options tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1585 static void config_tab_general(GtkWidget *notebook)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1586 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1587 GtkWidget *vbox;
2482
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1588 GtkWidget *hbox;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1589 GtkWidget *group;
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1590 GtkWidget *group_frame;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1591 GtkWidget *subgroup;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1592 GtkWidget *button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1593 GtkWidget *ct_button;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1594 GtkWidget *table;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1595 GtkWidget *spin;
2612
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1596 gint hours, minutes, remainder;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1597 gdouble seconds;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1598
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1599 vbox = scrolled_notebook_page(notebook, _("General"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1600
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1601 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
1602
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1603 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
1604 add_thumb_size_menu(table, 0, 0, _("Size:"));
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
1605 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
1606
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1607 ct_button = pref_checkbox_new_int(group, _("Cache thumbnails"),
333
1ebdf8fb2c1a Rename thumbnails related options.
Laurent Monin <geeqie@norz.org>
parents: 332
diff changeset
1608 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
1609
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1610 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
1611 pref_checkbox_link_sensitivity(ct_button, subgroup);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1612
2566
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1613 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
1614 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
1615 button = pref_radiobutton_new(group_frame, NULL, get_thumbnails_cache_dir(),
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1616 !options->thumbnails.spec_standard,
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1617 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
1618
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1619 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
1620 _("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
1621 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
1622 pref_radiobutton_new(group_frame, button, "*/.thumbnails",
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1623 options->thumbnails.cache_into_dirs,
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1624 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
1625
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1626 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
1627 _("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
1628 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
1629 pref_radiobutton_new(group_frame, button, get_thumbnails_standard_cache_dir(),
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1630 options->thumbnails.spec_standard,
034d8772d6d8 Fix #500: Geeqie doesn’t use shared thumbnail folder
Colin Clark <colin.clark@cclark.uk>
parents: 2563
diff changeset
1631 G_CALLBACK(cache_standard_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1632
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1633 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
1634 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
1635
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
1636 #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
1637 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
1638 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
1639
bef1f1a91df9 Fix #541: Showing existing, or maybe generating thumbnails for MP4 and WEBM
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2670
diff changeset
1640 // 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
1641 // 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
1642 #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
1643
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1644 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
1645
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
1646 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
1647 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
1648 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
1649 minutes = remainder / (60 * SLIDESHOW_SUBSECOND_PRECISION);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1650 seconds = (gdouble)(remainder % (60 * SLIDESHOW_SUBSECOND_PRECISION)) /
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1651 SLIDESHOW_SUBSECOND_PRECISION;
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1652
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1653 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
1654
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1655 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
1656 0, 23, 1.0, 0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1657 options->slideshow.delay ? hours : 0.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1658 G_CALLBACK(slideshow_delay_hours_cb), NULL);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1659 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
1660 spin = pref_spin_new(hbox, ":" , NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1661 0, 59, 1.0, 0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1662 options->slideshow.delay ? minutes: 0.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1663 G_CALLBACK(slideshow_delay_minutes_cb), NULL);
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1664 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
1665 spin = pref_spin_new(hbox, ":", NULL,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1666 SLIDESHOW_MIN_SECONDS, 59, 1.0, 1,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1667 options->slideshow.delay ? seconds : 10.0,
3966a69e854d Slideshow delay in hrs-mins-secs
Colin Clark <colin.clark@cclark.uk>
parents: 2606
diff changeset
1668 G_CALLBACK(slideshow_delay_seconds_cb), NULL);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1669 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
1670
326
a0f3c913e0a7 Rename slideshow options.
Laurent Monin <geeqie@norz.org>
parents: 322
diff changeset
1671 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
1672 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
1673
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1674 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
1675
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1676 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
1677 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
1678 pref_checkbox_new_int(group, _("Preload next image"),
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1679 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
1680
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1681 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
1682 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
1683
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
1684 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
1685 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
1686 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
1687 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
1688 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1689 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
1690 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
1691 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1692 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
1693 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
1694 1, 9999, 1,
9b050f7e7b6c Fix #445: Info sidebar section heights
Colin Clark <colin.clark@cclark.uk>
parents: 2474
diff changeset
1695 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
1696 pref_spin_new_int(hbox, _("Rating:"), NULL,
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1697 1, 9999, 1,
eb2ce489ceea Fix #323: Rating system
Colin Clark <colin.clark@cclark.uk>
parents: 2495
diff changeset
1698 options->info_rating.height, &c_options->info_rating.height);
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1699 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1700
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1701 /* image tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1702 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
1703 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1704 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1705 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1706 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1707 GtkWidget *ct_button;
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1708 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
1709 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1710 GtkWidget *spin;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1711
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1712 vbox = scrolled_notebook_page(notebook, _("Image"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1713
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1714 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
1715
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1716 table = pref_table_new(group, 2, 1, FALSE, FALSE);
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1717 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
1718
2084
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1719 #ifdef HAVE_CLUTTER
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1720 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
1721 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
1722 #endif
1c712b43f063 added option for clutter renderer
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2066
diff changeset
1723
1515
99d03a6f394f disabled 2-pass rendering also affect color correction
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1513
diff changeset
1724 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
1725 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
1726
2665
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1727 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
1728 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
1729 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
1730 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
1731 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
1732
89f913549674 Update documentation for Fit image to window options
Colin Clark <colin.clark@cclark.uk>
parents: 2662
diff changeset
1733 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
1734
2474
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1735 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
1736 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
1737 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
1738 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
1739 100, 999, 1,
f591509cb3d3 Fix #123: Limit image expansion in Fit To Window
Colin Clark <colin.clark@cclark.uk>
parents: 2462
diff changeset
1740 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
1741 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
1742 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
1743
209
ce89a8349d8b configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 208
diff changeset
1744 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
1745 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
1746 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
1747 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
1748 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1749 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
1750 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
1751 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
1752
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1753 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
1754
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1755 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
1756 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
1757
1644
2b10e2bee592 the options for custom border color were made independent
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1626
diff changeset
1758 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
1759 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
1760
339
4b5f75e97d81 Rename user_specified_window_background and window_background_color
Laurent Monin <geeqie@norz.org>
parents: 338
diff changeset
1761 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
1762 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
1763
2457
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1764 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
1765
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1766 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
1767 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
1768
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1769 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
1770 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
1771
58f993045468 Fix #219: Ability to set solid colour for transparency layer
Colin Clark <cclark@mcb.net>
parents: 2454
diff changeset
1772 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
1773 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
1774
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1775 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
1776
2066
01d2c966209e exif autorotate for proofs
Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
parents: 2059
diff changeset
1777 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
1778 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
1779 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1780
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1781 /* windows tab */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1782 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
1783 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1784 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1785 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1786 GtkWidget *group;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1787 GtkWidget *button;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1788 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1789 GtkWidget *spin;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1790 GtkWidget *image_overlay_template_view;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1791 GtkWidget *scrolled;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1792 GtkTextBuffer *buffer;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1793
1039
205886cbf992 Allow all Preferences pages to scroll vertically. Reduce code redundancy.
Laurent Monin <geeqie@norz.org>
parents: 1038
diff changeset
1794 vbox = scrolled_notebook_page(notebook, _("Windows"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1795
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1796 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
1797
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
1798 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
1799 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
1800
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
1801 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
1802 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
1803 pref_checkbox_link_sensitivity(ct_button, button);
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
1804
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1805 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
1806 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
1807
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
1808 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
1809 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
1810
2740
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
1811 pref_checkbox_new_int(group, _("Show window IDs"),
808983eb036e Option to display window ID
Colin Clark <colin.clark@cclark.uk>
parents: 2723
diff changeset
1812 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
1813
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1814 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
1815
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1816 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
1817 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
1818
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1819 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
1820 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
1821 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
1822 spin = pref_spin_new_int(hbox, NULL, NULL,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1823 10, 150, 1,
334
771c179cba77 Rename image-related options.
Laurent Monin <geeqie@norz.org>
parents: 333
diff changeset
1824 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
1825 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
1826
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1827 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
1828
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1829 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
1830 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
1831 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
1832 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
1833 gtk_widget_show(hbox);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1834
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1835 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
1836 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
1837 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
1838 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
1839
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1840
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1841 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
1842
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1843 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
1844
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1845 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
1846 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
1847 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
1848 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
1849 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1850 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
1851 gtk_widget_show(scrolled);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1852
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1853 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
1854
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1855 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
1856 _("<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
1857 "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
1858 "<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
1859 "<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
1860 "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
1861 "<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
1862 "<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
1863 "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
1864 "<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
1865 "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
1866 "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
1867 ));
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1868 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
1869 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
1870
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1871 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
1872
2337
7ff7000c458c Image overlay configurable items
Colin Clark <cclark@mcb.net>
parents: 2335
diff changeset
1873 #if GTK_CHECK_VERSION(3,4,0)
2334
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1874 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
1875 G_CALLBACK(image_overlay_set_font_cb), notebook);
2343
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1876 #else
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1877 button = gtk_font_button_new();
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1878 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
1879 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
1880 g_signal_connect(G_OBJECT(button), "font-set",
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1881 G_CALLBACK(image_overlay_set_font_cb),NULL);
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1882 #endif
ab475bde511b Image overlay configurable items GTK2
Colin Clark <cclark@mcb.net>
parents: 2341
diff changeset
1883 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
1884 gtk_widget_show(button);
e38178f556f6 Image overlay configurable font
Colin Clark <cclark@mcb.net>
parents: 2328
diff changeset
1885
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1886 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
1887 G_CALLBACK(image_overlay_set_text_colour_cb), NULL);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1888 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
1889 gtk_widget_show(button);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1890
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1891 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
1892 G_CALLBACK(image_overlay_set_background_colour_cb), NULL);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1893 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
1894 gtk_widget_show(button);
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1895 image_overlay_set_text_colours();
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
1896
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1897 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
1898 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
1899 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
1900 gtk_widget_show(button);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1901
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1902 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
1903 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
1904 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
1905 gtk_widget_show(button);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1906
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1907 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
1908 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
1909 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
1910 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
1911
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
1912
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1913 }
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1914
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1915 static GtkTreeModel *create_class_model(void)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1916 {
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1917 GtkListStore *model;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1918 GtkTreeIter iter;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1919 gint i;
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1920
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1921 /* 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
1922 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
1923 for (i = 0; i < FILE_FORMAT_CLASSES; i++)
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1924 {
1346
b3378273091e No space between function name and first parenthesis, it eases greping (see CODING).
Laurent Monin <geeqie@norz.org>
parents: 1336
diff changeset
1925 gtk_list_store_append(model, &iter);
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1926 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
1927 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1928 return GTK_TREE_MODEL (model);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1929 }
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1930
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
1931
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1932 /* filtering tab */
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1933 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
1934 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1935 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1936 GtkWidget *frame;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1937 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1938 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1939 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1940 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1941 GtkWidget *scrolled;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1942 GtkWidget *filter_view;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1943 GtkCellRenderer *renderer;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1944 GtkTreeSelection *selection;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
1945 GtkTreeViewColumn *column;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1946
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
1947 vbox = scrolled_notebook_page(notebook, _("Files"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1948
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1949 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
1950
356
ba4edae270d6 Rename show_dot_files to show_hidden_files.
Laurent Monin <geeqie@norz.org>
parents: 354
diff changeset
1951 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
1952 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
1953 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
1954 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
1955 pref_checkbox_new_int(group, _("Case sensitive sort"),
329
056872a2bdf7 Rename file sorting options.
Laurent Monin <geeqie@norz.org>
parents: 327
diff changeset
1956 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
1957 pref_checkbox_new_int(group, _("Natural sort order"),
16fcfac12c77 Fix #417: Natural sort order
Colin Clark <cclark@mcb.net>
parents: 2386
diff changeset
1958 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
1959 pref_checkbox_new_int(group, _("Disable file extension checks"),
dec8d9db5770 Fix #333 Renaming file extensions
Colin Clark <cclark@mcb.net>
parents: 2265
diff changeset
1960 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
1961
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1962 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
1963 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
1964
170
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1965
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1966 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
1967
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1968 sidecar_ext_entry = gtk_entry_new();
1229
2f11fec715ca sidecar files grouping was made case-insensitive
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1216
diff changeset
1969 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
1970 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
1971 gtk_widget_show(sidecar_ext_entry);
34d0013592f5 basic sidecar files configuration via preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 134
diff changeset
1972
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1973 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
1974
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1975 frame = pref_group_parent(group);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1976 g_signal_connect(G_OBJECT(ct_button), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1977 G_CALLBACK(filter_disable_cb), frame);
332
e0907717f749 Rename file filtering options.
Laurent Monin <geeqie@norz.org>
parents: 330
diff changeset
1978 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
1979
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1980 scrolled = gtk_scrolled_window_new(NULL, NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1981 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
1982 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
1983 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
1984 gtk_widget_show(scrolled);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1985
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1986 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
1987 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
1988 g_object_unref(filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1989 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
1990 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
1991
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1992 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
1993
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1994 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1995 gtk_tree_view_column_set_title(column, _("Filter"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1996 gtk_tree_view_column_set_resizable(column, TRUE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1997
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1998 renderer = gtk_cell_renderer_toggle_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
1999 g_signal_connect(G_OBJECT(renderer), "toggled",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2000 G_CALLBACK(filter_store_enable_cb), filter_store);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2001 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
2002 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
2003 GINT_TO_POINTER(FE_ENABLE), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2004
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2005 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2006 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2007 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
2008 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
2009 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
2010 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
2011 GINT_TO_POINTER(FE_EXTENSION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2012 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
2013
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2014 column = gtk_tree_view_column_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2015 gtk_tree_view_column_set_title(column, _("Description"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2016 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
2017 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
2018 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
2019
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2020 renderer = gtk_cell_renderer_text_new();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2021 g_signal_connect(G_OBJECT(renderer), "edited",
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2022 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
2023 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
2024 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
2025 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
2026 GINT_TO_POINTER(FE_DESCRIPTION), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2027 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
2028
1216
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2029 column = gtk_tree_view_column_new();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2030 gtk_tree_view_column_set_title(column, _("Class"));
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2031 gtk_tree_view_column_set_resizable(column, TRUE);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2032 renderer = gtk_cell_renderer_combo_new();
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2033 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
2034 "model", create_class_model(),
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2035 "text-column", 0,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2036 "has-entry", FALSE,
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2037 NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2038
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2039 g_signal_connect(G_OBJECT(renderer), "edited",
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2040 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
2041 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
2042 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
2043 GINT_TO_POINTER(FE_CLASS), NULL);
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2044 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
2045
1239
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2046 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
2047 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
2048 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
2049 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
2050 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
2051 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
2052 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
2053 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
2054 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
2055 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
2056
bc5046eb10d7 metadata write mode (direct or sidecar) made configurable for each file
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1229
diff changeset
2057 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
2058 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
2059 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
2060 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
2061 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
2062 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
2063 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
2064 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
2065 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
2066 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
2067
fdef686991e6 file class made configurable in preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1213
diff changeset
2068
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2069 filter_store_populate();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2070 gtk_container_add(GTK_CONTAINER(scrolled), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2071 gtk_widget_show(filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2072
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2073 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
2074
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2075 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
2076 G_CALLBACK(filter_default_cb), filter_view);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2077 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
2078 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2079
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2080 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
2081 G_CALLBACK(filter_remove_cb), filter_view);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2082 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
2083 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2084
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2085 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
2086 G_CALLBACK(filter_add_cb), filter_view);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2087 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
2088 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
2089 }
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2090
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2091 /* metadata tab */
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2092 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
2093 {
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2094 GtkWidget *vbox;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2095 GtkWidget *hbox;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2096 GtkWidget *group;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2097 GtkWidget *ct_button;
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2098 GtkWidget *label;
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2099 gchar *text;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2100
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2101 vbox = scrolled_notebook_page(notebook, _("Metadata"));
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2102
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2103
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2104 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
2105 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2106 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
2107 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2108 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
2109 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
2110
2495
33571d08bc37 Fix #446: Minor text updates
Colin Clark <colin.clark@cclark.uk>
parents: 2482
diff changeset
2111 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
2112 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
2113 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2114 gtk_widget_set_sensitive(ct_button, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2115 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2116
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2117 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
2118 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
2119
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2120 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
2121 label = pref_label_new(group, text);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2122 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
2123 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
2124 g_free(text);
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2125
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2126 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
2127 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2128 gtk_widget_set_sensitive(group, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2129 #endif
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2130
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2131 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
2132 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
2133
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2134 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
2135 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
2136
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2137 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
2138 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
2139
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2140 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
2141 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
2142
2454
93d1c77a312b Fix #147: Alternative format for sidecar extension
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2444
diff changeset
2143 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
2144 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
2145
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2146 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
2147 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2148 gtk_widget_set_sensitive(group, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2149 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2150
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2151 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
2152 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
2153
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2154
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2155 group = pref_group_new(vbox, FALSE, _("Miscellaneous"), GTK_ORIENTATION_VERTICAL);
1663
c39c4ee5d94c improved description string
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1644
diff changeset
2156 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
2157 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
2158
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2159 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
2160 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
2161
1686
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2162 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
2163 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
2164 #ifndef HAVE_EXIV2
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2165 gtk_widget_set_sensitive(ct_button, FALSE);
4cb7c2245306 fixes for a built without Exiv2
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1685
diff changeset
2166 #endif
1596
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2167
6efbb4b49ab4 added some structure to the metadata preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1590
diff changeset
2168 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
2169
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2170 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
2171 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
2172
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2173 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
2174 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
2175
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2176 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
2177 options->metadata.confirm_timeout, &c_options->metadata.confirm_timeout);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2178
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2179 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
2180 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
2181
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2182 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
2183 options->metadata.confirm_on_dir_change, &c_options->metadata.confirm_on_dir_change);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2184 }
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2185
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2186 /* metadata tab */
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2187 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2188 static void intent_menu_cb(GtkWidget *combo, gpointer data)
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2189 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2190 gint *option = data;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2191
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2192 switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo)))
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2193 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2194 case 0:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2195 default:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2196 *option = INTENT_PERCEPTUAL;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2197 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2198 case 1:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2199 *option = INTENT_RELATIVE_COLORIMETRIC;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2200 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2201 case 2:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2202 *option = INTENT_SATURATION;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2203 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2204 case 3:
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2205 *option = INTENT_ABSOLUTE_COLORIMETRIC;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2206 break;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2207 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2208 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2209
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2210 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
2211 gint option, gint *option_c)
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2212 {
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2213 GtkWidget *combo;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2214 gint current = 0;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2215
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2216 *option_c = option;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2217
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2218 pref_table_label(table, column, row, text, 0.0);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2219
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2220 combo = gtk_combo_box_text_new();
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2221
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2222 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
2223 if (option == INTENT_PERCEPTUAL) current = 0;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2224 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
2225 if (option == INTENT_RELATIVE_COLORIMETRIC) current = 1;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2226 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
2227 if (option == INTENT_SATURATION) current = 2;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2228 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
2229 if (option == INTENT_ABSOLUTE_COLORIMETRIC) current = 3;
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2230
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2231 gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2232
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2233 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
2234
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2235 g_signal_connect(G_OBJECT(combo), "changed",
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2236 G_CALLBACK(intent_menu_cb), option_c);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2237
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2238 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
2239 GTK_EXPAND | GTK_FILL, 0, 0, 0);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2240 gtk_widget_show(combo);
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2241 }
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2242 #endif
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2243
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2244 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
2245 {
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2246 GtkWidget *label;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2247 GtkWidget *vbox;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2248 GtkWidget *group;
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2249 GtkWidget *tabcomp;
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2250 GtkWidget *table;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2251 gint i;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2252
1522
4f9d5c5d36b4 re-ordered some options, improved descriptions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1521
diff changeset
2253 vbox = scrolled_notebook_page(notebook, _("Color management"));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2254
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2255 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
2256 #ifndef HAVE_LCMS
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2257 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
2258 #endif
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2259
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2260 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
2261 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
2262
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2263 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
2264 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2265
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2266 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
2267 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2268
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2269 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
2270 pref_label_bold(label, TRUE, FALSE);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2271
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2272 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
2273 {
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
2274 GtkWidget *entry;
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2275 gchar *buf;
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2276
1625
e5c894eda2a4 Ongoing translation
Klaus Ethgen <Klaus@Ethgen.de>
parents: 1619
diff changeset
2277 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
2278 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
2279 g_free(buf);
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2280
224
bb39a088c56e Tidy up. Fix indentation and missing whitespaces.
Laurent Monin <geeqie@norz.org>
parents: 223
diff changeset
2281 entry = gtk_entry_new();
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2282 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
2283 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
2284 {
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2285 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
2286 }
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2287 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
2288 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
2289 gtk_widget_show(entry);
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2290 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
2291
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
2292 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
2293 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
2294 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
2295 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
2296 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
2297 gtk_widget_show(tabcomp);
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2298 color_profile_input_file_entry[i] = entry;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2299 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2300
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2301 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
2302 #ifndef HAVE_LCMS
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2303 gtk_widget_set_sensitive(pref_group_parent(group), FALSE);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2304 #endif
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2305 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
2306 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
2307
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2308 table = pref_table_new(group, 2, 1, FALSE, FALSE);
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2309
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2310 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
2311 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
2312 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
2313 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
2314 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
2315 #ifdef HAVE_LCMS
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2316 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
2317 #endif
1548
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2318 gtk_table_attach(GTK_TABLE(table), tabcomp, 1, 2,
1bd57e730350 support X11 screen profile
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1540
diff changeset
2319 0, 1,
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2320 GTK_FILL | GTK_EXPAND, 0, 0, 0);
2386
a22a815359f9 Fix #414 Render Intents
Colin Clark <cclark@mcb.net>
parents: 2376
diff changeset
2321
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2322 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
2323 }
222
fe6cb572a798 various exif improvements based on patch by Uwe Ohse
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 218
diff changeset
2324
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2325 /* advanced entry tab */
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2326 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
2327 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2328 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2329 GtkWidget *vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2330 GtkWidget *group;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2331 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2332 GtkWidget *tabcomp;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2333 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2334 GtkWidget *spin;
2631
e493a7df8745 Addl fix #510: Rudimentary video support
Tomasz Golinski <tomaszg@math.uwb.edu.pl>
parents: 2628
diff changeset
2335 GtkWidget *table;
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
2336
1510
e03e7beeea30 moved options from Advanced tab to other tabs
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1506
diff changeset
2337 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
2338
1685
041cdca65160 Revert "Add pgettext for some ambiguous strings"
Klaus Ethgen <Klaus@Ethgen.de>
parents: 1678
diff changeset
2339 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
2340
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2341 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
2342 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
2343 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
2344 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
2345
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2346 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
2347 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
2348
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2349 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
2350 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2351
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2352 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
2353 pref_label_new(hbox, _("Folder:"));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2354
2723
c3417ff92722 Show .icc files when selecting color profiles
Colin Clark <colin.clark@cclark.uk>
parents: 2721
diff changeset
2355 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
2356 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
2357 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
2358 gtk_widget_show(tabcomp);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2359
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2360 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
2361 pref_checkbox_link_sensitivity(ct_button, hbox);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2362
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2363 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
2364 spin = pref_spin_new_int(hbox, _("Maximum size:"), _("MB"),
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2365 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
2366 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
2367 button = pref_button_new(NULL, NULL, _("View"), FALSE,
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2368 G_CALLBACK(safe_delete_view_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2369 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
2370 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2371
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2372 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
2373 G_CALLBACK(safe_delete_clear_cb), NULL);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2374 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
2375 gtk_widget_show(button);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2376
497
29dc838f7d6b Allow the copy of file paths to clipboard.
Laurent Monin <geeqie@norz.org>
parents: 475
diff changeset
2377
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2378 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
2379
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2380 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
2381 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
2382
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2383 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
2384 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
2385
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2386 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
2387 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
2388
2424
83d9886b9bcb Preferences: Open recent list maximum size
Colin Clark <cclark@mcb.net>
parents: 2423
diff changeset
2389 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
2390 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
2391
458
1397463b9c74 Allow the user to set the drag'n drop icon size through
Laurent Monin <geeqie@norz.org>
parents: 446
diff changeset
2392 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
2393 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
2394
2662
08d2547d72ea Fix #137: "Copy path" problem (or may be feature)
Colin Clark <colin.clark@cclark.uk>
parents: 2631
diff changeset
2395 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
2396 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
2397
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2398 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
2399
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2400 pref_checkbox_new_int(group, _("Progressive keyboard scrolling"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
2401 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
2402 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
2403 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
2404 pref_checkbox_new_int(group, _("Mouse wheel scrolls image"),
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
2405 options->mousewheel_scrolls, &c_options->mousewheel_scrolls);
2376
6c310168a91c Add four new preferences
Maciej S. Szmigiero <mail@maciej.szmigiero.name>
parents: 2350
diff changeset
2406 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
2407 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
2408 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
2409 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
2410 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
2411 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
2412
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2413
227
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
2414 #ifdef DEBUG
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
2415 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
2416
8c04a55c0229 Add a debug level spinner at the end of Preferences > Advanced.
Laurent Monin <geeqie@norz.org>
parents: 226
diff changeset
2417 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
2418 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
2419
2596
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
2420 pref_checkbox_new_int(group, _("Timer data"),
9c435c86a296 Optional timer data in log window
Colin Clark <colin.clark@cclark.uk>
parents: 2587
diff changeset
2421 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
2422
2505
d01e5b8e80d9 Eliminate FIXME: Log window line limit
Colin Clark <colin.clark@cclark.uk>
parents: 2501
diff changeset
2423 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
2424 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
2425 #endif
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2426 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2427
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2428 /* accelerators tab */
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2429 static void config_tab_accelerators(GtkWidget *notebook)
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2430 {
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2431 GtkWidget *hbox;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2432 GtkWidget *vbox;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2433 GtkWidget *group;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2434 GtkWidget *button;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2435 GtkWidget *scrolled;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2436 GtkWidget *accel_view;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2437 GtkCellRenderer *renderer;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2438 GtkTreeSelection *selection;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2439 GtkTreeViewColumn *column;
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2440
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2441 vbox = scrolled_notebook_page(notebook, _("Keyboard"));
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2442
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2443 group = pref_group_new(vbox, TRUE, _("Accelerators"), GTK_ORIENTATION_VERTICAL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2444
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2445 scrolled = gtk_scrolled_window_new(NULL, NULL);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2446 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
2447 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
2448 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
2449 gtk_widget_show(scrolled);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2450
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2451 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
2452
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2453 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
2454 g_object_unref(accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2455 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
2456 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
2457
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2458 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
2459
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2460 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2461
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2462 column = gtk_tree_view_column_new_with_attributes(_("Action"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2463 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2464 "text", AE_ACTION,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2465 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2466
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2467 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
2468 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2469 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
2470
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2471
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2472 renderer = gtk_cell_renderer_accel_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2473 g_signal_connect(G_OBJECT(renderer), "accel-cleared",
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2474 G_CALLBACK(accel_store_cleared_cb), accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2475 g_signal_connect(G_OBJECT(renderer), "accel-edited",
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2476 G_CALLBACK(accel_store_edited_cb), accel_store);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2477
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2478
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2479 g_object_set (renderer,
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2480 "editable", TRUE,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2481 "accel-mode", GTK_CELL_RENDERER_ACCEL_MODE_OTHER,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2482 NULL);
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2483
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2484 column = gtk_tree_view_column_new_with_attributes(_("KEY"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2485 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2486 "text", AE_KEY,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2487 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2488
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2489 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
2490 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2491 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
2492
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2493 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2494
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2495 column = gtk_tree_view_column_new_with_attributes(_("Tooltip"),
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2496 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2497 "text", AE_TOOLTIP,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2498 NULL);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2499
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2500 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
2501 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2502 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
2503
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2504 renderer = gtk_cell_renderer_text_new();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2505
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2506 column = gtk_tree_view_column_new_with_attributes("Accel",
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2507 renderer,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2508 "text", AE_ACCEL,
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2509 NULL);
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2510
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2511 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
2512 gtk_tree_view_column_set_resizable(column, TRUE);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2513 gtk_tree_view_append_column(GTK_TREE_VIEW(accel_view), column);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2514
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2515 accel_store_populate();
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2516 gtk_container_add(GTK_CONTAINER(scrolled), accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2517 gtk_widget_show(accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2518
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2519 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
2520
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2521 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
2522 G_CALLBACK(accel_default_cb), accel_view);
1601
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2523 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
2524 gtk_widget_show(button);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2525
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2526 button = pref_button_new(NULL, NULL, _("Reset selected"), FALSE,
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2527 G_CALLBACK(accel_reset_cb), accel_view);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2528 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
2529 gtk_widget_show(button);
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2530 }
102d767de670 added keyboard configuration dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1599
diff changeset
2531
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2532 /* toolbar tab */
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2533 static void config_tab_toolbar(GtkWidget *notebook)
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2534 {
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2535 GtkWidget *vbox;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2536 GtkWidget *toolbardata;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2537 LayoutWindow *lw;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2538
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2539 lw = layout_window_list->data;
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2540
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2541 vbox = scrolled_notebook_page(notebook, _("Toolbar"));
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2542
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2543 toolbardata = toolbar_select_new(lw);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2544 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
2545 gtk_widget_show(vbox);
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2546 }
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2547
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2548 /* stereo tab */
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2549 static void config_tab_stereo(GtkWidget *notebook)
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2550 {
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2551 GtkWidget *vbox;
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2552 GtkWidget *group;
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
2553 GtkWidget *group2;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2554 GtkWidget *table;
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2555 GtkWidget *box;
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2556 GtkWidget *box2;
1891
25645af65caf added fixed stereo mode
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1889
diff changeset
2557 GtkWidget *fs_button;
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2558 vbox = scrolled_notebook_page(notebook, _("Stereo"));
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2559
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2560 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
2561
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2562 table = pref_table_new(group, 2, 1, FALSE, FALSE);
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2563 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
2564
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2565 table = pref_table_new(group, 2, 2, TRUE, FALSE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2566 box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2567 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
2568 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
2569 box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2570 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
2571 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
2572 box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2573 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
2574 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
2575 box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2576 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
2577 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
2578 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
2579 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
2580 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
2581 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
2582
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2583 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
2584 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
2585 options->stereo.enable_fsmode, &c_options->stereo.enable_fsmode);
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2586 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
2587 pref_checkbox_link_sensitivity(fs_button, box2);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2588 table = pref_table_new(box2, 2, 1, FALSE, FALSE);
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2589 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
2590 table = pref_table_new(box2, 2, 2, TRUE, FALSE);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2591 box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2592 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
2593 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
2594 box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2595 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
2596 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
2597 box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2598 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
2599 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
2600 box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2601 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
2602 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
2603 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
2604 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
2605 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
2606 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
2607
1892
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2608 group2 = pref_group_new(box2, FALSE, _("Fixed position"), GTK_ORIENTATION_VERTICAL);
e250a4b38301 improved preferences dialog
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1891
diff changeset
2609 table = pref_table_new(group2, 5, 3, FALSE, FALSE);
1921
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
2610 pref_table_spin_new_int(table, 0, 0, _("Width"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
2611 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
2612 pref_table_spin_new_int(table, 3, 0, _("Height"), NULL,
9a82e917c61d fixed stereo.fixed preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1896
diff changeset
2613 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
2614 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
2615 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
2616 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
2617 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
2618 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
2619 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
2620 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
2621 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
2622
1887
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2623 }
cca739d627fd stereo mode preferences
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1802
diff changeset
2624
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2625 /* Main preferences window */
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2626 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
2627 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2628 GtkWidget *win_vbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2629 GtkWidget *hbox;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2630 GtkWidget *notebook;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2631 GtkWidget *button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2632 GtkWidget *ct_button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2633
321
5e161ceab234 options_c -> c_options
Laurent Monin <geeqie@norz.org>
parents: 320
diff changeset
2634 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
2635
289
d4d7e7aa0d88 Simplify and unify gtk_window creation with the help of
Laurent Monin <geeqie@norz.org>
parents: 288
diff changeset
2636 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
2637 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
2638 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
2639 G_CALLBACK(config_window_delete), NULL);
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2640 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
2641 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
2642 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
2643
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2644 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
2645 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
2646 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
2647
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2648 notebook = gtk_notebook_new();
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2649 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
2650 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
2651
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2652 config_tab_general(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2653 config_tab_image(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2654 config_tab_windows(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2655 config_tab_accelerators(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2656 config_tab_files(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2657 config_tab_metadata(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2658 config_tab_color(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2659 config_tab_stereo(notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2660 config_tab_behavior(notebook);
2623
f5886b8e1968 Fix #444: User-definable toolbar
Colin Clark <colin.clark@cclark.uk>
parents: 2612
diff changeset
2661 config_tab_toolbar(notebook);
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2662
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2663 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
2664 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
2665 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
2666 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
2667 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
2668
2412
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2669 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
2670 G_CALLBACK(config_window_help_cb), notebook);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2671 gtk_container_add(GTK_CONTAINER(hbox), button);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2672 gtk_widget_set_can_default(button, TRUE);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2673 gtk_widget_show(button);
0168ad13f7d9 Fix #434: Part 2.0
Colin Clark <cclark@mcb.net>
parents: 2406
diff changeset
2674
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2675 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
2676 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
2677 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
2678 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
2679 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
2680 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
2681
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2682 ct_button = button;
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2683
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
2684 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
2685 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
2686 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
2687 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
2688 gtk_widget_show(button);
2059
e477a205c19a Whitespaces fixes.
Laurent Monin <geeqie@norz.org>
parents: 2058
diff changeset
2689
230
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2690 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
2691 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
2692 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
2693 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
2694 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
2695
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2696 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
2697 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
2698 gtk_container_add(GTK_CONTAINER(hbox), button);
2034
9297985567b5 use accessor functions
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 2021
diff changeset
2699 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
2700 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
2701
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2702 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
2703 {
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2704 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
2705 }
ab6b27690d45 Move tabs code from config_window_create() to new smaller functions.
Laurent Monin <geeqie@norz.org>
parents: 227
diff changeset
2706
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2707 gtk_widget_show(notebook);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2708
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2709 gtk_widget_show(configwindow);
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2710 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2711
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2712 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2713 *-----------------------------------------------------------------------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2714 * config window show (public)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2715 *-----------------------------------------------------------------------------
442
f698b737556b Big whitespaces cleanup:
Laurent Monin <geeqie@norz.org>
parents: 441
diff changeset
2716 */
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2717
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2718 void show_config_window(void)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2719 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2720 if (configwindow)
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2721 {
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2722 gtk_window_present(GTK_WINDOW(configwindow));
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2723 return;
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2724 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2725
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2726 config_window_create();
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2727 }
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2728
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2729 /*
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2730 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2731 * about window
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2732 *-----------------
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2733 */
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2734
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2735 void show_about_window(LayoutWindow *lw)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2736 {
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2737 GdkPixbuf *pixbuf_logo;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2738 GdkPixbuf *pixbuf_icon;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2739 gchar *authors[1000];
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2740 gchar *comment;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2741 gint i_authors = 0;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2742 gchar *path;
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2743 GString *copyright;
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2744 gchar *zd_path;
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2745 ZoneDetect *cd;
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2746 FILE *fp = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2747 #define LINE_LENGTH 1000
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2748 gchar line[LINE_LENGTH];
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2749
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2750 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
2751 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
2752
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2753 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
2754 cd = ZDOpenDatabase(zd_path);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2755 if (cd)
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2756 {
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2757 copyright = g_string_append(copyright, ZDGetNotice(cd));
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2758 }
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2759 ZDCloseDatabase(cd);
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2760 g_free(zd_path);
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2761
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2762 authors[0] = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2763 path = g_build_filename(GQ_HELPDIR, "AUTHORS", NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2764 fp = fopen(path, "r");
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2765 if (fp)
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2766 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2767 while(fgets(line, LINE_LENGTH, fp))
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2768 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2769 /* get rid of ending \n from fgets */
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2770 line[strlen(line) - 1] = '\0';
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2771 authors[i_authors] = g_strdup(line);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2772 i_authors++;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2773 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2774 authors[i_authors] = NULL;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2775 fclose(fp);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2776 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2777 g_free(path);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2778
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2779 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
2780 "\nhttps://github.com/BestImageViewer/geeqie/issues",NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2781
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2782 pixbuf_logo = pixbuf_inline(PIXBUF_INLINE_LOGO);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2783 pixbuf_icon = pixbuf_inline(PIXBUF_INLINE_ICON);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2784 gtk_show_about_dialog(GTK_WINDOW(lw->window),
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2785 "title", _("About Geeqie"),
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2786 "resizable", TRUE,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2787 "program-name", GQ_APPNAME,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2788 "version", VERSION,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2789 "logo", pixbuf_logo,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2790 "icon", pixbuf_icon,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2791 "website", GQ_WEBSITE,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2792 "website-label", "Website",
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2793 "comments", comment,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2794 "authors", authors,
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2795 "translator-credits", _("translator-credits"),
2746
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2796 "wrap-license", TRUE,
8bab8ac8ade0 Local time - UTC offset and daylight saving correction
Colin Clark <colin.clark@cclark.uk>
parents: 2740
diff changeset
2797 "license", copyright->str,
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2798 NULL);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2799
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2800 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
2801
2573
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2802 gint n = 0;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2803 while(n < i_authors)
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2804 {
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2805 g_free(authors[n]);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2806 n++;
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2807 }
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2808 g_free(comment);
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2809
3e5919841759 Update secondary user documentation
Colin Clark <colin.clark@cclark.uk>
parents: 2568
diff changeset
2810 return;
9
8d9e9edd6fdf Sync to GQview 1.5.9 release.
John Ellis <johne@verizon.net>
parents:
diff changeset
2811 }
2335
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2812
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2813 static void image_overlay_set_text_colours()
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2814 {
aa2e9d37193b Image overlay configurable colours
Colin Clark <cclark@mcb.net>
parents: 2334
diff changeset
2815 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
2816 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
2817 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
2818 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
2819 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
2820 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
2821 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
2822 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
2823 }
1055
4bbdfab3c89a Adding a vim modeline to all files - patch by Klaus Ethgen
Vladimir Nadvornik <nadvornik@suse.cz>
parents: 1053
diff changeset
2824 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */