typedef enum {
DIRVIEW_LIST,
- DIRVIEW_TREE
+ DIRVIEW_TREE,
+
+ // Keep this up to date!
+ DIRVIEW_LAST = DIRVIEW_TREE
} DirViewType;
typedef enum {
FILEVIEW_LIST,
- FILEVIEW_ICON
+ FILEVIEW_ICON,
+
+ // Keep this up to date!
+ FILEVIEW_LAST = FILEVIEW_ICON
} FileViewType;
#define CMD_COPY "geeqie-copy-command.desktop"
SORT_CTIME,
SORT_PATH,
SORT_NUMBER,
- SORT_EXIFTIME
+ SORT_EXIFTIME,
+ SORT_RATING
} SortType;
typedef enum {
typedef struct _ImageLoader ImageLoader;
typedef struct _ThumbLoader ThumbLoader;
+typedef struct _AnimationData AnimationData;
+
typedef struct _CollectInfo CollectInfo;
typedef struct _CollectionData CollectionData;
typedef struct _CollectTable CollectTable;
guint idle_done_id; /* event source id */
};
+struct _AnimationData
+{
+ ImageWindow *iw;
+ GdkPixbufAnimation *gpa;
+ GdkPixbufAnimationIter *iter;
+ GdkPixbuf *gpb;
+ FileData *data_adr;
+ guint delay;
+ gboolean valid;
+};
+
struct _CollectInfo
{
FileData *fd;
/* button, scroll functions */
void (*func_button)(ImageWindow *, GdkEventButton *event, gpointer);
- void (*func_drag)(ImageWindow *, GdkEventButton *event, gdouble dx, gdouble dy, gpointer);
+ void (*func_drag)(ImageWindow *, GdkEventMotion *event, gdouble dx, gdouble dy, gpointer);
void (*func_scroll)(ImageWindow *, GdkEventScroll *event, gpointer);
void (*func_focus_in)(ImageWindow *, gpointer);
gint orientation;
gboolean desaturate;
gint user_stereo;
+
+ gboolean mouse_wheel_mode;
};
#define FILEDATA_MARKS_SIZE 6
gchar *path;
const gchar *name;
const gchar *extension;
+ gchar *extended_extension;
gchar *collate_key_name;
gchar *collate_key_name_nocase;
gint64 size;
time_t exifdate;
GHashTable *modified_xmp; // hash table which contains unwritten xmp metadata in format: key->list of string values
GList *cached_metadata;
+ gint rating;
};
struct _LayoutOptions
gint vdivider_pos;
} float_window;
+ struct {
+ gint vdivider_pos;
+ } folder_window;
+
struct {
gint w;
gint h;
gboolean tools_hidden;
gboolean toolbar_hidden;
+ struct {
+ gboolean info;
+ gboolean sort;
+ gboolean tools_float;
+ gboolean tools_hidden;
+ gboolean hidden;
+ } bars_state;
+
gchar *home_path;
gchar *last_path;
StartUpPath startup_path;
gboolean exit_on_close;
+
+ gboolean animate;
};
struct _LayoutWindow
// gint bar_width;
GtkWidget *exif_window;
+
+ AnimationData *animation;
};
struct _ViewDir
guint select_idle_id; /* event source id */
};
-struct _IconData;
+typedef enum {
+ SELECTION_NONE = 0,
+ SELECTION_SELECTED = 1 << 0,
+ SELECTION_PRELIGHT = 1 << 1,
+ SELECTION_FOCUS = 1 << 2
+} SelectionType;
+
+typedef struct _IconData IconData;
+struct _IconData
+{
+ SelectionType selected;
+ FileData *fd;
+};
struct _ViewFileInfoIcon
{