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
This commit is contained in:
parent
cda48dbf6b
commit
2d6161d45b
2 changed files with 565 additions and 53 deletions
|
@ -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 */
|
||||
|
||||
|
@ -337,6 +357,90 @@ static void xhairs_length_add_marks (GtkScale *scale)
|
|||
gtk_scale_add_mark (scale, length, GTK_POS_BOTTOM, C_("Distance", "Long"));
|
||||
}
|
||||
|
||||
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)
|
||||
{
|
||||
|
@ -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");
|
||||
|
||||
|
|
|
@ -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>
|
||||
|
|
Loading…
Add table
Reference in a new issue