void gui_update(dt_iop_module_t *self) { dt_iop_rawprepare_gui_data_t *g = (dt_iop_rawprepare_gui_data_t *)self->gui_data; dt_iop_rawprepare_params_t *p = (dt_iop_rawprepare_params_t *)self->params; for(int i = 0; i < 4; i++) { dt_bauhaus_slider_set_soft(g->black_level_separate[i], p->raw_black_level_separate[i]); dt_bauhaus_slider_set_default(g->black_level_separate[i], p->raw_black_level_separate[i]); } dt_bauhaus_slider_set_soft(g->white_point, p->raw_white_point); dt_bauhaus_slider_set_default(g->white_point, p->raw_white_point); if(self->default_enabled) { gtk_widget_show(g->box_raw); gtk_widget_hide(g->label_non_raw); } else { gtk_widget_hide(g->box_raw); gtk_widget_show(g->label_non_raw); } }
void gui_update(dt_iop_module_t *self) { dt_iop_rawprepare_gui_data_t *g = (dt_iop_rawprepare_gui_data_t *)self->gui_data; dt_iop_rawprepare_params_t *p = (dt_iop_rawprepare_params_t *)self->params; for(int i = 0; i < 4; i++) { dt_bauhaus_slider_set_soft(g->black_level_separate[i], p->raw_black_level_separate[i]); dt_bauhaus_slider_set_default(g->black_level_separate[i], p->raw_black_level_separate[i]); } dt_bauhaus_slider_set_soft(g->white_point, p->raw_white_point); dt_bauhaus_slider_set_default(g->white_point, p->raw_white_point); if(dt_conf_get_bool("plugins/darkroom/rawprepare/allow_editing_crop")) { for(int i = 0; i < 4; i++) { dt_bauhaus_slider_set_soft(g->crop[i], p->crop.array[i]); dt_bauhaus_slider_set_default(g->crop[i], p->crop.array[i]); } } if(self->default_enabled) { gtk_widget_show(g->box_raw); gtk_widget_hide(g->label_non_raw); } else { gtk_widget_hide(g->box_raw); gtk_widget_show(g->label_non_raw); } }
void gui_update(struct dt_iop_module_t *self) { dt_iop_exposure_gui_data_t *g = (dt_iop_exposure_gui_data_t *)self->gui_data; dt_iop_exposure_params_t *p = (dt_iop_exposure_params_t *)self->params; if(!dt_image_is_raw(&self->dev->image_storage)) { gtk_widget_hide(GTK_WIDGET(g->mode)); p->mode = EXPOSURE_MODE_MANUAL; dt_dev_add_history_item(darktable.develop, self, TRUE); } else { gtk_widget_show(GTK_WIDGET(g->mode)); } dt_bauhaus_combobox_set(g->mode, g_list_index(g->modes, GUINT_TO_POINTER(p->mode))); dt_bauhaus_slider_set_soft(g->black, p->black); dt_bauhaus_slider_set_soft(g->exposure, p->exposure); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(g->autoexp), FALSE); dt_bauhaus_slider_set(g->autoexpp, 0.01); gtk_widget_set_sensitive(GTK_WIDGET(g->autoexpp), FALSE); dt_bauhaus_slider_set(g->deflicker_percentile, p->deflicker_percentile); dt_bauhaus_slider_set(g->deflicker_target_level, p->deflicker_target_level); dt_bauhaus_combobox_set( g->deflicker_histogram_source, g_list_index(g->deflicker_histogram_sources, GUINT_TO_POINTER(p->deflicker_histogram_source))); self->request_color_pick = DT_REQUEST_COLORPICK_OFF; free(g->deflicker_histogram); g->deflicker_histogram = NULL; gtk_label_set_text(g->deflicker_used_EC, ""); dt_pthread_mutex_lock(&g->lock); g->deflicker_computed_exposure = NAN; dt_pthread_mutex_unlock(&g->lock); switch(p->mode) { case EXPOSURE_MODE_DEFLICKER: autoexp_disable(self); gtk_stack_set_visible_child_name(GTK_STACK(g->mode_stack), "deflicker"); if(p->deflicker_histogram_source == DEFLICKER_HISTOGRAM_SOURCE_SOURCEFILE) deflicker_prepare_histogram(self, &g->deflicker_histogram, &g->deflicker_histogram_stats); break; case EXPOSURE_MODE_MANUAL: default: gtk_stack_set_visible_child_name(GTK_STACK(g->mode_stack), "manual"); break; } }
void gui_update(struct dt_iop_module_t *self) { dt_iop_module_t *module = (dt_iop_module_t *)self; dt_iop_watermark_gui_data_t *g = (dt_iop_watermark_gui_data_t *)self->gui_data; dt_iop_watermark_params_t *p = (dt_iop_watermark_params_t *)module->params; dt_bauhaus_slider_set(g->opacity, p->opacity); dt_bauhaus_slider_set_soft(g->scale, p->scale); dt_bauhaus_slider_set(g->rotate, p->rotate); dt_bauhaus_slider_set(g->x_offset, p->xoffset); dt_bauhaus_slider_set(g->y_offset, p->yoffset); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(g->align[p->alignment]), TRUE); _combo_box_set_active_text(g->watermarks, p->filename); dt_bauhaus_combobox_set(g->sizeto, p->sizeto); gtk_entry_set_text(GTK_ENTRY(g->text), p->text); GdkRGBA color = (GdkRGBA){.red = p->color[0], .green = p->color[1], .blue = p->color[2], .alpha = 1.0 }; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(g->colorpick), &color); gtk_font_button_set_font_name(GTK_FONT_BUTTON(g->fontsel), p->font); } void init(dt_iop_module_t *module) { module->params = calloc(1, sizeof(dt_iop_watermark_params_t)); module->params_size = sizeof(dt_iop_watermark_params_t); module->default_params = calloc(1, sizeof(dt_iop_watermark_params_t)); module->default_enabled = 0; module->priority = 969; // module order created by iop_dependencies.py, do not edit! module->params_size = sizeof(dt_iop_watermark_params_t); module->gui_data = NULL; dt_iop_watermark_params_t tmp = (dt_iop_watermark_params_t){ 100.0, 100.0, 0.0, 0.0, 4, 0.0, DT_SCALE_IMAGE, { "darktable.svg" }, { "" }, {0.0, 0.0, 0.0}, {"DejaVu Sans 10"} }; // opacity,scale,xoffs,yoffs,alignment memcpy(module->params, &tmp, sizeof(dt_iop_watermark_params_t)); memcpy(module->default_params, &tmp, sizeof(dt_iop_watermark_params_t)); }
static int value_member(lua_State *L) { lua_slider slider; luaA_to(L,lua_slider,&slider,1); if(lua_gettop(L) > 2) { float value = luaL_checknumber(L,3); dt_bauhaus_slider_set_soft(slider->widget,value); return 0; } lua_pushnumber(L,dt_bauhaus_slider_get(slider->widget)); return 1; }
static void exposure_set_white(struct dt_iop_module_t *self, const float white) { dt_iop_exposure_params_t *p = (dt_iop_exposure_params_t *)self->params; float exposure = white2exposure(white); if(p->exposure == exposure) return; p->exposure = exposure; if(p->black >= white) exposure_set_black(self, white - 0.01); dt_iop_exposure_gui_data_t *g = (dt_iop_exposure_gui_data_t *)self->gui_data; darktable.gui->reset = 1; dt_bauhaus_slider_set_soft(g->exposure, p->exposure); darktable.gui->reset = 0; dt_dev_add_history_item(darktable.develop, self, TRUE); }
static void exposure_set_black(struct dt_iop_module_t *self, const float black) { dt_iop_exposure_params_t *p = (dt_iop_exposure_params_t *)self->params; float b = black; if(p->black == b) return; p->black = b; if(p->black >= exposure2white(p->exposure)) { exposure_set_white(self, p->black + 0.01); } dt_iop_exposure_gui_data_t *g = (dt_iop_exposure_gui_data_t *)self->gui_data; darktable.gui->reset = 1; dt_bauhaus_slider_set_soft(g->black, p->black); darktable.gui->reset = 0; dt_dev_add_history_item(darktable.develop, self, TRUE); }
void gui_update(struct dt_iop_module_t *self) { dt_iop_exposure_gui_data_t *g = (dt_iop_exposure_gui_data_t *)self->gui_data; dt_iop_exposure_params_t *p = (dt_iop_exposure_params_t *)self->params; dt_bauhaus_slider_set(g->black, p->black); dt_bauhaus_slider_set_soft(g->exposure, p->exposure); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(g->autoexp), FALSE); dt_bauhaus_slider_set(g->autoexpp, 0.01); gtk_widget_set_sensitive(GTK_WIDGET(g->autoexpp), FALSE); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(g->deflicker), p->deflicker); dt_bauhaus_slider_set(g->deflicker_percentile, p->deflicker_percentile); gtk_widget_set_sensitive(GTK_WIDGET(g->deflicker_percentile), p->deflicker); dt_bauhaus_slider_set(g->deflicker_level, p->deflicker_level); gtk_widget_set_sensitive(GTK_WIDGET(g->deflicker_level), p->deflicker); self->request_color_pick = 0; }