void gui_init(dt_lib_module_t *self) { /* initialize ui widgets */ dt_lib_metadata_view_t *d = (dt_lib_metadata_view_t *)g_malloc(sizeof(dt_lib_metadata_view_t)); self->data = (void *)d; _lib_metatdata_view_init_labels(); self->widget = gtk_table_new(md_size, 2, FALSE); /* intialize the metadata name/value labels */ for (int k = 0; k < md_size; k++) { GtkLabel *name = GTK_LABEL(gtk_label_new(_md_labels[k])); d->metadata[k] = GTK_LABEL(gtk_label_new("-")); gtk_misc_set_alignment(GTK_MISC(name), 0.0, 0.5); gtk_misc_set_alignment(GTK_MISC(d->metadata[k]), 0.0, 0.5); gtk_table_attach(GTK_TABLE(self->widget), GTK_WIDGET(name), 0, 1, k, k+1, GTK_FILL, 0, 5, 0); gtk_table_attach(GTK_TABLE(self->widget), GTK_WIDGET(d->metadata[k]), 1, 2, k, k+1, GTK_EXPAND|GTK_FILL, 0, 0, 0); } /* lets signup for mouse over image change signals */ dt_control_signal_connect(darktable.signals,DT_SIGNAL_MOUSE_OVER_IMAGE_CHANGE, G_CALLBACK(_mouse_over_image_callback), self); /* signup for develop initialize to update info of current image in darkroom when enter */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_INITIALIZE, G_CALLBACK(_mouse_over_image_callback), self); }
void gui_init(dt_lib_module_t *self) { /* initialize ui widgets */ dt_lib_metadata_view_t *d = (dt_lib_metadata_view_t *)g_malloc0(sizeof(dt_lib_metadata_view_t)); self->data = (void *)d; _lib_metatdata_view_init_labels(); self->widget = gtk_grid_new(); gtk_grid_set_column_spacing(GTK_GRID(self->widget), DT_PIXEL_APPLY_DPI(5)); // GtkWidget *last = NULL; /* initialize the metadata name/value labels */ for(int k = 0; k < md_size; k++) { GtkWidget *evb = gtk_event_box_new(); gtk_widget_set_name(evb, "brightbg"); GtkLabel *name = GTK_LABEL(gtk_label_new(_md_labels[k])); d->metadata[k] = GTK_LABEL(gtk_label_new("-")); gtk_label_set_selectable(d->metadata[k], TRUE); gtk_container_add(GTK_CONTAINER(evb), GTK_WIDGET(d->metadata[k])); if(k == md_internal_filmroll) { // film roll jump to: g_signal_connect(G_OBJECT(evb), "button-press-event", G_CALLBACK(_filmroll_clicked), NULL); } gtk_widget_set_halign(GTK_WIDGET(name), GTK_ALIGN_START); gtk_widget_set_halign(GTK_WIDGET(d->metadata[k]), GTK_ALIGN_START); gtk_grid_attach(GTK_GRID(self->widget), GTK_WIDGET(name), 0, k, 1, 1); gtk_grid_attach_next_to(GTK_GRID(self->widget), GTK_WIDGET(evb), GTK_WIDGET(name), GTK_POS_RIGHT, 1, 1); } /* lets signup for mouse over image change signals */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_MOUSE_OVER_IMAGE_CHANGE, G_CALLBACK(_mouse_over_image_callback), self); /* lets signup for develop image changed signals */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_IMAGE_CHANGED, G_CALLBACK(_mouse_over_image_callback), self); /* signup for develop initialize to update info of current image in darkroom when enter */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_INITIALIZE, G_CALLBACK(_mouse_over_image_callback), self); }
void gui_init(dt_lib_module_t *self) { /* initialize ui widgets */ dt_lib_metadata_view_t *d = (dt_lib_metadata_view_t *)g_malloc0(sizeof(dt_lib_metadata_view_t)); self->data = (void *)d; _lib_metatdata_view_init_labels(); self->widget = gtk_table_new(md_size, 2, FALSE); /* initialize the metadata name/value labels */ for (int k = 0; k < md_size; k++) { GtkWidget *evb = gtk_event_box_new(); gtk_widget_set_name(evb, "brightbg"); GtkLabel *name = GTK_LABEL(gtk_label_new(_md_labels[k])); d->metadata[k] = GTK_LABEL(gtk_label_new("-")); gtk_container_add(GTK_CONTAINER(evb), GTK_WIDGET(d->metadata[k])); if(k == md_internal_filmroll) { // film roll jump to: g_signal_connect(G_OBJECT(evb), "button-press-event", G_CALLBACK(_filmroll_clicked), NULL); } gtk_misc_set_alignment(GTK_MISC(name), 0.0, 0.5); gtk_misc_set_alignment(GTK_MISC(d->metadata[k]), 0.0, 0.5); gtk_table_attach(GTK_TABLE(self->widget), GTK_WIDGET(name), 0, 1, k, k+1, GTK_FILL, 0, 5, 0); gtk_table_attach(GTK_TABLE(self->widget), evb, 1, 2, k, k+1, GTK_EXPAND|GTK_FILL, 0, 0, 0); } /* lets signup for mouse over image change signals */ dt_control_signal_connect(darktable.signals,DT_SIGNAL_MOUSE_OVER_IMAGE_CHANGE, G_CALLBACK(_mouse_over_image_callback), self); /* lets signup for develop image changed signals */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_IMAGE_CHANGED, G_CALLBACK(_mouse_over_image_callback), self); /* signup for develop initialize to update info of current image in darkroom when enter */ dt_control_signal_connect(darktable.signals, DT_SIGNAL_DEVELOP_INITIALIZE, G_CALLBACK(_mouse_over_image_callback), self); }