| 123 value->obj = imgviewer; |
123 value->obj = imgviewer; |
| 124 if(value->value && value->type && !strcmp(value->type, UI_IMAGE_OBJECT_TYPE)) { |
124 if(value->value && value->type && !strcmp(value->type, UI_IMAGE_OBJECT_TYPE)) { |
| 125 GdkPixbuf *pixbuf = value->value; |
125 GdkPixbuf *pixbuf = value->value; |
| 126 value->value = NULL; |
126 value->value = NULL; |
| 127 ui_imageviewer_set(value, pixbuf, UI_IMAGE_OBJECT_TYPE); |
127 ui_imageviewer_set(value, pixbuf, UI_IMAGE_OBJECT_TYPE); |
| |
128 g_object_unref(pixbuf); |
| 128 } |
129 } |
| 129 } |
130 } |
| 130 |
131 |
| 131 #if GTK_MAJOR_VERSION >= 4 |
132 #if GTK_MAJOR_VERSION >= 4 |
| 132 gtk_drawing_area_set_draw_func( |
133 gtk_drawing_area_set_draw_func( |
| 297 if(!type || strcmp(type, UI_IMAGE_OBJECT_TYPE)) { |
298 if(!type || strcmp(type, UI_IMAGE_OBJECT_TYPE)) { |
| 298 return 1; |
299 return 1; |
| 299 } |
300 } |
| 300 |
301 |
| 301 GdkPixbuf *pixbuf = value; |
302 GdkPixbuf *pixbuf = value; |
| |
303 g_object_ref(pixbuf); |
| 302 |
304 |
| 303 UiImageViewer *imgviewer = g->obj; |
305 UiImageViewer *imgviewer = g->obj; |
| 304 g->value = pixbuf; |
306 g->value = pixbuf; |
| 305 |
307 |
| 306 imageviewer_reset(imgviewer); |
308 imageviewer_reset(imgviewer); |
| 329 return 1; |
331 return 1; |
| 330 } |
332 } |
| 331 |
333 |
| 332 if(obj->set) { |
334 if(obj->set) { |
| 333 obj->set(obj, pixbuf, UI_IMAGE_OBJECT_TYPE); |
335 obj->set(obj, pixbuf, UI_IMAGE_OBJECT_TYPE); |
| |
336 g_object_unref(pixbuf); |
| 334 } else { |
337 } else { |
| 335 obj->value = pixbuf; |
338 obj->value = pixbuf; |
| 336 } |
339 } |
| 337 |
340 |
| 338 return 0; |
341 return 0; |
| |
342 } |
| |
343 |
| |
344 void ui_image_ref(UIIMAGE img) { |
| |
345 g_object_ref(img); |
| |
346 } |
| |
347 |
| |
348 void ui_image_unref(UIIMAGE img) { |
| |
349 g_object_unref(img); |
| 339 } |
350 } |
| 340 |
351 |
| 341 #if GTK_MAJOR_VERSION >= 4 |
352 #if GTK_MAJOR_VERSION >= 4 |
| 342 |
353 |
| 343 gboolean ui_imageviewer_scroll( |
354 gboolean ui_imageviewer_scroll( |