typedef struct _ViewFile ViewFile;
typedef struct _ViewFileList ViewFileList;
typedef struct _ViewFileIcon ViewFileIcon;
+typedef struct _ViewFileInfoList ViewFileInfoList;
+typedef struct _ViewFileInfoIcon ViewFileInfoIcon;
typedef struct _SlideShowData SlideShowData;
typedef struct _FullScreenData FullScreenData;
GtkWidget *popup;
};
+struct _ViewFileInfoList
+{
+ FileData *click_fd;
+ FileData *select_fd;
+
+ gint thumbs_enabled;
+ gint marks_enabled;
+ gint active_mark;
+
+ /* thumb updates */
+ gint thumbs_running;
+ gint thumbs_count;
+ ThumbLoader *thumbs_loader;
+ FileData *thumbs_filedata;
+
+ gint select_idle_id;
+};
+
struct _ViewFileList
{
GtkWidget *widget;
struct _IconData;
+struct _ViewFileInfoIcon
+{
+ /* table stuff */
+ gint columns;
+ gint rows;
+
+ GList *selection;
+ struct _IconData *prev_selection;
+
+ GtkWidget *tip_window;
+ gint tip_delay_id;
+ struct _IconData *tip_id;
+
+ struct _IconData *click_id;
+
+ struct _IconData *focus_id;
+ gint focus_row;
+ gint focus_column;
+
+ gint show_text;
+
+ gint sync_idle_id;
+
+ /* thumbs */
+ gint thumbs_running;
+ GList *thumbs_list;
+ gint thumbs_count;
+ ThumbLoader *thumbs_loader;
+ FileData *thumbs_fd;
+};
+
struct _ViewFileIcon
{
GtkWidget *widget;
#include <gdk/gdkkeysyms.h> /* for keyboard values */
+#define VFICON_INFO_POINTER(_vf_) ((ViewFileInfoIcon *)(_vf_->info))
+#define VFICON_INFO(_vf_, _part_) (VFICON_INFO_POINTER(_vf_)->_part_)
+
/* between these, the icon width is increased by thumb_max_width / 2 */
#define THUMB_MIN_ICON_WIDTH 128
#define THUMB_MAX_ICON_WIDTH 150
#include <gdk/gdkkeysyms.h> /* for keyboard values */
+#define VFLIST_INFO_POINTER(_vf_) ((ViewFileInfoList *)(_vf_->info))
+#define VFLIST_INFO(_vf_, _part_) (VFLIST_INFO_POINTER(_vf_)->_part_)
enum {
FILE_COLUMN_POINTER = 0,