X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkcoloreditor.c;h=8cbbf21541c48e7141fa7c7253da69d7653243ef;hb=79695ee64d41c9aadfe2c6f18dc7dd1e3fd44852;hp=b488892f651dab8c79c37f3f0c2dfaf6c54890f6;hpb=91b4781ae93ce981a31ddd41575bfa4cf4d2351e;p=~andy%2Fgtk diff --git a/gtk/gtkcoloreditor.c b/gtk/gtkcoloreditor.c index b488892f6..8cbbf2154 100644 --- a/gtk/gtkcoloreditor.c +++ b/gtk/gtkcoloreditor.c @@ -12,19 +12,13 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library. If not, see . */ /* TODO * - touch - * - accessible color names * - accessible relations for popups - * - api to replace palette * - saving per-application (?) - * - better checkmark - * - use css for swatches * - better popup theming */ @@ -44,8 +38,8 @@ #include "gtkadjustment.h" #include "gtklabel.h" #include "gtkspinbutton.h" -#include "gtkalignment.h" #include "gtkintl.h" +#include "gtkstylecontext.h" #include @@ -352,14 +346,13 @@ create_popup (GtkColorEditor *editor, { GtkWidget *popup; - popup = gtk_alignment_new (0.5, 0.5, 0, 0); - gtk_alignment_set_padding (GTK_ALIGNMENT (popup), 12, 12, 12, 12); - gtk_style_context_add_class (gtk_widget_get_style_context (popup), GTK_STYLE_CLASS_TOOLTIP); + g_object_set (contents, "margin", 12, NULL); + popup = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); + gtk_style_context_add_class (gtk_widget_get_style_context (popup), GTK_STYLE_CLASS_TOOLTIP); gtk_container_add (GTK_CONTAINER (popup), contents); - gtk_widget_show_all (popup); - gtk_widget_hide (popup); + gtk_widget_show_all (contents); gtk_widget_set_no_show_all (popup, TRUE); g_signal_connect (popup, "draw", G_CALLBACK (popup_draw), editor); @@ -375,7 +368,6 @@ gtk_color_editor_init (GtkColorEditor *editor) { GtkWidget *grid; GtkWidget *slider; - GtkWidget *alignment; GtkWidget *entry; GtkWidget *swatch; GtkAdjustment *h_adj, *s_adj, *v_adj, *a_adj; @@ -406,6 +398,7 @@ gtk_color_editor_init (GtkColorEditor *editor) /* Construct the main UI */ editor->priv->swatch = swatch = gtk_color_swatch_new (); + gtk_color_swatch_set_selectable (GTK_COLOR_SWATCH (editor->priv->swatch), FALSE); gtk_widget_set_events (swatch, gtk_widget_get_events (swatch) & ~(GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK @@ -448,16 +441,15 @@ gtk_color_editor_init (GtkColorEditor *editor) gtk_grid_attach (GTK_GRID (grid), editor->priv->sv_plane, 1, 1, 2, 1); gtk_grid_attach (GTK_GRID (grid), editor->priv->a_slider, 1, 2, 2, 1); - /* This extra alignment is necessary so we have room to the sides + /* This extra margin is necessary so we have room to the sides * to place the popups as desired */ - alignment = gtk_alignment_new (0.5, 0.5, 0, 0); - gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 0, 0, 30, 30); - gtk_container_add (GTK_CONTAINER (alignment), grid); + gtk_widget_set_margin_left (grid, 30); + gtk_widget_set_margin_right (grid, 30); editor->priv->overlay = gtk_overlay_new (); gtk_widget_override_background_color (editor->priv->overlay, 0, &transparent); - gtk_container_add (GTK_CONTAINER (editor->priv->overlay), alignment); + gtk_container_add (GTK_CONTAINER (editor->priv->overlay), grid); /* Construct the sv popup */ editor->priv->s_entry = entry = gtk_spin_button_new (scaled_adjustment (s_adj, 100), 1, 0); @@ -473,6 +465,7 @@ gtk_color_editor_init (GtkColorEditor *editor) g_signal_connect (entry, "key-press-event", G_CALLBACK (popup_key_press), editor); grid = gtk_grid_new (); + gtk_grid_set_row_spacing (GTK_GRID (grid), 6); gtk_grid_set_column_spacing (GTK_GRID (grid), 6); gtk_grid_attach (GTK_GRID (grid), gtk_label_new (C_("Color channel", "S")), 0, 0, 1, 1);