Addl fix #521: zoom increment is not multiplicative
[geeqie.git] / src / options.h
index a1300e9..668cf52 100644 (file)
@@ -31,15 +31,22 @@ struct _ConfOptions
        gboolean place_dialogs_under_mouse;
        gboolean mousewheel_scrolls;
        gboolean image_lm_click_nav;
+       gboolean image_l_click_archive;
        gboolean image_l_click_video;
        gchar *image_l_click_video_editor;
        gboolean show_icon_names;
        gboolean show_star_rating;
+       gboolean draw_rectangle;
+       gboolean show_predefined_keyword_tree;
+       gboolean overunderexposed;
+       gboolean expand_menu_toolbar;
 
        /* various */
        gboolean tree_descend_subdirs;
        gboolean view_dir_list_single_click_enter;
 
+       gboolean circular_selection_lists;
+
        gboolean lazy_image_sync;
        gboolean update_on_time_change;
 
@@ -52,49 +59,79 @@ struct _ConfOptions
 
        gint open_recent_list_maxsize;
        gint dnd_icon_size;
+       DnDAction dnd_default_action;
        gint clipboard_selection;
 
        gboolean save_window_positions;
        gboolean use_saved_window_positions_for_new_windows;
+       gboolean save_window_workspace;
        gboolean tools_restore_state;
        gboolean save_dialog_window_positions;
        gboolean show_window_ids;
 
        gint log_window_lines;
 
-       gboolean marks_save;            // save marks on exit
+       gboolean marks_save;            /**< save marks on exit */
        gchar *marks_tooltips[FILEDATA_MARKS_SIZE];
 
        gboolean with_rename;
+       gboolean collections_on_top;
+       gboolean hide_window_in_fullscreen;
 
        gchar *help_search_engine;
 
-       /* info sidebar component heights */
+       /**
+        * @struct info_comment
+        * info sidebar component height
+        */
        struct {
                gint height;
        } info_comment;
 
+       /**
+        * @struct info_keywords
+        * info sidebar component height
+        */
        struct {
                gint height;
        } info_keywords;
 
+       /**
+        * @struct info_title
+        * info sidebar component height
+        */
        struct {
                gint height;
        } info_title;
 
+       /**
+        * @struct info_rating
+        * info sidebar component height
+        */
        struct {
                gint height;
        } info_rating;
 
+       /**
+        * @struct info_headline
+        * info sidebar component height
+        */
+       struct {
+               gint height;
+       } info_headline;
+
        /* file ops */
        struct {
                gboolean enable_in_place_rename;
 
                gboolean confirm_delete;
+               gboolean confirm_move_to_trash;
                gboolean enable_delete_key;
                gboolean safe_delete_enable;
+               gboolean use_system_trash;
                gchar *safe_delete_path;
                gint safe_delete_folder_maxsize;
+               gboolean no_trash;
        } file_ops;
 
        /* image */
@@ -109,15 +146,16 @@ struct _ConfOptions
                gint max_autofit_size;
                gint max_enlargement_size;
 
-               gint tile_cache_max;    /* in megabytes */
-               gint image_cache_max;   /* in megabytes */
+               gint tile_cache_max;    /**< in megabytes */
+               gint image_cache_max;   /**< in megabytes */
                gboolean enable_read_ahead;
 
                ZoomMode zoom_mode;
                gboolean zoom_2pass;
                gboolean zoom_to_fit_allow_expand;
                guint zoom_quality;
-               gint zoom_increment;    /* 100 is 1.0, 5 is 0.05, 200 is 2.0, etc. */
+               gint zoom_increment;    /**< 100 is 1.0, 5 is 0.05, 200 is 2.0, etc. */
+               ZoomStyle zoom_style;
                gboolean use_clutter_renderer;
 
                gboolean use_custom_border_color_in_fullscreen;
@@ -125,6 +163,8 @@ struct _ConfOptions
                GdkColor border_color;
                GdkColor alpha_color_1;
                GdkColor alpha_color_2;
+
+               gint tile_size;
        } image;
 
        /* thumbnails */
@@ -137,7 +177,9 @@ struct _ConfOptions
                gboolean spec_standard;
                guint quality;
                gboolean use_exif;
+               gboolean use_color_management;
                gboolean use_ft_metadata;
+               gint collection_preview;
 //             gboolean use_ft_metadata_small;
        } thumbnails;
 
@@ -169,13 +211,13 @@ struct _ConfOptions
        struct {
                SortType method;
                gboolean ascending;
-               gboolean case_sensitive; /* file sorting method (case) */
+               gboolean case_sensitive; /**< file sorting method (case) */
                gboolean natural;
        } file_sort;
 
        /* slideshow */
        struct {
-               gint delay;     /* in tenths of a second */
+               gint delay;     /**< in tenths of a second */
                gboolean random;
                gboolean repeat;
        } slideshow;
@@ -259,7 +301,11 @@ struct _ConfOptions
                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 */
+               /**
+                * @struct tmp
+                * options in this struct are packed to mode and fsmode entries
+                */
+               struct {
                        gboolean mirror_right;
                        gboolean mirror_left;
                        gboolean flip_right;
@@ -275,7 +321,17 @@ struct _ConfOptions
                } tmp;
        } stereo;
 
-       /* copy move rename */
+       /* External preview extraction */
+       struct {
+               gboolean enable;
+               gchar *select; /**< path to executable */
+               gchar *extract; /**< path to executable */
+       } external_preview;
+
+       /**
+        * @struct cp_mv_rn
+        * copy move rename
+        */
        struct {
                gint auto_start;
                gchar *auto_end;
@@ -296,11 +352,38 @@ struct _ConfOptions
                gunichar rejected;
        } star_rating;
 
+       /* Printer */
+       struct {
+               gchar *image_font;
+               gchar *page_font;
+               gboolean show_image_text;
+               gboolean show_page_text;
+               gchar *page_text;
+               gint image_text_position;
+               gint page_text_position;
+               gchar *template_string;
+       } printer;
+
+       /* Threads */
+       struct {
+               gint duplicates;
+       } threads;
+
+       gchar *mouse_button_8; /**< user-definable mouse buttons */
+       gchar *mouse_button_9; /**< user-definable mouse buttons */
+
+       gboolean class_filter[FILE_FORMAT_CLASSES]; /**< class file filter */
+
        gboolean read_metadata_in_idle;
+
+       gboolean disable_gpu; /**< GPU - see main.c */
+       gboolean override_disable_gpu; /**< GPU - see main.c */
+
+       GList *disabled_plugins;
 };
 
-ConfOptions *options;
-CommandLine *command_line;
+extern ConfOptions *options;
+extern CommandLine *command_line;
 
 ConfOptions *init_options(ConfOptions *options);
 void setup_default_options(ConfOptions *options);