47#ifndef DT_VIEWS_VIEW_H
48#define DT_VIEWS_VIEW_H
63#include <osm-gps-map.h>
141 (DT_VIEW_LIGHTTABLE | DT_VIEW_STUDIO_CAPTURE | DT_VIEW_DARKROOM | DT_VIEW_MAP | DT_VIEW_SLIDESHOW | \
145#define DT_LIGHTTABLE_MAX_ZOOM 12
152#define INCLUDE_API_FROM_MODULE_H
290 int32_t pointerx, int32_t pointery);
typedef void((*dt_cache_allocate_t)(void *userdata, dt_cache_entry_t *entry))
struct _GtkWidget GtkWidget
GtkWidget, opaque, spelled exactly as GTK spells it.
GtkWidget * view
the tree view
_lib_location_type_t type
const float uint32_t state[4]
Track one asynchronous Cairo surface fetch request for a GUI widget.
cairo_surface_t ** target
guint audio_player_event_source
GtkWidget * guides_popover
gboolean(* redraw)(gpointer user_data)
void(* center_on_location)(const dt_view_t *view, gdouble lon, gdouble lat, double zoom)
struct dt_view_manager_t::@60::@65 print
struct dt_view_manager_t::@59 audio
gboolean(* remove_marker)(const dt_view_t *view, dt_geo_map_display_t type, GObject *marker)
dt_darkroom_layout_t(* get_layout)(struct dt_view_t *view)
void(* print_settings)(const dt_view_t *view, dt_print_info_t *pinfo, dt_images_box *imgs)
void(* add_location)(const dt_view_t *view, dt_map_location_data_t *p, const guint posid)
void(* location_action)(const dt_view_t *view, const int action)
void(* set_map_source)(const dt_view_t *view, OsmGpsMapSource_t map_source)
void(* set_default_cursor)(struct dt_view_t *view, double x, double y)
GtkWidget * guides_colors
struct dt_lib_module_t *void(* update)(struct dt_lib_module_t *)
struct dt_view_manager_t::@60 proxy
struct dt_view_manager_t::@60::@64 map
struct dt_view_manager_t::@60::@63 darkroom
GtkWidget * guides_toggle
GtkWidget * guides_contrast
struct dt_view_manager_t::@60::@62 module_collect
struct dt_view_manager_t::@60::@61 module_toolbox
struct dt_lib_module_t *void(* add)(struct dt_lib_module_t *, GtkWidget *, dt_view_type_flags_t)
void(* show_osd)(const dt_view_t *view)
void(* center_on_bbox)(const dt_view_t *view, gdouble lon1, gdouble lat1, gdouble lon2, gdouble lat2)
float vscroll_viewport_size
float hscroll_viewport_size
void dt_view_image_surface_fetcher_invalidate(dt_view_image_surface_fetcher_t *fetcher, cairo_surface_t **target)
void dt_view_manager_cleanup(dt_view_manager_t *vm)
void dt_view_image_surface_fetcher_cleanup(dt_view_image_surface_fetcher_t *fetcher)
void dt_view_manager_mouse_moved(dt_view_manager_t *vm, double x, double y, double pressure, int which)
const char * dt_view_manager_name(dt_view_manager_t *vm)
@ VIEW_FLAGS_PAINTS_WHOLE_AREA
void dt_view_map_center_on_location(const dt_view_manager_t *vm, gdouble lon, gdouble lat, gdouble zoom)
void dt_view_manager_mouse_enter(dt_view_manager_t *vm)
void dt_view_manager_configure(dt_view_manager_t *vm, int width, int height)
void dt_view_manager_module_toolbox_add(dt_view_manager_t *vm, GtkWidget *tool, dt_view_type_flags_t view)
void dt_view_manager_reset(dt_view_manager_t *vm)
void dt_view_image_surface_fetcher_init(dt_view_image_surface_fetcher_t *fetcher)
void dt_view_map_location_action(const dt_view_manager_t *vm, const int action)
cairo_surface_t * dt_cairo_rescale_surface(cairo_surface_t *src, int dst_w, int dst_h)
void dt_view_map_redraw(const dt_view_manager_t *vm)
void dt_cairo_sharpen_surface_rgb24(cairo_surface_t *surface)
struct dt_view_manager_t * dt_view_manager_get_global(void)
gboolean dt_view_active_images_has_imgid(int32_t imgid)
GObject * dt_view_map_add_marker(const dt_view_manager_t *vm, dt_geo_map_display_t type, GList *points)
int dt_view_manager_button_released(dt_view_manager_t *vm, double x, double y, int which, uint32_t state)
void dt_view_manager_expose(dt_view_manager_t *vm, cairo_t *cr, int32_t width, int32_t height, int32_t pointerx, int32_t pointery)
void dt_view_map_show_osd(const dt_view_manager_t *vm)
int dt_view_manager_key_pressed(dt_view_manager_t *vm, GdkEventKey *event)
dt_view_surface_value_t dt_view_image_get_surface_async(dt_view_image_surface_fetcher_t *fetcher, int32_t imgid, int width, int height, cairo_surface_t **target, GtkWidget *widget, int zoom)
@ DT_DARKROOM_LAYOUT_FIRST
@ DT_DARKROOM_LAYOUT_LAST
@ DT_DARKROOM_LAYOUT_COLOR_ASSESMENT
@ DT_DARKROOM_LAYOUT_EDITING
void dt_view_image_info_update(const int32_t imgid)
void dt_view_audio_start(dt_view_manager_t *vm, int32_t imgid)
int dt_view_manager_switch_by_view(dt_view_manager_t *vm, const dt_view_t *new_view)
void dt_view_active_images_add(int32_t imgid, gboolean raise)
void dt_view_manager_init(dt_view_manager_t *vm)
void dt_view_active_images_reset(gboolean raise)
void dt_view_active_images_remove(int32_t imgid, gboolean raise)
int dt_view_manager_button_pressed(dt_view_manager_t *vm, double x, double y, double pressure, int which, int type, uint32_t state)
uint32_t dt_view_manager_current_flags(const dt_view_manager_t *vm)
GList * dt_view_active_images_get_all()
void dt_view_manager_gui_init(dt_view_manager_t *vm)
void dt_view_map_add_location(const dt_view_manager_t *vm, dt_map_location_data_t *p, const guint posid)
void dt_view_print_settings(const dt_view_manager_t *vm, dt_print_info_t *pinfo, dt_images_box *imgs)
void dt_view_audio_stop(dt_view_manager_t *vm)
int dt_view_manager_switch(dt_view_manager_t *vm, const char *view_name)
dt_view_surface_value_t dt_view_image_get_surface(int32_t imgid, int width, int height, cairo_surface_t **surface, int zoom)
void dt_view_map_center_on_bbox(const dt_view_manager_t *vm, gdouble lon1, gdouble lat1, gdouble lon2, gdouble lat2)
int dt_view_manager_scrolled(dt_view_manager_t *vm, double x, double y, int up, int state, int delta_y)
void dt_view_map_set_map_source(const dt_view_manager_t *vm, OsmGpsMapSource_t map_source)
void dt_view_manager_mouse_leave(dt_view_manager_t *vm)
void dt_view_active_images_set(GList *images, gboolean raise)
int32_t dt_view_active_images_get_first()
gboolean dt_view_map_remove_marker(const dt_view_manager_t *vm, dt_geo_map_display_t type, GObject *marker)
dt_darkroom_layout_t dt_view_darkroom_get_layout(dt_view_manager_t *vm)
const dt_view_t * dt_view_manager_get_current_view(dt_view_manager_t *vm)
char * dt_view_extend_modes_str(const char *name, const gboolean is_hdr, const gboolean is_bw, const gboolean is_bw_flow)