# HG changeset patch # User zas_ # Date 1209815921 0 # Node ID d8d61dc4ff528d6c07c3bfd41ccee397164d7759 # Parent fe675761d09130344f39184cfc3c7edeff1ed676 Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet). diff -r fe675761d091 -r d8d61dc4ff52 src/typedefs.h --- a/src/typedefs.h Sat May 03 11:34:13 2008 +0000 +++ b/src/typedefs.h Sat May 03 11:58:41 2008 +0000 @@ -155,6 +155,8 @@ 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; @@ -623,6 +625,24 @@ 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; @@ -662,6 +682,37 @@ 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; diff -r fe675761d091 -r d8d61dc4ff52 src/view_file_icon.c --- a/src/view_file_icon.c Sat May 03 11:34:13 2008 +0000 +++ b/src/view_file_icon.c Sat May 03 11:58:41 2008 +0000 @@ -36,6 +36,9 @@ #include /* 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 diff -r fe675761d091 -r d8d61dc4ff52 src/view_file_list.c --- a/src/view_file_list.c Sat May 03 11:34:13 2008 +0000 +++ b/src/view_file_list.c Sat May 03 11:58:41 2008 +0000 @@ -32,6 +32,8 @@ #include /* 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,