diff options
author | Joseph Scheuhammer <clown@alum.mit.edu> | 2011-12-16 16:55:39 -0500 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2012-01-21 14:26:08 +0000 |
commit | 9d5e654bec5697b115806201f1c9cf48e467244b (patch) | |
tree | f364a9df2752e0fc262bcb37853a7a4955db74a0 /panels/universal-access | |
parent | 3ff082633ab893ad860d7aa491d1d0752ae63d2a (diff) | |
download | gnome-control-center-9d5e654bec5697b115806201f1c9cf48e467244b.tar.gz |
Universal access: add dialog for zoom options
Modified zoom options dialog to implement hbons wireframe.
https://bugzilla.gnome.org/show_bug.cgi?id=643086
Diffstat (limited to 'panels/universal-access')
-rw-r--r-- | panels/universal-access/uap.ui | 6 | ||||
-rw-r--r-- | panels/universal-access/zoom-options.c | 295 | ||||
-rw-r--r-- | panels/universal-access/zoom-options.ui | 917 |
3 files changed, 631 insertions, 587 deletions
diff --git a/panels/universal-access/uap.ui b/panels/universal-access/uap.ui index 0181297f4..8017855f9 100644 --- a/panels/universal-access/uap.ui +++ b/panels/universal-access/uap.ui @@ -609,12 +609,16 @@ <object class="GtkButton" id="seeing_zoom_preferences_button"> <property name="can_focus">True</property> <property name="receives_default">True</property> + <property name="visible">True</property> <child> <object class="GtkLabel" id="seeing_zoom_preferences_label"> <property name="visible">True</property> - <property name="sensitive">False</property> + <property name="sensitive">True</property> <property name="label" translatable="yes">Options...</property> <property name="use_markup">True</property> + <attributes> + <attribute name="scale" value="1.25"/> + </attributes> </object> </child> </object> diff --git a/panels/universal-access/zoom-options.c b/panels/universal-access/zoom-options.c index 9151a6cc1..ad7c20eaa 100644 --- a/panels/universal-access/zoom-options.c +++ b/panels/universal-access/zoom-options.c @@ -25,61 +25,244 @@ #define WID(w) (GtkWidget *) gtk_builder_get_object (priv->builder, w) +#define POSITION_MODEL_VALUE_COLUMN 2 +#define FONT_SCALE 1.25 + struct _ZoomOptionsPrivate { GtkBuilder *builder; GSettings *settings; + GtkWidget *position_combobox; + GtkWidget *follow_mouse_radio; + GtkWidget *screen_part_radio; + GtkWidget *centered_radio; + GtkWidget *push_radio; + GtkWidget *proportional_radio; + GtkWidget *extend_beyond_checkbox; + GtkWidget *dialog; }; G_DEFINE_TYPE (ZoomOptions, zoom_options, G_TYPE_OBJECT); -static void xhairs_color_opacity_changed_cb (GtkColorButton *button, ZoomOptionsPrivate *priv); +inline void set_active (GtkWidget* toggle, gboolean sense); +inline gboolean get_active (GtkWidget* toggle); +inline void set_sensitive (GtkWidget *widget, gboolean sense); + +static void set_enable_screen_part_ui (GtkWidget *widget, ZoomOptionsPrivate *priv); +static void mouse_tracking_notify_cb (GSettings *settings, const gchar *key, ZoomOptionsPrivate *priv); +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); +/* Utilties to save on line length */ + +inline void +set_active (GtkWidget* toggle, gboolean sense) +{ + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), sense); +} + +inline gboolean +get_active (GtkWidget* toggle) +{ + return gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (toggle)); +} + +inline void +set_sensitive (GtkWidget *widget, gboolean sense) +{ + gtk_widget_set_sensitive (widget, sense); +} + static void -mouse_mode_radiobutton_toggled_cb (GtkWidget *widget, ZoomOptionsPrivate *priv) +mouse_tracking_radio_toggled_cb (GtkWidget *widget, ZoomOptionsPrivate *priv) { - if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)) == TRUE) - { + if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)) == TRUE) + { g_settings_set_string (priv->settings, "mouse-tracking", - gtk_buildable_get_name (GTK_BUILDABLE (widget))); + gtk_buildable_get_name (GTK_BUILDABLE (widget))); } } static void -screen_position_radiobutton_toggled_cb (GtkWidget *widget, ZoomOptionsPrivate *priv) +init_mouse_mode_radio_group (GSList *mode_group, ZoomOptionsPrivate *priv) { - if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)) == TRUE) - { - g_settings_set_string (priv->settings, "screen-position", - gtk_buildable_get_name (GTK_BUILDABLE (widget))); - } + gchar *mode; + gchar *name; + + mode = g_settings_get_string (priv->settings, "mouse-tracking"); + for (; mode_group != NULL; mode_group = mode_group->next) + { + name = (gchar *) gtk_buildable_get_name (GTK_BUILDABLE (mode_group->data)); + if (g_strcmp0 (name, mode) == 0) + set_active (GTK_WIDGET (mode_group->data), TRUE); + else + set_active (GTK_WIDGET (mode_group->data), FALSE); + + g_signal_connect (G_OBJECT (mode_group->data), "toggled", + G_CALLBACK(mouse_tracking_radio_toggled_cb), + priv); + } } static void -init_radio_group (GSList *radio_group, - gchar *key, - GCallback radiobutton_toggled_cb, - ZoomOptionsPrivate *priv) +init_screen_part_section (ZoomOptionsPrivate *priv, PangoAttrList *pango_attrs) { - gchar *value; - const gchar *name; + gboolean lens_mode; + GSList *mouse_mode_group; + + priv->follow_mouse_radio = WID ("moveableLens"); + priv->screen_part_radio = WID ("screenPart"); + priv->centered_radio = WID ("centered"); + priv->push_radio = WID ("push"); + priv->proportional_radio = WID ("proportional"); + priv->extend_beyond_checkbox = WID ("scrollAtEdges"); + + /* Scale the labels of the toggles */ + scale_label (GTK_BIN(priv->follow_mouse_radio), pango_attrs); + scale_label (GTK_BIN(priv->screen_part_radio), pango_attrs); + scale_label (GTK_BIN(priv->centered_radio), pango_attrs); + scale_label (GTK_BIN(priv->push_radio), pango_attrs); + scale_label (GTK_BIN(priv->proportional_radio), pango_attrs); + scale_label (GTK_BIN(priv->extend_beyond_checkbox), pango_attrs); + + lens_mode = g_settings_get_boolean (priv->settings, "lens-mode"); + set_active (priv->follow_mouse_radio, lens_mode); + set_active (priv->screen_part_radio, !lens_mode); + + mouse_mode_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->centered_radio)); + init_mouse_mode_radio_group (mouse_mode_group, priv); + set_enable_screen_part_ui (priv->screen_part_radio, priv); + + g_settings_bind (priv->settings, "lens-mode", + priv->follow_mouse_radio, "active", + G_SETTINGS_BIND_DEFAULT); + + g_settings_bind (priv->settings, "scroll-at-edges", + priv->extend_beyond_checkbox, "active", + G_SETTINGS_BIND_DEFAULT); + + g_signal_connect (G_OBJECT (priv->screen_part_radio), "toggled", + G_CALLBACK (set_enable_screen_part_ui), priv); + + g_signal_connect (G_OBJECT (priv->settings), "changed::mouse-tracking", + G_CALLBACK (mouse_tracking_notify_cb), priv); +} + +static void +set_enable_screen_part_ui (GtkWidget *widget, ZoomOptionsPrivate *priv) +{ + gboolean screen_part; - value = g_settings_get_string (priv->settings, key); - for (; radio_group != NULL; radio_group = radio_group->next) + /* If the "screen part" radio is not checked, then the "follow mouse" radio + * is checked (== lens mode). Set mouse tracking back to the default. + */ + screen_part = get_active (priv->screen_part_radio); + if (!screen_part) { - name = gtk_buildable_get_name (GTK_BUILDABLE (radio_group->data)); - if (strcmp (name, value) == 0) - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radio_group->data), TRUE); - else - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radio_group->data), FALSE); - - g_signal_connect (G_OBJECT (radio_group->data), "toggled", - G_CALLBACK(radiobutton_toggled_cb), - priv); + g_settings_set_string (priv->settings, + "mouse-tracking", "proportional"); } + + set_sensitive (priv->centered_radio, screen_part); + set_sensitive (priv->push_radio, screen_part); + set_sensitive (priv->proportional_radio, screen_part); + set_sensitive (priv->extend_beyond_checkbox, screen_part); +} + +static void +mouse_tracking_notify_cb (GSettings *settings, + const gchar *key, + ZoomOptionsPrivate *priv) +{ + gchar *tracking; + + tracking = g_settings_get_string (settings, key); + if (g_strcmp0 (tracking, "proportional") == 0) + { + set_active (priv->proportional_radio, TRUE); + } + else if (g_strcmp0 (tracking, "centered") == 0) + { + set_active (priv->centered_radio, TRUE); + } + else + { + set_active (priv->push_radio, TRUE); + } +} + +static void +scale_label (GtkBin *toggle, PangoAttrList *attrs) +{ + GtkWidget *label; + + label = gtk_bin_get_child (toggle); + gtk_label_set_attributes (GTK_LABEL (label), attrs); +} + +static void +screen_position_combo_changed_cb (GtkWidget *combobox, ZoomOptions *options) +{ + ZoomOptionsPrivate *priv = options->priv; + gchar *combo_value = NULL; + GtkTreeIter iter; + + gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combobox), &iter); + + gtk_tree_model_get (gtk_combo_box_get_model (GTK_COMBO_BOX (combobox)), &iter, + POSITION_MODEL_VALUE_COLUMN, &combo_value, + -1); + + if (g_strcmp0 (combo_value, "")) + { + g_settings_set_string (priv->settings, "screen-position", combo_value); + } + + g_free (combo_value); +} + +static void +screen_position_notify_cb (GSettings *settings, + const gchar *key, + ZoomOptions *options) +{ + ZoomOptionsPrivate *priv = options->priv; + gchar *position; + GtkTreeIter iter; + GtkTreeModel *model; + GtkComboBox *combobox; + gboolean valid; + gchar *combo_value; + + position = g_settings_get_string (settings, key); + position = g_settings_get_string (priv->settings, key); + combobox = GTK_COMBO_BOX (WID ("screen_position_combo_box")); + model = gtk_combo_box_get_model (combobox); + + /* Find the matching screen position value in the combobox model. If nothing + * matches, leave the combobox as is. + */ + valid = gtk_tree_model_get_iter_first (model, &iter); + while (valid) + { + gtk_tree_model_get (model, &iter, + POSITION_MODEL_VALUE_COLUMN, &combo_value, + -1); + if (!g_strcmp0 (combo_value, position)) + { + g_signal_handlers_block_by_func (combobox, screen_position_combo_changed_cb, priv); + gtk_combo_box_set_active_iter (combobox, &iter); + g_signal_handlers_unblock_by_func (combobox, screen_position_combo_changed_cb, priv); + g_free (combo_value); + break; + } + + g_free (combo_value); + valid = gtk_tree_model_iter_next (model, &iter); + } } static void @@ -96,7 +279,7 @@ init_xhairs_color_opacity (GtkColorButton *color_button, ZoomOptionsPrivate *pri } static void -update_xhairs_color_cb (GSettings *settings, gchar *key, GtkColorButton *button) +xhairs_color_notify_cb (GSettings *settings, gchar *key, GtkColorButton *button) { gchar *color; GdkColor rgb; @@ -108,7 +291,7 @@ update_xhairs_color_cb (GSettings *settings, gchar *key, GtkColorButton *button) } static void -update_xhairs_opacity_cb (GSettings *settings, gchar *key, GtkColorButton *button) +xhairs_opacity_notify_cb (GSettings *settings, gchar *key, GtkColorButton *button) { gdouble opacity; @@ -118,7 +301,7 @@ update_xhairs_opacity_cb (GSettings *settings, gchar *key, GtkColorButton *butto #define TO_HEX(x) (int) ((gdouble) x * 255.0) static void -xhairs_color_opacity_changed_cb (GtkColorButton *button, ZoomOptionsPrivate *priv) +xhairs_color_opacity_changed (GtkColorButton *button, ZoomOptionsPrivate *priv) { GdkRGBA rgba; gchar *color_string; @@ -153,9 +336,11 @@ static void xhairs_length_add_marks (GtkScale *scale) length of one hair is 25% of the screen. */ quarter_length = length / 4; + gtk_scale_add_mark (scale, 0, GTK_POS_BOTTOM, _("Short")); gtk_scale_add_mark (scale, quarter_length, GTK_POS_BOTTOM, _("1/4 Screen")); gtk_scale_add_mark (scale, quarter_length * 2 , GTK_POS_BOTTOM, _("1/2 Screen")); gtk_scale_add_mark (scale, quarter_length * 3, GTK_POS_BOTTOM, _("3/4 Screen")); + gtk_scale_add_mark (scale, length, GTK_POS_BOTTOM, _("Long")); } static void @@ -215,7 +400,8 @@ zoom_options_init (ZoomOptions *self) { ZoomOptionsPrivate *priv; GtkWidget *w; - GSList *radio_group; + PangoAttrList *pango_attrs; + PangoAttribute *attr; GError *err = NULL; priv = self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, ZOOM_TYPE_OPTIONS, ZoomOptionsPrivate); @@ -237,33 +423,26 @@ zoom_options_init (ZoomOptions *self) priv->settings = g_settings_new ("org.gnome.desktop.a11y.magnifier"); + pango_attrs = pango_attr_list_new (); + attr = pango_attr_scale_new (FONT_SCALE); + pango_attr_list_insert (pango_attrs, attr); + /* Magnification factor */ w = WID ("magFactorSpinButton"); g_settings_bind (priv->settings, "mag-factor", gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (w)), "value", G_SETTINGS_BIND_DEFAULT); - /* Mouse tracking */ - w = WID ("proportional"); - radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (w)); - init_radio_group (radio_group, "mouse-tracking", - G_CALLBACK(mouse_mode_radiobutton_toggled_cb), priv); - - /* Screen position */ - w = WID ("full-screen"); - radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (w)); - init_radio_group (radio_group, "screen-position", - G_CALLBACK(screen_position_radiobutton_toggled_cb), priv); - - /* Lens mode */ - w = WID ("moveableLensCheckbox"); - g_settings_bind (priv->settings, "lens-mode", w, "active", - G_SETTINGS_BIND_DEFAULT); + /* Screen position combo */ + w = WID ("screen_position_combo_box"); + screen_position_notify_cb (priv->settings, "screen-position", self); + g_signal_connect (G_OBJECT (priv->settings), "changed::screen-position", + G_CALLBACK (screen_position_notify_cb), self); + g_signal_connect (G_OBJECT (w), "changed", + G_CALLBACK (screen_position_combo_changed_cb), self); - /* Clamp scrolling at screen edges */ - w = WID ("scrollAtEdges"); - g_settings_bind (priv->settings, "scroll-at-edges", w, "active", - G_SETTINGS_BIND_DEFAULT); + /* Screen part section */ + init_screen_part_section (priv, pango_attrs); /* Cross hairs: show/hide ... */ w = WID ("xhairsEnabledSwitch"); @@ -274,11 +453,11 @@ zoom_options_init (ZoomOptions *self) w = WID ("xHairsPicker"); init_xhairs_color_opacity (GTK_COLOR_BUTTON (w), priv); g_signal_connect (G_OBJECT (priv->settings), "changed::cross-hairs-color", - G_CALLBACK (update_xhairs_color_cb), w); + G_CALLBACK (xhairs_color_notify_cb), w); g_signal_connect (G_OBJECT (priv->settings), "changed::cross-hairs-opacity", - G_CALLBACK (update_xhairs_opacity_cb), w); + G_CALLBACK (xhairs_opacity_notify_cb), w); g_signal_connect (G_OBJECT (w), "color-set", - G_CALLBACK(xhairs_color_opacity_changed_cb), + G_CALLBACK (xhairs_color_opacity_changed), priv); /* ... Cross hairs: thickness ... */ @@ -289,6 +468,7 @@ zoom_options_init (ZoomOptions *self) /* ... Cross hairs: clip ... */ w = WID ("xHairsClipCheckbox"); + scale_label (GTK_BIN(w), pango_attrs); g_settings_bind (priv->settings, "cross-hairs-clip", w, "active", G_SETTINGS_BIND_INVERT_BOOLEAN); @@ -301,6 +481,8 @@ zoom_options_init (ZoomOptions *self) /* ... Window itself ... */ priv->dialog = WID ("magPrefsDialog"); + gtk_window_set_position (GTK_WINDOW (priv->dialog), + GTK_WIN_POS_CENTER); w = WID ("closeButton"); g_signal_connect (G_OBJECT (w), "clicked", G_CALLBACK (zoom_option_close_dialog_cb), @@ -308,6 +490,9 @@ zoom_options_init (ZoomOptions *self) g_signal_connect (G_OBJECT (priv->dialog), "delete-event", G_CALLBACK (gtk_widget_hide_on_delete), NULL); + + pango_attr_list_unref (pango_attrs); + zoom_options_present_dialog (self); } diff --git a/panels/universal-access/zoom-options.ui b/panels/universal-access/zoom-options.ui index 51b50f0d2..9936637c6 100644 --- a/panels/universal-access/zoom-options.ui +++ b/panels/universal-access/zoom-options.ui @@ -17,13 +17,11 @@ <property name="page_increment">1</property> </object> <object class="GtkDialog" id="magPrefsDialog"> - <property name="width_request">650</property> <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="window_position">center-on-parent</property> - <property name="default_width">600</property> <property name="type_hint">normal</property> <child internal-child="vbox"> <object class="GtkBox" id="dialog-vbox1"> @@ -32,173 +30,96 @@ <property name="orientation">vertical</property> <property name="spacing">5</property> <child> - <object class="GtkNotebook" id="notebook1"> + <object class="GtkVBox" id="vbox4"> <property name="visible">True</property> - <property name="can_focus">True</property> + <property name="can_focus">False</property> + <property name="spacing">12</property> + <property name="margin-left">16</property> + <property name="margin-right">40</property> <child> - <object class="GtkVBox" id="vbox4"> + <object class="GtkFrame" id="frame2"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="spacing">12</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkFrame" id="frame2"> + <placeholder/> + </child> + <child type="label"> + <object class="GtkBox" id="box5"> <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="alignment2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="yscale">0</property> - <property name="left_padding">12</property> - <child> - <object class="GtkSpinButton" id="magFactorSpinButton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="halign">start</property> - <property name="invisible_char">●</property> - <property name="adjustment">magFactor</property> - <property name="digits">2</property> - <accessibility> - <relation type="labelled-by" target="mag_factor_label"/> - </accessibility> - </object> - </child> - </object> - </child> - <child type="label"> <object class="GtkLabel" id="mag_factor_label"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="xalign">0</property> <property name="ypad">2</property> - <property name="label" translatable="yes">Magnification</property> + <property name="label" translatable="yes">Magnification:</property> <attributes> <attribute name="weight" value="bold"/> <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> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">0</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">in</property> <child> - <object class="GtkAlignment" id="alignment1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="yscale">0</property> - <property name="left_padding">12</property> - <child> - <object class="GtkVBox" id="vbox1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <child> - <object class="GtkRadioButton" id="proportional"> - <property name="label" translatable="yes">Always</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> - <property name="relief">none</property> - <property name="active">True</property> - <property name="draw_indicator">True</property> - </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="padding">8</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkRadioButton" id="push"> - <property name="label" translatable="yes">To keep the pointer visible</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> - <property name="active">True</property> - <property name="draw_indicator">True</property> - <property name="group">proportional</property> - </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="padding">8</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="GtkRadioButton" id="centered"> - <property name="label" translatable="yes">To keep the pointer centered</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> - <property name="active">True</property> - <property name="draw_indicator">True</property> - <property name="group">proportional</property> - </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="padding">8</property> - <property name="position">2</property> - </packing> - </child> - </object> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label1"> + <object class="GtkSpinButton" id="magFactorSpinButton"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xpad">1</property> - <property name="label" translatable="yes">Image moves with the mouse pointer</property> - <attributes> - <attribute name="weight" value="bold"/> - <attribute name="scale" value="1.25"/> - </attributes> + <property name="can_focus">True</property> + <property name="halign">start</property> + <property name="invisible_char">●</property> + <property name="invisible_char_set">True</property> + <property name="adjustment">magFactor</property> + <property name="digits">2</property> </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">21</property> + <property name="position">1</property> + </packing> </child> </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="padding">8</property> - <property name="position">1</property> - </packing> </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame5"> + <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="GtkFrame" id="frame4"> + <object class="GtkAlignment" id="alignment5"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label_xalign">0</property> - <property name="shadow_type">in</property> + <property name="top_padding">6</property> + <property name="left_padding">24</property> <child> - <object class="GtkAlignment" id="alignment3"> + <object class="GtkBox" id="box3"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="left_padding">12</property> + <property name="orientation">vertical</property> <child> - <object class="GtkGrid" id="grid1"> + <object class="GtkGrid" id="grid4"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="n_rows">4</property> + <property name="n_rows">2</property> + <property name="n_columns">2</property> <child> - <object class="GtkRadioButton" id="full-screen"> - <property name="label" translatable="yes">Full Screen</property> + <object class="GtkRadioButton" id="moveableLens"> + <property name="label" translatable="yes">Follow mouse cursor</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> @@ -208,267 +129,231 @@ <property name="draw_indicator">True</property> </object> <packing> - <property name="left_attach">1</property> + <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="GtkRadioButton" id="top-half"> - <property name="label" translatable="yes">Top Half</property> + <object class="GtkRadioButton" id="screenPart"> + <property name="label" translatable="yes">Screen part:</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> <property name="xalign">0</property> + <property name="yalign">0</property> <property name="active">True</property> <property name="draw_indicator">True</property> - <property name="group">full-screen</property> + <property name="group">moveableLens</property> </object> <packing> - <property name="left_attach">1</property> + <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="GtkRadioButton" id="bottom-half"> - <property name="label" translatable="yes">Bottom Half</property> + <object class="GtkComboBox" id="screen_position_combo_box"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="use_action_appearance">False</property> - <property name="xalign">0</property> - <property name="active">True</property> - <property name="draw_indicator">True</property> - <property name="group">full-screen</property> + <property name="can_focus">False</property> + <property name="model">screen_position_model</property> + <property name="active">0</property> + <child> + <object class="GtkCellRendererText" id="screen_position_renderer"/> + <attributes> + <attribute name="scale">1</attribute> + <attribute name="text">0</attribute> + </attributes> + </child> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">3</property> + <property name="top_attach">1</property> <property name="width">1</property> <property name="height">1</property> </packing> </child> <child> - <object class="GtkRadioButton" id="left-half"> - <property name="label" translatable="yes">Left Half</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> - <property name="xalign">0</property> - <property name="active">True</property> - <property name="draw_indicator">True</property> - <property name="group">full-screen</property> - </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> + <placeholder/> </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkAlignment" id="alignment6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">18</property> <child> - <object class="GtkRadioButton" id="right-half"> - <property name="label" translatable="yes">Right Half</property> + <object class="GtkBox" id="box4"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="use_action_appearance">False</property> - <property name="xalign">0</property> - <property name="active">True</property> - <property name="draw_indicator">True</property> - <property name="group">full-screen</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="scrollAtEdges"> + <property name="label" translatable="yes">Magnifier extends outside of screen</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> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">2</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="centered"> + <property name="label" translatable="yes">Keep magnifier cursor centered</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> + <property name="xalign">0</property> + <property name="active">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="push"> + <property name="label" translatable="yes">Magnifier cursor pushes contents around</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> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + <property name="group">centered</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="proportional"> + <property name="label" translatable="yes">Magnifier cursor moves with contents</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> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + <property name="group">centered</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">2</property> - <property name="width">1</property> - <property name="height">1</property> - </packing> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> </child> </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> </child> </object> </child> - <child type="label"> - <object class="GtkLabel" id="label6"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">Position of magnified view on screen</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">True</property> - <property name="fill">True</property> - <property name="position">3</property> - </packing> </child> - <child> - <object class="GtkCheckButton" id="moveableLensCheckbox"> - <property name="label" translatable="yes">Moveable lens - magnified view follows mouse movements</property> + <child type="label"> + <object class="GtkLabel" id="label3"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="use_action_appearance">False</property> - <property name="use_underline">True</property> - <property name="xalign">0</property> - <property name="draw_indicator">True</property> - </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="padding">8</property> - <property name="position">4</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="scrollAtEdges"> - <property name="label" translatable="yes">Image scrolls at screen edges</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> - <property name="use_underline">True</property> - <property name="xalign">0</property> - <property name="draw_indicator">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Magnifier Position:</property> + <attributes> + <attribute name="weight" value="bold"/> + <attribute name="scale" value="1.25"/> + </attributes> </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="padding">8</property> - <property name="position">5</property> - </packing> </child> </object> - </child> - <child type="tab"> - <object class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">General</property> - </object> <packing> - <property name="tab_fill">False</property> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">1</property> </packing> </child> <child> - <object class="GtkVBox" id="vbox8"> + <object class="GtkFrame" id="frame3"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="spacing">12</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkFrame" id="frame3"> + <object class="GtkAlignment" id="alignment4"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="top_padding">8</property> + <property name="left_padding">16</property> <child> - <object class="GtkAlignment" id="alignment4"> + <object class="GtkBox" id="box1"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="left_padding">12</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <placeholder/> + </child> <child> - <object class="GtkBox" id="box1"> + <object class="GtkGrid" id="grid2"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="orientation">vertical</property> + <property name="row_spacing">16</property> <child> - <object class="GtkHBox" id="xhairs_enabled_box"> + <object class="GtkLabel" id="label9"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="spacing">6</property> - <child> - <object class="GtkSwitch" id="xhairsEnabledSwitch"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <accessibility> - <relation target="xhairs-section-heading" type="labelled-by"/> - </accessibility> - </object> - <packing> - <property name="expand">False</property> - <property name="position">0</property> - </packing> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="xHairsClipCheckbox"> - <property name="label" translatable="yes">Show crosshairs intersection</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> <property name="xalign">0</property> - <property name="draw_indicator">True</property> + <property name="label" translatable="yes">Thickness:</property> + <property name="justify">center</property> + <property name="width_chars">12</property> + <attributes> + <attribute name="scale" value="1.25"/> + </attributes> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="padding">8</property> - <property name="position">1</property> + <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="GtkHBox" id="hbox3"> + <object class="GtkHBox" id="hbox7"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="spacing">12</property> + <property name="spacing">3</property> <child> - <object class="GtkLabel" id="label5"> + <object class="GtkLabel" id="xhairs_thickness_thin_label"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="yalign">0</property> - <property name="label" translatable="yes">Color and Opacity</property> - <accessibility> - <relation type="label-for" target="xHairsPicker"/> - </accessibility> + <property name="xalign">1</property> + <property name="label" translatable="yes" comments="short delay">Thin</property> + <property name="justify">center</property> <attributes> - <attribute name="weight" value="bold"/> <attribute name="scale" value="1.25"/> </attributes> </object> @@ -479,108 +364,79 @@ </packing> </child> <child> - <object class="GtkColorButton" id="xHairsPicker"> + <object class="GtkHScale" id="xHairsThicknessSlider"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="use_action_appearance">False</property> - <property name="yalign">0</property> - <property name="use_alpha">True</property> - <property name="color">#ffff00000000</property> + <property name="adjustment">xHairsThickness</property> + <property name="draw_value">False</property> + <property name="value_pos">right</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> + <property name="expand">True</property> + <property name="fill">True</property> <property name="position">1</property> </packing> </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="padding">8</property> - <property name="position">2</property> - </packing> - </child> - <child> - <object class="GtkHBox" id="hbox5"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="spacing">12</property> <child> - <object class="GtkLabel" id="label7"> + <object class="GtkLabel" id="xhairs_thickness_thick_label"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="xalign">0</property> - <property name="label" translatable="yes">Length</property> - <accessibility> - <relation type="label-for" target="xHairsLengthSlider"/> - </accessibility> + <property name="label" translatable="yes" comments="long delay">Thick</property> + <property name="justify">center</property> <attributes> - <attribute name="weight" value="bold"/> <attribute name="scale" value="1.25"/> </attributes> </object> <packing> <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">0</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">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Length:</property> + <property name="justify">center</property> + <property name="width_chars">12</property> + <accessibility> + <relation type="label-for" target="xHairsLengthSlider"/> + </accessibility> + <attributes> + <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="GtkHBox" id="hbox6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">3</property> <child> - <object class="GtkHBox" id="hbox6"> + <object class="GtkHScale" id="xHairsLengthSlider"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel" id="xhairs_length_short_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">Short</property> - <property name="justify">center</property> - <attributes> - <attribute name="scale" value="0.82999999999999996"/> - </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="xHairsLengthSlider"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="adjustment">xhairsLength</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="xhairs_length_long_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">Long</property> - <property name="justify">center</property> - <attributes> - <attribute name="scale" value="0.82999999999999996"/> - </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> + <property name="can_focus">True</property> + <property name="adjustment">xhairsLength</property> + <property name="draw_value">False</property> + <property name="value_pos">right</property> </object> <packing> <property name="expand">True</property> @@ -590,140 +446,159 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="padding">8</property> - <property name="position">3</property> + <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"> + <object class="GtkLabel" id="label5"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="spacing">12</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Color:</property> + <attributes> + <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="GtkBox" id="box7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">3</property> <child> - <object class="GtkLabel" id="label9"> + <object class="GtkColorButton" id="xHairsPicker"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">Thickness</property> - <attributes> - <attribute name="weight" value="bold"/> - <attribute name="scale" value="1.25"/> - </attributes> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</property> + <property name="yalign">0</property> + <property name="use_alpha">True</property> + <property name="color">#ffff00000000</property> </object> <packing> <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkHBox" id="hbox7"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel" id="xhairs_thickness_thin_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">Thin</property> - <property name="justify">center</property> - <attributes> - <attribute name="scale" value="0.82999999999999996"/> - </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="xHairsThicknessSlider"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="adjustment">xHairsThickness</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="xhairs_thickness_thick_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">Thick</property> - <property name="justify">center</property> - <attributes> - <attribute name="scale" value="0.82999999999999996"/> - </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="expand">True</property> <property name="fill">True</property> - <property name="position">1</property> + <property name="position">0</property> </packing> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="padding">8</property> - <property name="position">4</property> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> </child> </object> </child> - <child type="label"> + </object> + </child> + <child type="label"> + <object class="GtkBox" id="box2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">12</property> + <child> <object class="GtkLabel" id="xhairs-section-heading"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes">Show</property> + <property name="label" translatable="yes">Crosshairs:</property> <property name="use_markup">True</property> <attributes> <attribute name="weight" value="bold"/> <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="GtkBox" id="box6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">12</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkSwitch" id="xhairsEnabledSwitch"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <accessibility> + <relation target="xhairs-section-heading" type="labelled-by"/> + </accessibility> + </object> + <packing> + <property name="expand">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="xHairsClipCheckbox"> + <property name="label" translatable="yes">Overlaps mouse cursor</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="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> + <property name="fill">True</property> + <property name="position">2</property> + </packing> </child> </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> </child> </object> <packing> - <property name="position">1</property> - </packing> - </child> - <child type="tab"> - <object class="GtkLabel" id="label4"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">Crosshairs</property> - </object> - <packing> - <property name="position">1</property> - <property name="tab_fill">False</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">2</property> </packing> </child> </object> @@ -771,53 +646,40 @@ <action-widget response="0">closeButton</action-widget> </action-widgets> </object> - <object class="GtkListStore" id="mouseTrackingList"> - <columns> - <!-- column-name gchararray1 --> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">None</col> - </row> - <row> - <col id="0" translatable="yes">Centered</col> - </row> - <row> - <col id="0" translatable="yes">Push</col> - </row> - <row> - <col id="0" translatable="yes">Proportional</col> - </row> - </data> - </object> - <object class="GtkListStore" id="screenPositionList"> + <object class="GtkListStore" id="screen_position_model"> <columns> <!-- column-name positions --> <column type="gchararray"/> - <!-- column-name scale --> - <column type="gdouble"/> + <!-- 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> @@ -835,11 +697,4 @@ <property name="step_increment">1</property> <property name="page_increment">100</property> </object> - <object class="GtkAdjustment" id="xhairsOpacity"> - <property name="lower">0.10000000000000001</property> - <property name="upper">1</property> - <property name="value">0.66000000000000003</property> - <property name="step_increment">0.01</property> - <property name="page_increment">0.10000000000000001</property> - </object> </interface> |