ui/gtk/image.h

changeset 103
6606616eca9f
parent 51
e324291ca9f8
equal deleted inserted replaced
102:64ded9f6a6c6 103:6606616eca9f
34 34
35 #ifdef __cplusplus 35 #ifdef __cplusplus
36 extern "C" { 36 extern "C" {
37 #endif 37 #endif
38 38
39 typedef struct UiImageViewer {
40 UiObject *obj;
41 GtkWidget *widget;
42 UiVar *var;
43 int padding_left;
44 int padding_right;
45 int padding_top;
46 int padding_bottom;
47 UiBool autoscale;
48 UiBool adjustwidgetsize;
49 UiBool useradjustable;
50 GdkPixbuf *pixbuf;
51
52 double zoom_scale;
53 int transx;
54 int transy;
55 int begin_transx;
56 int begin_transy;
57 UiBool isautoscaled;
58 double user_scale;
59 double scale;
60
61 ui_callback onbuttonpress;
62 void *onbuttonpressdata;
63 ui_callback onbuttonrelease;
64 void *onbuttonreleasedata;
65 } UiImageViewer;
66
67 void ui_cairo_draw_image(UiImageViewer *imgviewer, cairo_t *cr, int width, int height);
39 68
40 void* ui_imageviewer_get(UiGeneric *g); 69 void* ui_imageviewer_get(UiGeneric *g);
41 const char* ui_imageviewer_get_type(UiGeneric *g); 70 const char* ui_imageviewer_get_type(UiGeneric *g);
42 int ui_imageviewer_set(UiGeneric *g, void *value, const char *type); 71 int ui_imageviewer_set(UiGeneric *g, void *value, const char *type);
72
73 #if GTK_MAJOR_VERSION >= 4
74
75 gboolean ui_imageviewer_scroll(
76 GtkEventControllerScroll *widget,
77 gdouble dx,
78 gdouble dy,
79 gpointer userdata);
80
81 void ui_imageviewer_drag_begin_cb(
82 GtkGestureDrag* self,
83 gdouble start_x,
84 gdouble start_y,
85 gpointer userdata);
86
87 void ui_imageviewer_drag_end_cb(
88 GtkGestureDrag* self,
89 gdouble x,
90 gdouble y,
91 gpointer userdata);
92
93 void ui_imageviewer_drag_update_cb(
94 GtkGestureDrag* self,
95 gdouble x,
96 gdouble y,
97 gpointer userdata);
98
99 void ui_imageviewer_pressed_cb(
100 GtkGestureClick *self,
101 gint n_press,
102 gdouble x,
103 gdouble y,
104 gpointer userdata);
105
106 void ui_imageviewer_released_cb(
107 GtkGestureClick *self,
108 gint n_press,
109 gdouble x,
110 gdouble y,
111 gpointer userdata);
112
113 #else
114
115 gboolean ui_imageviewer_scroll_event(
116 GtkWidget *widget,
117 GdkEventScroll event,
118 gpointer userdata);
119
120 gboolean ui_imageviewer_button_press_event(
121 GtkWidget *widget,
122 GdkEventButton event,
123 gpointer userdata);
124
125 gboolean ui_imageviewer_button_release_event(
126 GtkWidget *widget,
127 GdkEventButton event,
128 gpointer userdata);
129
130 #endif
43 131
44 #ifdef __cplusplus 132 #ifdef __cplusplus
45 } 133 }
46 #endif 134 #endif
47 135

mercurial