inspector: Add a font button to the visual tab

The font was already settable via the gtk-font-name property
of the settings object, but this this much more convenient.
This commit is contained in:
Matthias Clasen 2014-07-19 19:15:58 -04:00
parent 7f7084f7f5
commit 70e898bc90
2 changed files with 54 additions and 0 deletions

View File

@ -40,6 +40,7 @@ struct _GtkInspectorVisualPrivate
GtkWidget *dark_switch;
GtkWidget *icon_combo;
GtkWidget *direction_combo;
GtkWidget *font_button;
GtkWidget *hidpi_spin;
GtkAdjustment *scale_adjustment;
@ -338,6 +339,14 @@ icons_changed (GtkComboBox *c,
g_free (theme);
}
static void
init_font (GtkInspectorVisual *vis)
{
g_object_bind_property (gtk_settings_get_default (), "gtk-font-name",
vis->priv->font_button, "font-name",
G_BINDING_BIDIRECTIONAL|G_BINDING_SYNC_CREATE);
}
#if defined (GDK_WINDOWING_X11) && defined (HAVE_CAIRO_SURFACE_SET_DEVICE_SCALE)
static void
scale_changed (GtkAdjustment *adjustment, GtkInspectorVisual *vis)
@ -457,6 +466,7 @@ gtk_inspector_visual_init (GtkInspectorVisual *vis)
init_theme (vis);
init_dark (vis);
init_icons (vis);
init_font (vis);
init_scale (vis);
init_touchscreen (vis);
}
@ -497,6 +507,7 @@ gtk_inspector_visual_class_init (GtkInspectorVisualClass *klass)
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, touchscreen_switch);
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, visual_box);
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, debug_box);
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, font_button);
gtk_widget_class_bind_template_callback (widget_class, updates_activate);
gtk_widget_class_bind_template_callback (widget_class, direction_changed);

View File

@ -127,6 +127,39 @@
</child>
</object>
</child>
<child>
<object class="GtkListBoxRow">
<property name="visible">True</property>
<property name="activatable">False</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="orientation">horizontal</property>
<property name="margin">10</property>
<property name="spacing">40</property>
<child>
<object class="GtkLabel" id="font_label">
<property name="visible">True</property>
<property name="label" translatable="yes">Font</property>
<property name="halign">start</property>
<property name="valign">baseline</property>
<property name="xalign">0.0</property>
</object>
</child>
<child>
<object class="GtkFontButton" id="font_button">
<property name="visible">True</property>
<property name="halign">end</property>
<property name="valign">baseline</property>
</object>
<packing>
<property name="expand">True</property>
</packing>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkListBoxRow">
<property name="visible">True</property>
@ -360,6 +393,7 @@
<widget name="theme_label"/>
<widget name="dark_label"/>
<widget name="icon_label"/>
<widget name="font_label"/>
<widget name="direction_label"/>
<widget name="hidpi_label"/>
<widget name="updates_label"/>
@ -368,6 +402,15 @@
<widget name="touchscreen_label"/>
</widgets>
</object>
<object class="GtkSizeGroup">
<property name="mode">horizontal</property>
<widgets>
<widget name="theme_combo"/>
<widget name="icon_combo"/>
<widget name="font_button"/>
<widget name="direction_combo"/>
</widgets>
</object>
<object class="GtkSizeGroup">
<property name="mode">horizontal</property>
<widgets>