[gnome-control-center] universal-access: Add zoom shader options
- From: Bastien Nocera <hadess src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center] universal-access: Add zoom shader options
- Date: Thu, 16 Aug 2012 09:46:38 +0000 (UTC)
commit 2d6161d45b09518b76cabc0567690d13cf5a02a1
Author: Joseph Scheuhammer <clown alum mit edu>
Date: Fri Jul 27 15:50:41 2012 -0400
universal-access: Add zoom shader options
Add 'Color effects' section to zoom options dialogue:
- a toggle for inversion (White on black)
- a slider for brightness
- a slider for contrast
- a slider for grey scale
https://bugzilla.gnome.org/show_bug.cgi?id=676817
panels/universal-access/zoom-options.c | 126 ++++++++-
panels/universal-access/zoom-options.ui | 492 +++++++++++++++++++++++++++----
2 files changed, 565 insertions(+), 53 deletions(-)
---
diff --git a/panels/universal-access/zoom-options.c b/panels/universal-access/zoom-options.c
index d5644f3..bb660b9 100644
--- a/panels/universal-access/zoom-options.c
+++ b/panels/universal-access/zoom-options.c
@@ -40,12 +40,28 @@ struct _ZoomOptionsPrivate
GtkWidget *push_radio;
GtkWidget *proportional_radio;
GtkWidget *extend_beyond_checkbox;
+ GtkWidget *brightness_slider;
+ GtkWidget *contrast_slider;
GtkWidget *dialog;
};
G_DEFINE_TYPE (ZoomOptions, zoom_options, G_TYPE_OBJECT);
+static gchar *brightness_keys[] = {
+ "brightness-red",
+ "brightness-green",
+ "brightness-blue",
+ NULL
+};
+
+static gchar *contrast_keys[] = {
+ "contrast-red",
+ "contrast-green",
+ "contrast-blue",
+ NULL
+};
+
inline void set_active (GtkWidget* toggle, gboolean sense);
inline gboolean get_active (GtkWidget* toggle);
inline void set_sensitive (GtkWidget *widget, gboolean sense);
@@ -55,6 +71,10 @@ static void mouse_tracking_notify_cb (GSettings *settings, const gchar *key, Zoo
static void scale_label (GtkBin *toggle, PangoAttrList *attrs);
static void xhairs_color_opacity_changed (GtkColorButton *button, ZoomOptionsPrivate *priv);
static void xhairs_length_add_marks (GtkScale *scale);
+static void effects_slider_set_value (GtkRange *slider, GSettings *settings);
+static void brightness_slider_notify_cb (GSettings *settings, const gchar *key, ZoomOptionsPrivate *priv);
+static void contrast_slider_notify_cb (GSettings *settings, const gchar *key, ZoomOptionsPrivate *priv);
+static void effects_slider_changed (GtkRange *slider, ZoomOptionsPrivate *priv);
/* Utilties to save on line length */
@@ -338,6 +358,90 @@ static void xhairs_length_add_marks (GtkScale *scale)
}
static void
+init_effects_slider (GtkRange *slider,
+ ZoomOptionsPrivate *priv,
+ gchar **keys,
+ GCallback notify_cb)
+{
+ gchar **key;
+ gchar *signal;
+
+ g_object_set_data (G_OBJECT (slider), "settings-keys", keys);
+ effects_slider_set_value (slider, priv->settings);
+
+ for (key = keys; *key; key++)
+ {
+ signal = g_strdup_printf ("changed::%s", *key);
+ g_signal_connect (G_OBJECT (priv->settings), signal, notify_cb, priv);
+ g_free (signal);
+ }
+ g_signal_connect (G_OBJECT (slider), "value-changed",
+ G_CALLBACK (effects_slider_changed),
+ priv);
+}
+
+static void
+effects_slider_set_value (GtkRange *slider, GSettings *settings)
+{
+ gchar **keys;
+ gdouble red, green, blue;
+ gdouble value;
+
+ keys = g_object_get_data (G_OBJECT (slider), "settings-keys");
+
+ red = g_settings_get_double (settings, keys[0]);
+ green = g_settings_get_double (settings, keys[1]);
+ blue = g_settings_get_double (settings, keys[2]);
+
+ if (red == green && green == blue)
+ value = red;
+ else
+ /* use NTSC conversion weights for reasonable average */
+ value = 0.299 * red + 0.587 * green + 0.114 * blue;
+
+ gtk_range_set_value (slider, value);
+}
+
+static void
+brightness_slider_notify_cb (GSettings *settings,
+ const gchar *key,
+ ZoomOptionsPrivate *priv)
+{
+ GtkRange *slider = GTK_RANGE (priv->brightness_slider);
+
+ g_signal_handlers_block_by_func (slider, effects_slider_changed, priv);
+ effects_slider_set_value (slider, settings);
+ g_signal_handlers_unblock_by_func (slider, effects_slider_changed, priv);
+}
+
+static void
+contrast_slider_notify_cb (GSettings *settings,
+ const gchar *key,
+ ZoomOptionsPrivate *priv)
+{
+ GtkRange *slider = GTK_RANGE (priv->contrast_slider);
+
+ g_signal_handlers_block_by_func (slider, effects_slider_changed, priv);
+ effects_slider_set_value (slider, settings);
+ g_signal_handlers_unblock_by_func (slider, effects_slider_changed, priv);
+}
+
+static void
+effects_slider_changed (GtkRange *slider, ZoomOptionsPrivate *priv)
+{
+ gchar **keys, **key;
+ gdouble value;
+
+ keys = g_object_get_data (G_OBJECT (slider), "settings-keys");
+ value = gtk_range_get_value (slider);
+
+ for (key = keys; *key; key++)
+ {
+ g_settings_set_double (priv->settings, *key, value);
+ }
+}
+
+static void
zoom_option_close_dialog_cb (GtkWidget *closer, ZoomOptionsPrivate *priv)
{
if (priv->dialog != NULL)
@@ -466,13 +570,33 @@ zoom_options_init (ZoomOptions *self)
g_settings_bind (priv->settings, "cross-hairs-clip", w, "active",
G_SETTINGS_BIND_INVERT_BOOLEAN);
- /* ... Cross hairs: length */
+ /* ... Cross hairs: length ... */
w = WID ("xHairsLengthSlider");
xhairs_length_add_marks (GTK_SCALE (w));
g_settings_bind (priv->settings, "cross-hairs-length",
gtk_range_get_adjustment (GTK_RANGE (w)), "value",
G_SETTINGS_BIND_DEFAULT);
+ /* ... Color effects ... */
+ w = WID ("inverseEnabledSwitch");
+ g_settings_bind (priv->settings, "invert-lightness", w, "active",
+ G_SETTINGS_BIND_DEFAULT);
+
+ w = WID ("brightnessSlider");
+ priv->brightness_slider = w;
+ init_effects_slider (GTK_RANGE(w), priv, brightness_keys,
+ G_CALLBACK (brightness_slider_notify_cb));
+
+ w = WID ("contrastSlider");
+ priv->contrast_slider = w;
+ init_effects_slider (GTK_RANGE(w), priv, contrast_keys,
+ G_CALLBACK (contrast_slider_notify_cb));
+
+ w = WID ("grayscale_slider");
+ g_settings_bind (priv->settings, "color-saturation",
+ gtk_range_get_adjustment (GTK_RANGE (w)), "value",
+ G_SETTINGS_BIND_DEFAULT);
+
/* ... Window itself ... */
priv->dialog = WID ("magPrefsDialog");
diff --git a/panels/universal-access/zoom-options.ui b/panels/universal-access/zoom-options.ui
index ef3dac7..a6dcd61 100644
--- a/panels/universal-access/zoom-options.ui
+++ b/panels/universal-access/zoom-options.ui
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
- <requires lib="gtk+" version="2.16"/>
+ <!-- interface-requires gtk+ 3.0 -->
<object class="GtkAdjustment" id="adjustment2">
<property name="lower">100</property>
<property name="upper">4096</property>
@@ -9,6 +9,24 @@
<property name="page_increment">10</property>
<property name="page_size">10</property>
</object>
+ <object class="GtkAdjustment" id="brightness">
+ <property name="lower">-0.75</property>
+ <property name="upper">0.75</property>
+ <property name="step_increment">0.10000000000000001</property>
+ <property name="page_increment">0.10000000000000001</property>
+ </object>
+ <object class="GtkAdjustment" id="contrast">
+ <property name="lower">-0.75</property>
+ <property name="upper">0.75</property>
+ <property name="step_increment">0.10000000000000001</property>
+ <property name="page_increment">0.10000000000000001</property>
+ </object>
+ <object class="GtkAdjustment" id="grayscale">
+ <property name="upper">1</property>
+ <property name="value">1</property>
+ <property name="step_increment">0.10000000000000001</property>
+ <property name="page_increment">0.20000000000000001</property>
+ </object>
<object class="GtkAdjustment" id="magFactor">
<property name="lower">1</property>
<property name="upper">20</property>
@@ -16,11 +34,49 @@
<property name="step_increment">0.25</property>
<property name="page_increment">1</property>
</object>
+ <object class="GtkListStore" id="screen_position_model">
+ <columns>
+ <!-- column-name positions -->
+ <column type="gchararray"/>
+ <!-- column-name text_scale -->
+ <column type="gfloat"/>
+ <!-- column-name setting_value -->
+ <column type="gchararray"/>
+ </columns>
+ <data>
+ <row>
+ <col id="0" translatable="yes">Full Screen</col>
+ <col id="1">1.25</col>
+ <col id="2">full-screen</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Top Half</col>
+ <col id="1">1.25</col>
+ <col id="2">top-half</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Bottom Half</col>
+ <col id="1">1.25</col>
+ <col id="2">bottom-half</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Left Half</col>
+ <col id="1">1.25</col>
+ <col id="2">left-half</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Right Half</col>
+ <col id="1">1.25</col>
+ <col id="2">right-half</col>
+ </row>
+ </data>
+ </object>
<object class="GtkDialog" id="magPrefsDialog">
<property name="can_focus">False</property>
<property name="border_width">5</property>
<property name="title" translatable="yes">Zoom Options</property>
<property name="resizable">False</property>
+ <property name="type_hint">normal</property>
<child internal-child="vbox">
<object class="GtkBox" id="dialog-vbox1">
<property name="visible">True</property>
@@ -31,9 +87,9 @@
<object class="GtkVBox" id="vbox4">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="margin_left">16</property>
+ <property name="margin_right">40</property>
<property name="spacing">12</property>
- <property name="margin-left">16</property>
- <property name="margin-right">40</property>
<child>
<object class="GtkFrame" id="frame2">
<property name="visible">True</property>
@@ -116,6 +172,7 @@
<child>
<object class="GtkRadioButton" id="moveableLens">
<property name="label" translatable="yes">Follow mouse cursor</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
@@ -134,6 +191,7 @@
<child>
<object class="GtkRadioButton" id="screenPart">
<property name="label" translatable="yes">Screen part:</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
@@ -195,6 +253,7 @@
<child>
<object class="GtkCheckButton" id="scrollAtEdges">
<property name="label" translatable="yes">Magnifier extends outside of screen</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
@@ -212,6 +271,7 @@
<child>
<object class="GtkRadioButton" id="centered">
<property name="label" translatable="yes">Keep magnifier cursor centered</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
@@ -229,6 +289,7 @@
<child>
<object class="GtkRadioButton" id="push">
<property name="label" translatable="yes">Magnifier cursor pushes contents around</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
@@ -246,6 +307,7 @@
<child>
<object class="GtkRadioButton" id="proportional">
<property name="label" translatable="yes">Magnifier cursor moves with contents</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
@@ -472,6 +534,7 @@
<property name="spacing">3</property>
<child>
<object class="GtkColorButton" id="xHairsPicker">
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
@@ -494,15 +557,6 @@
<property name="height">1</property>
</packing>
</child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
</object>
<packing>
<property name="expand">False</property>
@@ -546,15 +600,17 @@
</child>
<child>
<object class="GtkSwitch" id="xhairsEnabledSwitch">
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<accessibility>
- <relation target="xhairs-section-heading" type="labelled-by"/>
+ <relation type="labelled-by" target="xhairs-section-heading"/>
</accessibility>
</object>
<packing>
<property name="expand">False</property>
+ <property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
@@ -571,15 +627,16 @@
<child>
<object class="GtkCheckButton" id="xHairsClipCheckbox">
<property name="label" translatable="yes">Overlaps mouse cursor</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="halign">start</property>
+ <property name="margin_left">100</property>
<property name="hexpand">True</property>
<property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="draw_indicator">True</property>
- <property name="margin-left">100</property>
</object>
<packing>
<property name="expand">False</property>
@@ -597,6 +654,373 @@
<property name="position">2</property>
</packing>
</child>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">8</property>
+ <property name="left_padding">16</property>
+ <child>
+ <object class="GtkBox" id="box8">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkGrid" id="grid1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">16</property>
+ <property name="column_spacing">2</property>
+ <child>
+ <object class="GtkLabel" id="inverse_lightness_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">White on black:</property>
+ <property name="width_chars">12</property>
+ <accessibility>
+ <relation type="label-for" target="inverseEnabledSwitch"/>
+ </accessibility>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="brightness_slider_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Brightness:</property>
+ <property name="width_chars">12</property>
+ <accessibility>
+ <relation type="label-for" target="brightnessSlider"/>
+ </accessibility>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="contrast_slider_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Contrast:</property>
+ <accessibility>
+ <relation type="label-for" target="contrastSlider"/>
+ </accessibility>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="gray_scale_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Grayscale:</property>
+ <accessibility>
+ <relation type="label-for" target="grayscale_slider"/>
+ </accessibility>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">3</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">3</property>
+ <child>
+ <object class="GtkLabel" id="grayscale_gray_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes" comments="short delay">Gray</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHScale" id="grayscale_slider">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">grayscale</property>
+ <property name="draw_value">False</property>
+ <property name="value_pos">right</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="grayscale_color_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes" comments="long delay">Color</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="padding">8</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">3</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box10">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkSwitch" id="inverseEnabledSwitch">
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="use_action_appearance">False</property>
+ <accessibility>
+ <relation type="labelled-by" target="xhairs-section-heading"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">3</property>
+ <child>
+ <object class="GtkLabel" id="brightness_low_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes" comments="short delay">Low</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHScale" id="brightnessSlider">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">brightness</property>
+ <property name="lower_stepper_sensitivity">on</property>
+ <property name="draw_value">False</property>
+ <property name="value_pos">left</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="brighness_high_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes" comments="long delay">High</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="padding">8</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">3</property>
+ <child>
+ <object class="GtkLabel" id="contrast_low_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes" comments="short delay">Low</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHScale" id="contrastSlider">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">contrast</property>
+ <property name="lower_stepper_sensitivity">on</property>
+ <property name="draw_value">False</property>
+ <property name="value_pos">left</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="contrast_hi_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes" comments="long delay">High</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="padding">8</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="effects-section-heading">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Color Effects:</property>
+ <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.25"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="padding">4</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -615,6 +1039,7 @@
<child>
<object class="GtkButton" id="closeButton">
<property name="label">gtk-close</property>
+ <property name="use_action_appearance">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
@@ -642,43 +1067,6 @@
<action-widget response="0">closeButton</action-widget>
</action-widgets>
</object>
- <object class="GtkListStore" id="screen_position_model">
- <columns>
- <!-- column-name positions -->
- <column type="gchararray"/>
- <!-- column-name text_scale -->
- <column type="gfloat"/>
- <!-- column-name setting_value -->
- <column type="gchararray"/>
- </columns>
- <data>
- <row>
- <col id="0" translatable="yes">Full Screen</col>
- <col id="1">1.25</col>
- <col id="2">full-screen</col>
- </row>
- <row>
- <col id="0" translatable="yes">Top Half</col>
- <col id="1">1.25</col>
- <col id="2">top-half</col>
- </row>
- <row>
- <col id="0" translatable="yes">Bottom Half</col>
- <col id="1">1.25</col>
- <col id="2">bottom-half</col>
- </row>
- <row>
- <col id="0" translatable="yes">Left Half</col>
- <col id="1">1.25</col>
- <col id="2">left-half</col>
- </row>
- <row>
- <col id="0" translatable="yes">Right Half</col>
- <col id="1">1.25</col>
- <col id="2">right-half</col>
- </row>
- </data>
- </object>
<object class="GtkAdjustment" id="xHairsThickness">
<property name="lower">1</property>
<property name="upper">100</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]