Mercurial > geeqie
annotate src/options.h @ 1473:01693e68707b
layout id "_current_" matches the currently active layout window
author | nadvornik |
---|---|
date | Sat, 21 Mar 2009 19:51:07 +0000 |
parents | d7a6fb7a90dd |
children | 73cecf473802 |
rev | line source |
---|---|
508 | 1 /* |
2 * Geeqie | |
1284 | 3 * Copyright (C) 2008 - 2009 The Geeqie Team |
508 | 4 * |
5 * Authors: Vladimir Nadvornik, Laurent Monin | |
6 * | |
7 * This software is released under the GNU General Public License (GNU GPL). | |
8 * Please read the included file COPYING for more information. | |
9 * This software comes with no warranty of any kind, use at your own risk! | |
10 */ | |
11 | |
12 #ifndef OPTIONS_H | |
13 #define OPTIONS_H | |
14 | |
15 typedef struct _ConfOptions ConfOptions; | |
16 | |
17 struct _ConfOptions | |
18 { | |
19 /* ui */ | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
20 gboolean progressive_key_scrolling; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
21 gboolean place_dialogs_under_mouse; |
736 | 22 gboolean mousewheel_scrolls; |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
23 gboolean show_icon_names; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
24 gboolean show_copy_path; |
508 | 25 |
26 /* various */ | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
27 gboolean tree_descend_subdirs; |
508 | 28 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
29 gboolean lazy_image_sync; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
30 gboolean update_on_time_change; |
508 | 31 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
32 guint duplicates_similarity_threshold; |
508 | 33 |
34 gint open_recent_list_maxsize; | |
35 gint dnd_icon_size; | |
36 | |
1436
d7a6fb7a90dd
completely separated global and layout window options
nadvornik
parents:
1336
diff
changeset
|
37 gboolean save_window_positions; |
d7a6fb7a90dd
completely separated global and layout window options
nadvornik
parents:
1336
diff
changeset
|
38 gboolean tools_restore_state; |
594
4cfce4ed35e0
Use a dedicated option to enable keywords and comment saving as XMP tags
zas_
parents:
556
diff
changeset
|
39 |
884
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
40 /* start up */ |
629 | 41 struct { |
42 gboolean restore_path; | |
630
83d3ded39e49
An option to save and restore the last path used was added.
zas_
parents:
629
diff
changeset
|
43 gboolean use_last_path; |
629 | 44 gchar *path; |
45 } startup; | |
46 | |
508 | 47 /* file ops */ |
48 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
49 gboolean enable_in_place_rename; |
508 | 50 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
51 gboolean confirm_delete; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
52 gboolean enable_delete_key; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
53 gboolean safe_delete_enable; |
508 | 54 gchar *safe_delete_path; |
55 gint safe_delete_folder_maxsize; | |
56 } file_ops; | |
57 | |
58 /* image */ | |
59 struct { | |
858 | 60 gboolean exif_rotate_enable; |
61 guint scroll_reset_method; | |
62 gboolean fit_window_to_image; | |
63 gboolean limit_window_size; | |
508 | 64 gint max_window_size; |
858 | 65 gboolean limit_autofit_size; |
508 | 66 gint max_autofit_size; |
67 | |
68 gint tile_cache_max; /* in megabytes */ | |
848 | 69 gint image_cache_max; /* in megabytes */ |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
70 guint dither_quality; |
858 | 71 gboolean enable_read_ahead; |
508 | 72 |
885
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
884
diff
changeset
|
73 ZoomMode zoom_mode; |
858 | 74 gboolean zoom_2pass; |
75 gboolean zoom_to_fit_allow_expand; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
76 guint zoom_quality; |
508 | 77 gint zoom_increment; /* 10 is 1.0, 5 is 0.05, 20 is 2.0, etc. */ |
78 | |
79 gint use_custom_border_color; | |
80 GdkColor border_color; | |
81 | |
82 gint read_buffer_size; /* bytes to read from file per read() */ | |
83 gint idle_read_loop_count; /* the number of bytes to read per idle call (define x image.read_buffer_size) */ | |
84 } image; | |
85 | |
86 /* thumbnails */ | |
87 struct { | |
88 gint max_width; | |
89 gint max_height; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
90 gboolean enable_caching; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
91 gboolean cache_into_dirs; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
92 gboolean fast; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
93 gboolean use_xvpics; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
94 gboolean spec_standard; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
95 guint quality; |
1060 | 96 gboolean use_exif; |
508 | 97 } thumbnails; |
98 | |
99 /* file filtering */ | |
100 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
101 gboolean show_hidden_files; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
102 gboolean show_dot_directory; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
103 gboolean disable; |
508 | 104 } file_filter; |
105 | |
1229
878718372aca
sidecar files grouping was made case-insensitive
nadvornik
parents:
1208
diff
changeset
|
106 struct { |
878718372aca
sidecar files grouping was made case-insensitive
nadvornik
parents:
1208
diff
changeset
|
107 gchar *ext; |
878718372aca
sidecar files grouping was made case-insensitive
nadvornik
parents:
1208
diff
changeset
|
108 } sidecar; |
878718372aca
sidecar files grouping was made case-insensitive
nadvornik
parents:
1208
diff
changeset
|
109 |
508 | 110 /* collections */ |
111 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
112 gboolean rectangular_selection; |
508 | 113 } collections; |
114 | |
737
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
115 /* shell */ |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
116 struct { |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
117 gchar *path; |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
118 gchar *options; |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
119 } shell; |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
120 |
508 | 121 /* file sorting */ |
122 struct { | |
123 SortType method; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
124 gboolean ascending; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
125 gboolean case_sensitive; /* file sorting method (case) */ |
508 | 126 } file_sort; |
127 | |
128 /* slideshow */ | |
129 struct { | |
130 gint delay; /* in tenths of a second */ | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
131 gboolean random; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
132 gboolean repeat; |
508 | 133 } slideshow; |
134 | |
135 /* fullscreen */ | |
136 struct { | |
137 gint screen; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
138 gboolean clean_flip; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
139 gboolean disable_saver; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
140 gboolean above; |
508 | 141 } fullscreen; |
142 | |
143 /* image overlay */ | |
144 struct { | |
1336 | 145 gchar *template_string; |
146 gint x; | |
147 gint y; | |
508 | 148 } image_overlay; |
149 | |
684 | 150 /* properties dialog */ |
151 struct { | |
152 gchar *tabs_order; | |
153 } properties; | |
508 | 154 |
155 /* color profiles */ | |
156 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
157 gboolean enabled; |
508 | 158 gint input_type; |
159 gchar *input_file[COLOR_PROFILE_INPUTS]; | |
160 gchar *input_name[COLOR_PROFILE_INPUTS]; | |
161 gint screen_type; | |
162 gchar *screen_file; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
163 gboolean use_image; |
508 | 164 |
165 } color_profile; | |
166 | |
884
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
167 /* Helpers programs */ |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
168 struct { |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
169 struct { |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
170 gchar *command_name; |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
171 gchar *command_line; |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
172 } html_browser; |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
173 } helpers; |
1013
88ebc61e33ae
Allow to override documentation paths through options:
zas_
parents:
980
diff
changeset
|
174 |
1208 | 175 /* Metadata */ |
176 struct { | |
177 gboolean enable_metadata_dirs; | |
178 | |
179 gboolean save_in_image_file; | |
180 gboolean save_legacy_IPTC; | |
181 gboolean warn_on_write_problems; | |
182 | |
183 gboolean save_legacy_format; | |
184 | |
185 gboolean sync_grouped_files; | |
186 | |
187 gboolean confirm_write; | |
188 gint confirm_timeout; | |
1244 | 189 gboolean confirm_after_timeout; |
1208 | 190 gboolean confirm_on_image_change; |
191 gboolean confirm_on_dir_change; | |
192 } metadata; | |
193 | |
508 | 194 }; |
195 | |
196 ConfOptions *options; | |
1313 | 197 CommandLine *command_line; |
508 | 198 |
199 ConfOptions *init_options(ConfOptions *options); | |
740
9b0ac8d58c89
Move setup_default_options() and sync_options_with_current_state() to options.[ch].
zas_
parents:
737
diff
changeset
|
200 void setup_default_options(ConfOptions *options); |
1019 | 201 void save_options(ConfOptions *options); |
1313 | 202 gboolean load_options(ConfOptions *options); |
1019 | 203 |
1309 | 204 void copy_layout_options(LayoutOptions *dest, const LayoutOptions *src); |
205 void free_layout_options_content(LayoutOptions *dest); | |
1436
d7a6fb7a90dd
completely separated global and layout window options
nadvornik
parents:
1336
diff
changeset
|
206 LayoutOptions *init_layout_options(LayoutOptions *options); |
508 | 207 |
208 #endif /* OPTIONS_H */ | |
1055
1646720364cf
Adding a vim modeline to all files - patch by Klaus Ethgen
nadvornik
parents:
1019
diff
changeset
|
209 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ |