[gtk+] inspector: Add a switch for the layout debug flag



commit 97250ea5e69c75fb4bc3b799858d3d1556b9e478
Author: Matthias Clasen <mclasen redhat com>
Date:   Fri Mar 11 00:17:37 2016 -0500

    inspector: Add a switch for the layout debug flag

 gtk/inspector/visual.c  |   19 +++++++++++++++++++
 gtk/inspector/visual.ui |   35 +++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 0 deletions(-)
---
diff --git a/gtk/inspector/visual.c b/gtk/inspector/visual.c
index ff2467b..2f6a64f 100644
--- a/gtk/inspector/visual.c
+++ b/gtk/inspector/visual.c
@@ -55,6 +55,7 @@ struct _GtkInspectorVisualPrivate
   GtkWidget *rendering_mode_combo;
   GtkWidget *updates_switch;
   GtkWidget *baselines_switch;
+  GtkWidget *layout_switch;
   GtkWidget *touchscreen_switch;
 
   GtkWidget *gl_box;
@@ -165,6 +166,22 @@ baselines_activate (GtkSwitch *sw)
 }
 
 static void
+layout_activate (GtkSwitch *sw)
+{
+  guint flags;
+
+  flags = gtk_get_debug_flags ();
+
+  if (gtk_switch_get_active (sw))
+    flags |= GTK_DEBUG_LAYOUT;
+  else
+    flags &= ~GTK_DEBUG_LAYOUT;
+
+  gtk_set_debug_flags (flags);
+  redraw_everything ();
+}
+
+static void
 pixelcache_activate (GtkSwitch *sw)
 {
   guint flags;
@@ -726,6 +743,7 @@ gtk_inspector_visual_class_init (GtkInspectorVisualClass *klass)
   gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, updates_switch);
   gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, direction_combo);
   gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, baselines_switch);
+  gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, layout_switch);
   gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, theme_combo);
   gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, dark_switch);
   gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorVisual, cursor_combo);
@@ -749,6 +767,7 @@ gtk_inspector_visual_class_init (GtkInspectorVisualClass *klass)
   gtk_widget_class_bind_template_callback (widget_class, direction_changed);
   gtk_widget_class_bind_template_callback (widget_class, rendering_mode_changed);
   gtk_widget_class_bind_template_callback (widget_class, baselines_activate);
+  gtk_widget_class_bind_template_callback (widget_class, layout_activate);
   gtk_widget_class_bind_template_callback (widget_class, pixelcache_activate);
   gtk_widget_class_bind_template_callback (widget_class, widget_resize_activate);
   gtk_widget_class_bind_template_callback (widget_class, software_gl_activate);
diff --git a/gtk/inspector/visual.ui b/gtk/inspector/visual.ui
index 6e62934..1942fa4 100644
--- a/gtk/inspector/visual.ui
+++ b/gtk/inspector/visual.ui
@@ -471,6 +471,40 @@
                         <property name="margin">10</property>
                         <property name="spacing">40</property>
                         <child>
+                          <object class="GtkLabel" id="layout_label">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Show Layout Borders</property>
+                            <property name="halign">start</property>
+                            <property name="valign">baseline</property>
+                            <property name="xalign">0.0</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkSwitch" id="layout_switch">
+                            <property name="visible">True</property>
+                            <property name="halign">end</property>
+                            <property name="valign">baseline</property>
+                            <signal name="notify::active" handler="layout_activate"/>
+                          </object>
+                          <packing>
+                            <property name="expand">True</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </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="pixelcache_label">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">Show Pixel Cache</property>
@@ -735,6 +769,7 @@
       <widget name="rendering_mode_label"/>
       <widget name="updates_label"/>
       <widget name="baselines_label"/>
+      <widget name="layout_label"/>
       <widget name="pixelcache_label"/>
       <widget name="touchscreen_label"/>
       <widget name="gl_label"/>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]