Mercurial > geeqie
annotate src/options.h @ 945:fd84847c8231
speed-up of directory notification on deleting large number of files
author | nadvornik |
---|---|
date | Sun, 27 Jul 2008 13:46:24 +0000 |
parents | ad420f2eb789 |
children | a4a38ea9fbaa |
rev | line source |
---|---|
508 | 1 /* |
2 * Geeqie | |
3 * Copyright (C) 2008 The Geeqie Team | |
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 enable_metadata_dirs; |
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 tree_descend_subdirs; |
508 | 30 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
31 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
|
32 gboolean update_on_time_change; |
508 | 33 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
34 guint duplicates_similarity_threshold; |
508 | 35 |
36 gint open_recent_list_maxsize; | |
37 gint dnd_icon_size; | |
38 | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
39 gboolean save_metadata_in_image_file; |
594
4cfce4ed35e0
Use a dedicated option to enable keywords and comment saving as XMP tags
zas_
parents:
556
diff
changeset
|
40 |
884
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
41 /* start up */ |
629 | 42 struct { |
43 gboolean restore_path; | |
630
83d3ded39e49
An option to save and restore the last path used was added.
zas_
parents:
629
diff
changeset
|
44 gboolean use_last_path; |
629 | 45 gchar *path; |
46 } startup; | |
47 | |
508 | 48 /* file ops */ |
49 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
50 gboolean enable_in_place_rename; |
508 | 51 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
52 gboolean confirm_delete; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
53 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
|
54 gboolean safe_delete_enable; |
508 | 55 gchar *safe_delete_path; |
56 gint safe_delete_folder_maxsize; | |
57 } file_ops; | |
58 | |
59 /* image */ | |
60 struct { | |
858 | 61 gboolean exif_rotate_enable; |
62 guint scroll_reset_method; | |
63 gboolean fit_window_to_image; | |
64 gboolean limit_window_size; | |
508 | 65 gint max_window_size; |
858 | 66 gboolean limit_autofit_size; |
508 | 67 gint max_autofit_size; |
68 | |
69 gint tile_cache_max; /* in megabytes */ | |
848 | 70 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
|
71 guint dither_quality; |
858 | 72 gboolean enable_read_ahead; |
508 | 73 |
885
ad420f2eb789
Use a specific enum for image.zoom_mode values (ZoomMode) and
zas_
parents:
884
diff
changeset
|
74 ZoomMode zoom_mode; |
858 | 75 gboolean zoom_2pass; |
76 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
|
77 guint zoom_quality; |
508 | 78 gint zoom_increment; /* 10 is 1.0, 5 is 0.05, 20 is 2.0, etc. */ |
79 | |
80 gint use_custom_border_color; | |
81 GdkColor border_color; | |
82 | |
83 gint read_buffer_size; /* bytes to read from file per read() */ | |
84 gint idle_read_loop_count; /* the number of bytes to read per idle call (define x image.read_buffer_size) */ | |
85 } image; | |
86 | |
87 /* thumbnails */ | |
88 struct { | |
89 gint max_width; | |
90 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
|
91 gboolean enable_caching; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
92 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
|
93 gboolean fast; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
94 gboolean use_xvpics; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
95 gboolean spec_standard; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
96 guint quality; |
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 | |
106 /* collections */ | |
107 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
108 gboolean rectangular_selection; |
508 | 109 } collections; |
110 | |
111 /* editors */ | |
730 | 112 Editor editor[GQ_EDITOR_SLOTS]; |
508 | 113 |
737
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
114 /* shell */ |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
115 struct { |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
116 gchar *path; |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
117 gchar *options; |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
118 } shell; |
8a8873e7a552
Make shell command and its option rc file options instead of hardcoded strings.
zas_
parents:
736
diff
changeset
|
119 |
508 | 120 /* file sorting */ |
121 struct { | |
122 SortType method; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
123 gboolean ascending; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
124 gboolean case_sensitive; /* file sorting method (case) */ |
508 | 125 } file_sort; |
126 | |
127 /* slideshow */ | |
128 struct { | |
129 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
|
130 gboolean random; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
131 gboolean repeat; |
508 | 132 } slideshow; |
133 | |
134 /* fullscreen */ | |
135 struct { | |
136 gint screen; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
137 gboolean clean_flip; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
138 gboolean disable_saver; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
139 gboolean above; |
508 | 140 } fullscreen; |
141 | |
612 | 142 /* histogram */ |
143 struct { | |
144 guint last_channel_mode; | |
145 guint last_log_mode; | |
146 } histogram; | |
147 | |
508 | 148 /* image overlay */ |
149 struct { | |
150 struct { | |
638
8cc9f349c670
Rename option image_overlay.common.enabled to image_overlay.common.state
zas_
parents:
630
diff
changeset
|
151 guint state; |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
152 gboolean show_at_startup; |
508 | 153 gchar *template_string; |
822
df541dc41707
Allow to set image overlay info position through options:
zas_
parents:
764
diff
changeset
|
154 gint x; |
df541dc41707
Allow to set image overlay info position through options:
zas_
parents:
764
diff
changeset
|
155 gint y; |
508 | 156 } common; |
157 } image_overlay; | |
158 | |
159 /* layout */ | |
160 struct { | |
161 gchar *order; | |
162 gint style; | |
163 | |
164 DirViewType dir_view_type; | |
556
fe675761d091
Replace Layout icon_view field by more generic file_view_type.
zas_
parents:
508
diff
changeset
|
165 FileViewType file_view_type; |
508 | 166 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
167 gboolean show_thumbnails; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
168 gboolean show_marks; |
825 | 169 gboolean show_directory_date; |
508 | 170 |
171 struct { | |
172 gint w; | |
173 gint h; | |
174 gint x; | |
175 gint y; | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
176 gboolean maximized; |
508 | 177 gint hdivider_pos; |
178 gint vdivider_pos; | |
179 } main_window; | |
180 | |
181 struct { | |
182 gint w; | |
183 gint h; | |
184 gint x; | |
185 gint y; | |
186 gint vdivider_pos; | |
187 } float_window; | |
188 | |
764
ae618ebec3e9
Save properties window width and height to rc file and restore
zas_
parents:
740
diff
changeset
|
189 struct { |
ae618ebec3e9
Save properties window width and height to rc file and restore
zas_
parents:
740
diff
changeset
|
190 gint w; |
ae618ebec3e9
Save properties window width and height to rc file and restore
zas_
parents:
740
diff
changeset
|
191 gint h; |
ae618ebec3e9
Save properties window width and height to rc file and restore
zas_
parents:
740
diff
changeset
|
192 } properties_window; |
ae618ebec3e9
Save properties window width and height to rc file and restore
zas_
parents:
740
diff
changeset
|
193 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
194 gboolean save_window_positions; |
508 | 195 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
196 gboolean tools_float; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
197 gboolean tools_hidden; |
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
198 gboolean tools_restore_state; |
508 | 199 |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
200 gboolean toolbar_hidden; |
508 | 201 |
202 } layout; | |
203 | |
204 /* panels */ | |
205 struct { | |
206 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
207 gboolean enabled; |
508 | 208 gint width; |
209 } info; | |
210 | |
211 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
212 gboolean enabled; |
508 | 213 gint width; |
214 } exif; | |
215 | |
216 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
217 gboolean enabled; |
508 | 218 gint mode_state; |
219 gint action_state; | |
220 gint selection_state; | |
221 } sort; | |
222 } panels; | |
223 | |
684 | 224 /* properties dialog */ |
225 struct { | |
226 gchar *tabs_order; | |
227 } properties; | |
508 | 228 |
229 /* color profiles */ | |
230 struct { | |
870
3dd2cb78d0f9
Make better matching between options types in options.h and the rest of the code.
zas_
parents:
858
diff
changeset
|
231 gboolean enabled; |
508 | 232 gint input_type; |
233 gchar *input_file[COLOR_PROFILE_INPUTS]; | |
234 gchar *input_name[COLOR_PROFILE_INPUTS]; | |
235 gint screen_type; | |
236 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
|
237 gboolean use_image; |
508 | 238 |
239 } color_profile; | |
240 | |
884
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
241 /* Helpers programs */ |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
242 struct { |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
243 struct { |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
244 gchar *command_name; |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
245 gchar *command_line; |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
246 } html_browser; |
ff16ed0d2c8a
Improve ways to specify html browser (used for help, see bug 2015099).
zas_
parents:
870
diff
changeset
|
247 } helpers; |
508 | 248 }; |
249 | |
250 ConfOptions *options; | |
251 | |
252 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
|
253 void setup_default_options(ConfOptions *options); |
9b0ac8d58c89
Move setup_default_options() and sync_options_with_current_state() to options.[ch].
zas_
parents:
737
diff
changeset
|
254 void sync_options_with_current_state(ConfOptions *options); |
508 | 255 |
256 #endif /* OPTIONS_H */ |