GtkWidget * gimp_tool_preset_factory_view_new (GimpViewType view_type, GimpDataFactory *factory, GimpContext *context, gint view_size, gint view_border_width, GimpMenuFactory *menu_factory) { GimpToolPresetFactoryView *factory_view; g_return_val_if_fail (GIMP_IS_DATA_FACTORY (factory), NULL); g_return_val_if_fail (view_size > 0 && view_size <= GIMP_VIEWABLE_MAX_PREVIEW_SIZE, NULL); g_return_val_if_fail (view_border_width >= 0 && view_border_width <= GIMP_VIEW_MAX_BORDER_WIDTH, NULL); factory_view = g_object_new (GIMP_TYPE_TOOL_PRESET_FACTORY_VIEW, NULL); if (! gimp_data_factory_view_construct (GIMP_DATA_FACTORY_VIEW (factory_view), view_type, factory, context, view_size, view_border_width, menu_factory, "<ToolPreset>", "/tool-preset-popup", "tool-preset")) { g_object_unref (factory_view); return NULL; } gtk_widget_hide (gimp_data_factory_view_get_duplicate_button (GIMP_DATA_FACTORY_VIEW (factory_view))); return GTK_WIDGET (factory_view); }
static void gimp_data_factory_view_activate_item (GimpContainerEditor *editor, GimpViewable *viewable) { GimpDataFactoryView *view = GIMP_DATA_FACTORY_VIEW (editor); GimpData *data = GIMP_DATA (viewable); if (GIMP_CONTAINER_EDITOR_CLASS (parent_class)->activate_item) GIMP_CONTAINER_EDITOR_CLASS (parent_class)->activate_item (editor, viewable); if (data && gimp_container_have (view->factory->container, GIMP_OBJECT (data))) { if (view->edit_button && GTK_WIDGET_SENSITIVE (view->edit_button)) gtk_button_clicked (GTK_BUTTON (view->edit_button)); } }