static void gimp_color_frame_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { GimpColorFrame *frame = GIMP_COLOR_FRAME (object); switch (property_id) { case PROP_MODE: gimp_color_frame_set_mode (frame, g_value_get_enum (value)); break; case PROP_HAS_NUMBER: gimp_color_frame_set_has_number (frame, g_value_get_boolean (value)); break; case PROP_NUMBER: gimp_color_frame_set_number (frame, g_value_get_int (value)); break; case PROP_HAS_COLOR_AREA: gimp_color_frame_set_has_color_area (frame, g_value_get_boolean (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); break; } }
static void gimp_cursor_view_set_aux_info (GimpDocked *docked, GList *aux_info) { GimpCursorView *view = GIMP_CURSOR_VIEW (docked); GList *list; parent_docked_iface->set_aux_info (docked, aux_info); for (list = aux_info; list; list = g_list_next (list)) { GimpSessionInfoAux *aux = list->data; GtkWidget *frame = NULL; if (! strcmp (aux->name, AUX_INFO_FRAME_1_MODE)) frame = view->color_frame_1; else if (! strcmp (aux->name, AUX_INFO_FRAME_2_MODE)) frame = view->color_frame_2; if (frame) { GEnumClass *enum_class; GEnumValue *enum_value; enum_class = g_type_class_peek (GIMP_TYPE_COLOR_FRAME_MODE); enum_value = g_enum_get_value_by_nick (enum_class, aux->value); if (enum_value) gimp_color_frame_set_mode (GIMP_COLOR_FRAME (frame), enum_value->value); } } }
static void gimp_color_picker_tool_info_create (GimpColorPickerTool *picker_tool) { GimpTool *tool = GIMP_TOOL (picker_tool); GimpDisplayShell *shell; GtkWidget *hbox; GtkWidget *frame; GimpRGB color; g_return_if_fail (tool->display != NULL); g_return_if_fail (tool->drawable != NULL); shell = gimp_display_get_shell (tool->display); picker_tool->gui = gimp_tool_gui_new (tool->tool_info, _("Color Picker Information"), gtk_widget_get_screen (GTK_WIDGET (shell)), gimp_widget_get_monitor (GTK_WIDGET (shell)), TRUE, GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL); gimp_tool_gui_set_auto_overlay (picker_tool->gui, TRUE); gimp_tool_gui_set_focus_on_map (picker_tool->gui, FALSE); gimp_tool_gui_set_viewable (picker_tool->gui, GIMP_VIEWABLE (tool->drawable)); g_signal_connect (picker_tool->gui, "response", G_CALLBACK (gimp_color_picker_tool_info_response), picker_tool); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6); gtk_box_pack_start (GTK_BOX (gimp_tool_gui_get_vbox (picker_tool->gui)), hbox, FALSE, FALSE, 0); gtk_widget_show (hbox); picker_tool->color_frame1 = gimp_color_frame_new (); gimp_color_frame_set_mode (GIMP_COLOR_FRAME (picker_tool->color_frame1), GIMP_COLOR_FRAME_MODE_PIXEL); gtk_box_pack_start (GTK_BOX (hbox), picker_tool->color_frame1, FALSE, FALSE, 0); gtk_widget_show (picker_tool->color_frame1); picker_tool->color_frame2 = gimp_color_frame_new (); gimp_color_frame_set_mode (GIMP_COLOR_FRAME (picker_tool->color_frame2), GIMP_COLOR_FRAME_MODE_RGB); gtk_box_pack_start (GTK_BOX (hbox), picker_tool->color_frame2, FALSE, FALSE, 0); gtk_widget_show (picker_tool->color_frame2); frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN); gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 0); gtk_widget_show (frame); gimp_rgba_set (&color, 0.0, 0.0, 0.0, 0.0); picker_tool->color_area = gimp_color_area_new (&color, gimp_drawable_has_alpha (tool->drawable) ? GIMP_COLOR_AREA_LARGE_CHECKS : GIMP_COLOR_AREA_FLAT, GDK_BUTTON1_MASK | GDK_BUTTON2_MASK); gtk_widget_set_size_request (picker_tool->color_area, 48, -1); gtk_drag_dest_unset (picker_tool->color_area); gtk_container_add (GTK_CONTAINER (frame), picker_tool->color_area); gtk_widget_show (picker_tool->color_area); }
static void gimp_cursor_view_init (GimpCursorView *view) { GtkWidget *frame; GtkWidget *table; GtkWidget *toggle; gint content_spacing; view->sample_merged = TRUE; gtk_widget_style_get (GTK_WIDGET (view), "content-spacing", &content_spacing, NULL); /* cursor information */ view->coord_hbox = gtk_hbox_new (TRUE, content_spacing); gtk_box_pack_start (GTK_BOX (view), view->coord_hbox, FALSE, FALSE, 0); gtk_widget_show (view->coord_hbox); frame = gimp_frame_new (_("Pixels")); gtk_box_pack_start (GTK_BOX (view->coord_hbox), frame, TRUE, TRUE, 0); gtk_widget_show (frame); table = gtk_table_new (2, 2, FALSE); gtk_table_set_col_spacings (GTK_TABLE (table), 6); gtk_table_set_row_spacings (GTK_TABLE (table), 2); gtk_container_add (GTK_CONTAINER (frame), table); gtk_widget_show (table); view->pixel_x_label = gtk_label_new (_("n/a")); gtk_misc_set_alignment (GTK_MISC (view->pixel_x_label), 1.0, 0.5); gimp_table_attach_aligned (GTK_TABLE (table), 0, 0, _("X"), 0.5, 0.5, view->pixel_x_label, 1, FALSE); view->pixel_y_label = gtk_label_new (_("n/a")); gtk_misc_set_alignment (GTK_MISC (view->pixel_y_label), 1.0, 0.5); gimp_table_attach_aligned (GTK_TABLE (table), 0, 1, _("Y"), 0.5, 0.5, view->pixel_y_label, 1, FALSE); frame = gimp_frame_new (_("Units")); gtk_box_pack_start (GTK_BOX (view->coord_hbox), frame, TRUE, TRUE, 0); gtk_widget_show (frame); table = gtk_table_new (2, 2, FALSE); gtk_table_set_col_spacings (GTK_TABLE (table), 4); gtk_table_set_row_spacings (GTK_TABLE (table), 2); gtk_container_add (GTK_CONTAINER (frame), table); gtk_widget_show (table); view->unit_x_label = gtk_label_new (_("n/a")); gtk_misc_set_alignment (GTK_MISC (view->unit_x_label), 1.0, 0.5); gimp_table_attach_aligned (GTK_TABLE (table), 0, 0, _("X"), 0.5, 0.5, view->unit_x_label, 1, FALSE); view->unit_y_label = gtk_label_new (_("n/a")); gtk_misc_set_alignment (GTK_MISC (view->unit_y_label), 1.0, 0.5); gimp_table_attach_aligned (GTK_TABLE (table), 0, 1, _("Y"), 0.5, 0.5, view->unit_y_label, 1, FALSE); /* color information */ view->color_hbox = gtk_hbox_new (TRUE, content_spacing); gtk_box_pack_start (GTK_BOX (view), view->color_hbox, FALSE, FALSE, 0); gtk_widget_show (view->color_hbox); view->color_frame_1 = gimp_color_frame_new (); gimp_color_frame_set_mode (GIMP_COLOR_FRAME (view->color_frame_1), GIMP_COLOR_FRAME_MODE_PIXEL); gtk_box_pack_start (GTK_BOX (view->color_hbox), view->color_frame_1, TRUE, TRUE, 0); gtk_widget_show (view->color_frame_1); view->color_frame_2 = gimp_color_frame_new (); gimp_color_frame_set_mode (GIMP_COLOR_FRAME (view->color_frame_2), GIMP_COLOR_FRAME_MODE_RGB); gtk_box_pack_start (GTK_BOX (view->color_hbox), view->color_frame_2, TRUE, TRUE, 0); gtk_widget_show (view->color_frame_2); /* sample merged toggle */ toggle = gimp_prop_check_button_new (G_OBJECT (view), "sample-merged", _("_Sample Merged")); gtk_box_pack_start (GTK_BOX (view), toggle, FALSE, FALSE, 0); gtk_widget_show (toggle); }
static void gimp_color_picker_tool_info_create (GimpColorPickerTool *picker_tool) { GimpTool *tool = GIMP_TOOL (picker_tool); GtkWidget *content_area; GtkWidget *hbox; GtkWidget *frame; GimpRGB color; g_return_if_fail (tool->drawable != NULL); picker_tool->dialog = gimp_tool_dialog_new (tool->tool_info, gimp_display_get_shell (tool->display), _("Color Picker Information"), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL); gtk_window_set_focus_on_map (GTK_WINDOW (picker_tool->dialog), FALSE); gimp_viewable_dialog_set_viewable (GIMP_VIEWABLE_DIALOG (picker_tool->dialog), GIMP_VIEWABLE (tool->drawable), GIMP_CONTEXT (gimp_tool_get_options (tool))); g_signal_connect (picker_tool->dialog, "response", G_CALLBACK (gimp_color_picker_tool_info_response), picker_tool); content_area = gtk_dialog_get_content_area (GTK_DIALOG (picker_tool->dialog)); hbox = gtk_hbox_new (FALSE, 6); gtk_container_set_border_width (GTK_CONTAINER (hbox), 6); gtk_box_pack_start (GTK_BOX (content_area), hbox, FALSE, FALSE, 0); gtk_widget_show (hbox); picker_tool->color_frame1 = gimp_color_frame_new (); gimp_color_frame_set_mode (GIMP_COLOR_FRAME (picker_tool->color_frame1), GIMP_COLOR_FRAME_MODE_PIXEL); gtk_box_pack_start (GTK_BOX (hbox), picker_tool->color_frame1, FALSE, FALSE, 0); gtk_widget_show (picker_tool->color_frame1); picker_tool->color_frame2 = gimp_color_frame_new (); gimp_color_frame_set_mode (GIMP_COLOR_FRAME (picker_tool->color_frame2), GIMP_COLOR_FRAME_MODE_RGB); gtk_box_pack_start (GTK_BOX (hbox), picker_tool->color_frame2, FALSE, FALSE, 0); gtk_widget_show (picker_tool->color_frame2); frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN); gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 0); gtk_widget_show (frame); gimp_rgba_set (&color, 0.0, 0.0, 0.0, 0.0); picker_tool->color_area = gimp_color_area_new (&color, gimp_drawable_has_alpha (tool->drawable) ? GIMP_COLOR_AREA_LARGE_CHECKS : GIMP_COLOR_AREA_FLAT, GDK_BUTTON1_MASK | GDK_BUTTON2_MASK); gtk_widget_set_size_request (picker_tool->color_area, 48, -1); gtk_drag_dest_unset (picker_tool->color_area); gtk_container_add (GTK_CONTAINER (frame), picker_tool->color_area); gtk_widget_show (picker_tool->color_area); }