Unfortunately, this swaps the values from the previous state.
But it's definitely a nicer API.
static void
gtk_color_button_add_palette (GtkColorChooser *chooser,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors)
if (button->priv->cs_dialog)
gtk_color_chooser_add_palette (GTK_COLOR_CHOOSER (button->priv->cs_dialog),
- horizontal, colors_per_line, n_colors, colors);
+ orientation, colors_per_line, n_colors, colors);
}
typedef void (* get_rgba) (GtkColorChooser *, GdkRGBA *);
/**
* gtk_color_chooser_add_palette:
* @chooser: a #GtkColorChooser
- * @horizontal: %TRUE if the palette should be displayed in rows,
- * %FALSE for columns
+ * @orientation: %GTK_ORIENTATION_HORIZONTAL if the palette should
+ * be displayed in rows, %GTK_ORIENTATION_VERTICAL for columns
* @colors_per_line: the number of colors to show in each row/column
* @n_colors: the total number of elements in @colors
* @colors: (allow-none) (array length=n_colors): the colors of the palette, or %NULL
*/
void
gtk_color_chooser_add_palette (GtkColorChooser *chooser,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors)
g_return_if_fail (GTK_IS_COLOR_CHOOSER (chooser));
if (GTK_COLOR_CHOOSER_GET_IFACE (chooser)->add_palette)
- GTK_COLOR_CHOOSER_GET_IFACE (chooser)->add_palette (chooser, horizontal, colors_per_line, n_colors, colors);
+ GTK_COLOR_CHOOSER_GET_IFACE (chooser)->add_palette (chooser, orientation, colors_per_line, n_colors, colors);
}
cairo_pattern_t *
const GdkRGBA *color);
void (* add_palette) (GtkColorChooser *chooser,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors);
GDK_AVAILABLE_IN_3_4
void gtk_color_chooser_add_palette (GtkColorChooser *chooser,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors);
static void
gtk_color_chooser_dialog_add_palette (GtkColorChooser *chooser,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors)
GtkColorChooserDialog *cc = GTK_COLOR_CHOOSER_DIALOG (chooser);
gtk_color_chooser_add_palette (GTK_COLOR_CHOOSER (cc->priv->chooser),
- horizontal, colors_per_line, n_colors, colors);
+ orientation, colors_per_line, n_colors, colors);
}
static void
static void
add_palette (GtkColorChooserWidget *cc,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors,
line = i / colors_per_line;
pos = i % colors_per_line;
- if (horizontal)
+ if (orientation == GTK_ORIENTATION_HORIZONTAL)
{
if (pos == left)
gtk_style_context_add_class (gtk_widget_get_style_context (p), GTK_STYLE_CLASS_LEFT);
static void
gtk_color_chooser_widget_add_palette (GtkColorChooser *chooser,
- gboolean horizontal,
+ GtkOrientation orientation,
gint colors_per_line,
gint n_colors,
GdkRGBA *colors)
GtkColorChooserWidget *cc = GTK_COLOR_CHOOSER_WIDGET (chooser);
remove_default_palette (cc);
- add_palette (cc, horizontal, colors_per_line, n_colors, colors, NULL);
+ add_palette (cc, orientation, colors_per_line, n_colors, colors, NULL);
}
static void
}
}
gtk_color_chooser_add_palette (GTK_COLOR_CHOOSER (dialog),
- FALSE,
+ GTK_ORIENTATION_VERTICAL,
9, 9*9,
colors);
}
else if (g_strcmp0 (argv[i], "--no-palette") == 0)
{
gtk_color_chooser_add_palette (GTK_COLOR_CHOOSER (dialog),
- FALSE, 0, 0, NULL);
+ GTK_ORIENTATION_VERTICAL, 0, 0, NULL);
}
}