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!
20 #ifdef HAVE_STRVERSCMP
29 *-------------------------------------
30 * Standard library includes
31 *-------------------------------------
42 #include <sys/types.h>
47 *-------------------------------------
48 * includes for glib / gtk / gdk-pixbuf
49 *-------------------------------------
55 #include <gdk-pixbuf/gdk-pixbuf.h>
56 #include <gdk-pixbuf/gdk-pixbuf-loader.h>
60 *----------------------------------------------------------------------------
62 *----------------------------------------------------------------------------
65 #define GQ_APPNAME "Geeqie"
66 #define GQ_APPNAME_LC "geeqie"
67 #define GQ_WEBSITE "geeqie.sourceforge.net"
68 #define GQ_EMAIL_ADDRESS "geeqie-devel@lists.sourceforge.net"
70 #define GQ_WMCLASS GQ_APPNAME_LC
72 #define GQ_RC_DIR "." GQ_APPNAME_LC
73 #define GQ_RC_DIR_COLLECTIONS GQ_RC_DIR"/collections"
74 #define GQ_RC_DIR_TRASH GQ_RC_DIR"/trash"
76 #define RC_FILE_NAME GQ_APPNAME_LC "rc"
78 #define ZOOM_RESET_ORIGINAL 0
79 #define ZOOM_RESET_FIT_WINDOW 1
80 #define ZOOM_RESET_NONE 2
82 #define SCROLL_RESET_TOPLEFT 0
83 #define SCROLL_RESET_CENTER 1
84 #define SCROLL_RESET_NOCHANGE 2
86 #define MOUSEWHEEL_SCROLL_SIZE 20
88 #define GQ_EDITOR_GENERIC_SLOTS 10
90 #define COLOR_PROFILE_INPUTS 4
92 #define DEFAULT_THUMB_WIDTH 96
93 #define DEFAULT_THUMB_HEIGHT 72
95 #if 1 /* set to 0 to disable debugging code and related options */
104 #include "typedefs.h"
107 *----------------------------------------------------------------------------
109 *----------------------------------------------------------------------------
111 ConfOptions *init_options(ConfOptions *options); /* TODO: move to globals.h */
113 ConfOptions *options;
116 * Since globals are used everywhere,
117 * it is easier to define them here.
120 extern GList *filename_filter;
131 extern gchar *layout_order;
132 extern gint layout_style;
134 extern gint layout_view_icons;
135 extern gint layout_view_tree;
137 extern gint show_icon_names;
139 extern gint tree_descend_subdirs;
141 extern gint lazy_image_sync;
142 extern gint update_on_time_change;
143 extern gint exif_rotate_enable;
145 extern gint color_profile_enabled;
146 extern gint color_profile_input_type;
147 extern gchar *color_profile_input_file[];
148 extern gchar *color_profile_input_name[];
149 extern gint color_profile_screen_type;
150 extern gchar *color_profile_screen_file;
151 extern gint color_profile_use_image;
154 *----------------------------------------------------------------------------
156 *----------------------------------------------------------------------------
160 * This also doubles as the main.c header.
163 GtkWidget *window_new(GtkWindowType type, const gchar *name, const gchar *icon,
164 const gchar *icon_file, const gchar *subtitle);
165 void window_set_icon(GtkWidget *window, const gchar *icon, const gchar *file);
166 gint window_maximized(GtkWidget *window);
168 gdouble get_zoom_increment(void);
170 void help_window_show(const gchar *key);
172 void keyboard_scroll_calc(gint *x, gint *y, GdkEventKey *event);
173 gint key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data);
174 void exit_program(void);
176 #define CASE_SORT(a, b) ( (options->file_sort_case_sensitive) ? strcmp((a), (b)) : strcasecmp((a), (b)) )