static gboolean _comparator_scolled(GtkWidget *widget, GdkEventScroll *event, gpointer user_data) { int delta_y; if(dt_gui_get_scroll_unit_deltas(event, NULL, &delta_y)) _change_comparator(GTK_WIDGET(widget), user_data, delta_y); return TRUE; }
static gboolean dt_iop_zonesystem_bar_scrolled(GtkWidget *widget, GdkEventScroll *event, dt_iop_module_t *self) { dt_iop_zonesystem_params_t *p = (dt_iop_zonesystem_params_t *)self->params; int cs = CLAMP(p->size, 4, MAX_ZONE_SYSTEM_SIZE); int delta_y; if(dt_gui_get_scroll_unit_deltas(event, NULL, &delta_y)) { p->size = CLAMP(p->size - delta_y, 4, MAX_ZONE_SYSTEM_SIZE); p->zone[cs] = -1; dt_dev_add_history_item(darktable.develop, self, TRUE); gtk_widget_queue_draw(widget); } return TRUE; }
static gboolean _lib_histogram_scroll_callback(GtkWidget *widget, GdkEventScroll *event, gpointer user_data) { dt_lib_module_t *self = (dt_lib_module_t *)user_data; dt_lib_histogram_t *d = (dt_lib_histogram_t *)self->data; float ce = dt_dev_exposure_get_exposure(darktable.develop); float cb = dt_dev_exposure_get_black(darktable.develop); int delta_y; // note are using unit rather than smooth scroll events, as // exposure changes can get laggy if handling a multitude of smooth // scroll events if(dt_gui_get_scroll_unit_deltas(event, NULL, &delta_y)) { if(d->highlight == 2) dt_dev_exposure_set_exposure(darktable.develop, ce - 0.15f * delta_y); else if(d->highlight == 1) dt_dev_exposure_set_black(darktable.develop, cb + 0.001f * delta_y); } return TRUE; }