265#define dt_thumbtable_refresh_thumbnail(table, imgid, reinit) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_LIGHTTABLE, dt_thumbtable_refresh_thumbnail_real, (table), (imgid), (reinit))
351 gtk_widget_queue_draw(table->
grid);
354#define dt_thumbtable_redraw(table) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_LIGHTTABLE, dt_thumbtable_redraw_real, (table))
366 gtk_widget_show(table->
grid);
381 gtk_widget_hide(table->
grid);
static const dt_colormatrix_t dt_aligned_pixel_t out
Definition colorspaces_inline_conversions.h:184
static gboolean enable(dt_image_t *image)
Definition highlights.c:2785
static const float x
Definition iop_profile.h:239
struct _GtkWidget GtkWidget
Definition splash.h:29
unsigned __int64 uint64_t
Definition strptime.c:74
Definition common/image.h:247
Definition thumbnail.h:67
Cache entry for a single thumbnail.
Definition thumbtable.h:88
int32_t imgid
Definition thumbtable.h:90
int32_t groupid
Definition thumbtable.h:91
dt_thumbnail_t * thumb
Definition thumbtable.h:89
Definition thumbtable.h:96
GHashTable * list
Definition thumbtable.h:108
int last_x
Definition thumbtable.h:116
gboolean focus_peaking
Definition thumbtable.h:179
gboolean collapse_groups
Definition thumbtable.h:172
GtkWidget * grid
Definition thumbtable.h:100
gboolean alternate_mode
Definition thumbtable.h:164
int drag_dy
Definition thumbtable.h:117
int drag_dx
Definition thumbtable.h:117
int min_row_id
Definition thumbtable.h:138
int rowid
Definition thumbtable.h:169
int last_y
Definition thumbtable.h:116
gboolean collection_inited
Definition thumbtable.h:130
int view_height
Definition thumbtable.h:113
dt_thumbtable_mode_t mode
Definition thumbtable.h:97
dt_pthread_mutex_t lock
Definition thumbtable.h:158
gboolean dragging
Definition thumbtable.h:115
int last_h_scrollbar_height
Definition thumbtable.h:191
GtkAdjustment * v_scrollbar
Definition thumbtable.h:147
dt_thumbtable_zoom_t zoom
Definition thumbtable.h:175
int last_parent_width
Definition thumbtable.h:187
int last_v_scrollbar_width
Definition thumbtable.h:192
gboolean focus_regions
Definition thumbtable.h:178
GList * drag_list
Definition thumbtable.h:122
int collection_count
Definition thumbtable.h:136
guint idle_update_id
Definition thumbtable.h:184
int thumb_width
Definition thumbtable.h:111
double y_position
Definition thumbtable.h:150
gboolean configured
Definition thumbtable.h:132
GtkWidget * scroll_window
Definition thumbtable.h:144
int view_width
Definition thumbtable.h:113
dt_thumbtable_cache_t * lut
Definition thumbtable.h:142
dt_thumbnail_t * drag_thumb
Definition thumbtable.h:118
int max_row_id
Definition thumbtable.h:139
gboolean thumbs_inited
Definition thumbtable.h:131
int last_parent_height
Definition thumbtable.h:188
GtkAdjustment * h_scrollbar
Definition thumbtable.h:148
uint32_t thumb_nb
Definition thumbtable.h:125
double x_position
Definition thumbtable.h:149
int thumbs_per_row
Definition thumbtable.h:110
int grid_cols
Definition thumbtable.h:103
int thumb_height
Definition thumbtable.h:112
dt_thumbnail_overlay_t overlays
Definition thumbtable.h:98
gboolean reset_collection
Definition thumbtable.h:161
GtkWidget * parent_overlay
Definition thumbtable.h:153
uint64_t collection_hash
Definition thumbtable.h:135
gboolean draw_group_borders
Definition thumbtable.h:181
dt_thumbnail_overlay_t
Definition thumbnail.h:58
void dt_thumbtable_set_zoom(dt_thumbtable_t *table, dt_thumbtable_zoom_t level)
Definition thumbtable.c:1036
int dt_thumbtable_scroll_to_selection(dt_thumbtable_t *table)
Scroll to show selected content.
Definition thumbtable.c:478
int dt_thumbtable_scroll_to_imgid(dt_thumbtable_t *table, int32_t imgid)
Scroll the view to show a specific image.
Definition thumbtable.c:447
gboolean dt_thumbtable_get_focus_peaking(dt_thumbtable_t *table)
Definition thumbtable.c:1083
void dt_thumbtable_update(dt_thumbtable_t *table)
Definition thumbtable.c:957
void dt_thumbtable_offset_zoom(dt_thumbtable_t *table, const double delta_x, const double delta_y)
Definition thumbtable.c:1049
void dt_thumbtable_set_active_rowid(dt_thumbtable_t *table)
Update internal active row tracking.
Definition thumbtable.c:406
dt_thumbtable_mode_t
Display modes for the thumbnail table.
Definition thumbtable.h:62
@ DT_THUMBTABLE_MODE_NONE
Definition thumbtable.h:63
@ DT_THUMBTABLE_MODE_FILMSTRIP
Definition thumbtable.h:65
@ DT_THUMBTABLE_MODE_FILEMANAGER
Definition thumbtable.h:64
void dt_thumbtable_configure(dt_thumbtable_t *table)
Definition thumbtable.c:644
void dt_thumbtable_cleanup(dt_thumbtable_t *table)
Definition thumbtable.c:2079
static void dt_thumbtable_redraw_real(dt_thumbtable_t *table)
Definition thumbtable.h:348
gboolean dt_thumbtable_get_focus_regions(dt_thumbtable_t *table)
Definition thumbtable.c:1072
void dt_thumbtable_set_focus_peaking(dt_thumbtable_t *table, gboolean enable)
Definition thumbtable.c:1077
void dt_thumbtable_event_dnd_received(GtkWidget *widget, GdkDragContext *context, gint x, gint y, GtkSelectionData *selection_data, guint target_type, guint time, gpointer user_data)
Handle drag-and-drop data received.
Definition thumbtable.c:1548
void dt_thumbtable_invert_selection(dt_thumbtable_t *table)
Invert the current selection.
Definition thumbtable.c:2227
dt_thumbtable_zoom_t
Zoom levels for thumbnail display.
Definition thumbtable.h:75
@ DT_THUMBTABLE_ZOOM_TWICE
Definition thumbtable.h:79
@ DT_THUMBTABLE_ZOOM_FULL
Definition thumbtable.h:78
@ DT_THUMBTABLE_ZOOM_HALF
Definition thumbtable.h:77
@ DT_THUMBTABLE_ZOOM_FIT
Definition thumbtable.h:76
gboolean dt_thumbtable_get_thumbnail_info(dt_thumbtable_t *table, int32_t imgid, dt_image_t *out)
Definition thumbtable.c:741
static void dt_thumbtable_show(dt_thumbtable_t *table)
Show the thumbnail table widget.
Definition thumbtable.h:362
void dt_thumbtable_set_focus_regions(dt_thumbtable_t *table, gboolean enable)
Definition thumbtable.c:1066
int dt_thumbtable_scroll_to_active_rowid(dt_thumbtable_t *table)
Scroll to show the active row.
Definition thumbtable.c:468
gboolean dt_thumbtable_get_draw_group_borders(dt_thumbtable_t *table)
Definition thumbtable.c:1096
void dt_thumbtable_dispatch_over(dt_thumbtable_t *table, GdkEventType type, int32_t imgid)
Update the mouse-over image ID with conflict resolution.
Definition thumbtable.c:2244
gboolean dt_thumbtable_key_pressed_grid(GtkWidget *self, GdkEventKey *event, gpointer user_data)
Definition thumbtable.c:1683
void dt_thumbtable_set_overlays_mode(dt_thumbtable_t *table, dt_thumbnail_overlay_t over)
Set the overlay display mode for thumbnails.
Definition thumbtable.c:1363
void dt_thumbtable_refresh_thumbnail_real(dt_thumbtable_t *table, int32_t imgid, gboolean reinit)
Definition thumbtable.c:1104
void dt_thumbtable_select_all(dt_thumbtable_t *table)
Select all images in the current grid.
Definition thumbtable.c:2133
void dt_thumbtable_reset_collection(dt_thumbtable_t *table)
Definition thumbtable.c:1859
gboolean dt_thumbtable_key_released_grid(GtkWidget *self, GdkEventKey *event, gpointer user_data)
Definition thumbtable.c:1832
dt_thumbtable_zoom_t dt_thumbtable_get_zoom(dt_thumbtable_t *table)
Definition thumbtable.c:1044
void dt_thumbtable_set_parent(dt_thumbtable_t *table, dt_thumbtable_mode_t mode)
Definition thumbtable.c:2112
void dt_thumbtable_queue_update(dt_thumbtable_t *table)
Definition thumbtable.c:219
dt_thumbtable_t * dt_thumbtable_new(dt_thumbtable_mode_t mode)
Create a new thumbnail table widget.
Definition thumbtable.c:1872
void dt_thumbtable_set_draw_group_borders(dt_thumbtable_t *table, gboolean enable)
Definition thumbtable.c:1088
void dt_thumbtable_select_range(dt_thumbtable_t *table, const int rowid)
Select a range of images in the collection.
Definition thumbtable.c:2157
static void dt_thumbtable_hide(dt_thumbtable_t *table)
Hide the thumbnail table widget.
Definition thumbtable.h:377
void dt_thumbtable_update_parent(dt_thumbtable_t *table)
Definition thumbtable.c:2107