/*
* Geeqie
- * Copyright (C) 2008 The Geeqie Team
+ * Copyright (C) 2008 - 2012 The Geeqie Team
*
* Authors: Vladimir Nadvornik, Laurent Monin
*
gboolean place_dialogs_under_mouse;
gboolean mousewheel_scrolls;
gboolean show_icon_names;
- gboolean show_copy_path;
/* various */
- gboolean enable_metadata_dirs;
-
gboolean tree_descend_subdirs;
gboolean lazy_image_sync;
gint open_recent_list_maxsize;
gint dnd_icon_size;
- gboolean save_metadata_in_image_file;
-
- /* start up */
- struct {
- gboolean restore_path;
- gboolean use_last_path;
- gchar *path;
- } startup;
+ gboolean save_window_positions;
+ gboolean tools_restore_state;
/* file ops */
struct {
/* image */
struct {
gboolean exif_rotate_enable;
+ gboolean exif_proof_rotate_enable;
guint scroll_reset_method;
gboolean fit_window_to_image;
gboolean limit_window_size;
gint tile_cache_max; /* in megabytes */
gint image_cache_max; /* in megabytes */
- guint dither_quality;
gboolean enable_read_ahead;
ZoomMode zoom_mode;
gboolean zoom_to_fit_allow_expand;
guint zoom_quality;
gint zoom_increment; /* 10 is 1.0, 5 is 0.05, 20 is 2.0, etc. */
+ gboolean use_clutter_renderer;
- gint use_custom_border_color;
+ gboolean use_custom_border_color_in_fullscreen;
+ gboolean use_custom_border_color;
GdkColor border_color;
-
- gint read_buffer_size; /* bytes to read from file per read() */
- gint idle_read_loop_count; /* the number of bytes to read per idle call (define x image.read_buffer_size) */
} image;
/* thumbnails */
gint max_height;
gboolean enable_caching;
gboolean cache_into_dirs;
- gboolean fast;
gboolean use_xvpics;
gboolean spec_standard;
guint quality;
+ gboolean use_exif;
} thumbnails;
/* file filtering */
gboolean disable;
} file_filter;
+ struct {
+ gchar *ext;
+ } sidecar;
+
/* collections */
struct {
gboolean rectangular_selection;
} collections;
- /* editors */
- Editor editor[GQ_EDITOR_SLOTS];
-
/* shell */
struct {
gchar *path;
gchar *options;
} shell;
-
+
/* file sorting */
struct {
SortType method;
gboolean above;
} fullscreen;
- /* histogram */
- struct {
- guint last_channel_mode;
- guint last_log_mode;
- } histogram;
-
/* image overlay */
struct {
- struct {
- guint state;
- gboolean show_at_startup;
- gchar *template_string;
- gint x;
- gint y;
- } common;
+ gchar *template_string;
+ gint x;
+ gint y;
} image_overlay;
- /* layout */
- struct {
- gchar *order;
- gint style;
-
- DirViewType dir_view_type;
- FileViewType file_view_type;
-
- gboolean show_thumbnails;
- gboolean show_marks;
- gboolean show_directory_date;
-
- struct {
- gint w;
- gint h;
- gint x;
- gint y;
- gboolean maximized;
- gint hdivider_pos;
- gint vdivider_pos;
- } main_window;
-
- struct {
- gint w;
- gint h;
- gint x;
- gint y;
- gint vdivider_pos;
- } float_window;
-
- struct {
- gint w;
- gint h;
- } properties_window;
-
- gboolean save_window_positions;
-
- gboolean tools_float;
- gboolean tools_hidden;
- gboolean tools_restore_state;
-
- gboolean toolbar_hidden;
-
- gchar *home_path;
- } layout;
-
- /* panels */
- struct {
- struct {
- gboolean enabled;
- gint width;
- } info;
-
- struct {
- gboolean enabled;
- gint width;
- } exif;
-
- struct {
- gboolean enabled;
- gint mode_state;
- gint action_state;
- gint selection_state;
- } sort;
- } panels;
-
/* properties dialog */
struct {
gchar *tabs_order;
gint input_type;
gchar *input_file[COLOR_PROFILE_INPUTS];
gchar *input_name[COLOR_PROFILE_INPUTS];
- gint screen_type;
gchar *screen_file;
gboolean use_image;
+ gboolean use_x11_screen_profile;
} color_profile;
} html_browser;
} helpers;
- /* Various paths and links to documentation */
- struct {
- gchar *helpdir;
- gchar *htmldir;
- } documentation;
+ /* Metadata */
+ struct {
+ gboolean enable_metadata_dirs;
+
+ gboolean save_in_image_file;
+ gboolean save_legacy_IPTC;
+ gboolean warn_on_write_problems;
+
+ gboolean save_legacy_format;
+
+ gboolean sync_grouped_files;
+
+ gboolean confirm_write;
+ gint confirm_timeout;
+ gboolean confirm_after_timeout;
+ gboolean confirm_on_image_change;
+ gboolean confirm_on_dir_change;
+ gboolean keywords_case_sensitive;
+ gboolean write_orientation;
+ } metadata;
+
+ /* Stereo */
+ struct {
+ gint mode;;
+ gint fsmode;
+ gboolean enable_fsmode;
+ gint fixed_w, fixed_h;
+ gint fixed_x1, fixed_y1;
+ gint fixed_x2, fixed_y2;
+ struct { /* options in this struct are packed to mode and fsmode entries */
+ gboolean mirror_right;
+ gboolean mirror_left;
+ gboolean flip_right;
+ gboolean flip_left;
+ gboolean swap;
+ gboolean temp_disable;
+ gboolean fs_mirror_right;
+ gboolean fs_mirror_left;
+ gboolean fs_flip_right;
+ gboolean fs_flip_left;
+ gboolean fs_swap;
+ gboolean fs_temp_disable;
+ } tmp;
+ } stereo;
};
ConfOptions *options;
+CommandLine *command_line;
ConfOptions *init_options(ConfOptions *options);
void setup_default_options(ConfOptions *options);
-void sync_options_with_current_state(ConfOptions *options);
+void save_options(ConfOptions *options);
+gboolean load_options(ConfOptions *options);
+
+void copy_layout_options(LayoutOptions *dest, const LayoutOptions *src);
+void free_layout_options_content(LayoutOptions *dest);
+LayoutOptions *init_layout_options(LayoutOptions *options);
#endif /* OPTIONS_H */
+/* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */