[gimp] app: add a "Select All" button to color-rotate's angle range controls
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: add a "Select All" button to color-rotate's angle range controls
- Date: Thu, 29 May 2014 23:25:24 +0000 (UTC)
commit f963f55fa4d5ec4f1723cc4bd68fbc70238640ee
Author: Michael Natterer <mitch gimp org>
Date: Fri May 30 01:22:16 2014 +0200
app: add a "Select All" button to color-rotate's angle range controls
app/widgets/gimppropgui-constructors.c | 43 +++++++++++++++++++++++++++++---
1 files changed, 39 insertions(+), 4 deletions(-)
---
diff --git a/app/widgets/gimppropgui-constructors.c b/app/widgets/gimppropgui-constructors.c
index dc8ca42..a2fccbb 100644
--- a/app/widgets/gimppropgui-constructors.c
+++ b/app/widgets/gimppropgui-constructors.c
@@ -231,6 +231,31 @@ invert_segment_clicked (GtkWidget *button,
NULL);
}
+static void
+select_all_clicked (GtkWidget *button,
+ GtkWidget *dial)
+{
+ gdouble alpha, beta;
+ gboolean clockwise;
+
+ g_object_get (dial,
+ "alpha", &alpha,
+ "clockwise", &clockwise,
+ NULL);
+
+ beta = alpha - (clockwise ? -1 : 1) * 0.00001;
+
+ if (beta < 0)
+ beta += 2 * G_PI;
+
+ if (beta > 2 * G_PI)
+ beta -= 2 * G_PI;
+
+ g_object_set (dial,
+ "beta", beta,
+ NULL);
+}
+
static GtkWidget *
gimp_prop_angle_range_box_new (GObject *config,
GParamSpec *alpha_pspec,
@@ -242,6 +267,8 @@ gimp_prop_angle_range_box_new (GObject *config,
GtkWidget *scale;
GtkWidget *hbox;
GtkWidget *button;
+ GtkWidget *invert_button;
+ GtkWidget *all_button;
GtkWidget *dial;
main_hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4);
@@ -274,9 +301,13 @@ gimp_prop_angle_range_box_new (GObject *config,
gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0);
gtk_widget_show (button);
- button = gtk_button_new_with_label ("Invert Range");
- gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0);
- gtk_widget_show (button);
+ invert_button = gtk_button_new_with_label ("Invert Range");
+ gtk_box_pack_start (GTK_BOX (hbox), invert_button, TRUE, TRUE, 0);
+ gtk_widget_show (invert_button);
+
+ all_button = gtk_button_new_with_label ("Select All");
+ gtk_box_pack_start (GTK_BOX (hbox), all_button, TRUE, TRUE, 0);
+ gtk_widget_show (all_button);
dial = gimp_prop_angle_range_dial_new (config,
alpha_pspec->name,
@@ -285,10 +316,14 @@ gimp_prop_angle_range_box_new (GObject *config,
gtk_box_pack_start (GTK_BOX (main_hbox), dial, FALSE, FALSE, 0);
gtk_widget_show (dial);
- g_signal_connect (button, "clicked",
+ g_signal_connect (invert_button, "clicked",
G_CALLBACK (invert_segment_clicked),
dial);
+ g_signal_connect (all_button, "clicked",
+ G_CALLBACK (select_all_clicked),
+ dial);
+
return main_hbox;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]