Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  shape-editor.ui   Sprache: unbekannt

 
Spracherkennung für: .ui vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

<interface>
  <template class="ShapeEditor" parent="GtkWidget">
    <child>
      <object class="GtkGrid" id="grid">
        <child>
          <object class="GtkExpander" id="expander">
            <property name="hexpand">1</property>
            <property name="valign">center</property>
            <property name="label-widget">
              <object class="GtkBox">
                <child>
                  <object class="GtkImage">
                    <property name="pixel-size">20</property>
                    <property name="paintable" bind-source="ShapeEditor" bind-property="path-image"/>
                    <accessibility>
                      <property name="label" translatable="yes">Path</property>
                    </accessibility>
                  </object>
                </child>
                <child>
                  <object class="GtkEditableLabel" id="id_label">
                    <property name="hexpand">1</property>
                    <property name="xalign">0</property>
                    <signal name="notify::text" handler="id_changed" swapped="yes"/>
                  </object>
                </child>
                <child>
                  <object class="GtkBox">
                    <style><class name="tight"/></style>
                    <child>
                      <object class="GtkButton">
                        <style>
                          <class name="circular"/>
                          <class name="small"/>
                        </style>
                        <property name="focus-on-click">0</property>
                        <property name="has-frame">0</property>
                        <property name="tooltip-text" translatable="yes">Duplicate Element</property>
                        <property name="child">
                          <object class="GtkImage">
                            <property name="paintable">
                              <object class="GtkIconPaintable">
                                <property name="file">resource:///org/gtk/Shaper/plus-symbolic.svg</property>
                              </object>
                            </property>
                          </object>
                        </property>
                        <signal name="clicked" handler="duplicate_shape" swapped="yes"/>
                      </object>
                    </child>
                    <child>
                      <object class="GtkButton" id="move_down">
                        <style>
                          <class name="circular"/>
                          <class name="small"/>
                        </style>
                        <property name="focus-on-click">0</property>
                        <property name="has-frame">0</property>
                        <property name="tooltip-text" translatable="yes">Move Down</property>
                        <property name="child">
                          <object class="GtkImage">
                            <property name="paintable">
                              <object class="GtkIconPaintable">
                                <property name="file">resource:///org/gtk/libgtk/icons/go-down-symbolic.svg</property>
                              </object>
                            </property>
                          </object>
                        </property>
                        <signal name="clicked" handler="move_shape_down" swapped="yes"/>
                      </object>
                    </child>
                    <child>
                      <object class="GtkButton">
                        <style>
                          <class name="circular"/>
                          <class name="small"/>
                        </style>
                        <property name="focus-on-click">0</property>
                        <property name="has-frame">0</property>
                        <property name="tooltip-text" translatable="yes">Delete Element</property>
                        <property name="child">
                          <object class="GtkImage">
                            <property name="paintable">
                              <object class="GtkIconPaintable">
                                <property name="file">resource:///org/gtk/libgtk/icons/user-trash-symbolic.svg</property>
                              </object>
                            </property>
                          </object>
                        </property>
                        <signal name="clicked" handler="delete_shape" swapped="yes"/>
                      </object>
                    </child>
                  </object>
                </child>
              </object>
            </property>
            <layout>
              <property name="row">0</property>
              <property name="column">0</property>
              <property name="column-span">2</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="shape_expander">
            <property name="visible" bind-source="expander" bind-property="expanded" bind-flags="sync-create"/>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel" id="shape_label">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Type</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">shape_dropdown</property>
              </object>
            </property>
            <layout>
              <property name="row">1</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkBox">
            <property name="hexpand">0</property>
            <child>
              <object class="GtkDropDown" id="shape_dropdown">
                <property name="hexpand">1</property>
                <property name="visible" bind-source="expander" bind-property="expanded" bind-flags="sync-create"/>
                <signal name="notify::selected" handler="shape_changed" swapped="yes"/>
                <property name="model">
                  <object class="GtkStringList">
                    <items>
                      <item>Line</item>
                      <item>Polyline</item>
                      <item>Polygon</item>
                      <item>Rectangle</item>
                      <item>Circle</item>
                      <item>Ellipse</item>
                      <item>Path</item>
                      <item>Group</item>
                      <item>Clip Path</item>
                      <item>Mask</item>
                      <item>Definitions</item>
                      <item>Use</item>
                      <item>Linear Gradient</item>
                      <item>Radial Gradient</item>
                      <item>Pattern</item>
                      <item>Marker</item>
                      <item>Text</item>
                      <item>Text Span</item>
                      <item>Svg</item>
                      <item>Image</item>
                      <item>Filter</item>
                      <item>Symbol</item>
                      <item>Switch</item>
                      <item>Link</item>
                    </items>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="GtkButton">
                <style>
                  <class name="flat"/>
                  <class name="circular"/>
                </style>
                <binding name="visible">
                  <closure type="gboolean" function="bb_and_shape_has_children">
                    <lookup name="expanded">expander</lookup>
                    <lookup name="expanded">expander</lookup>
                    <lookup name="update-counter">ShapeEditor</lookup>
                  </closure>
                </binding>
                <property name="icon-name">list-add-symbolic</property>
                <property name="tooltip-text" translatable="yes">Add Element</property>
                <signal name="clicked" handler="add_shape" swapped="yes"/>
              </object>
            </child>
            <layout>
              <property name="row">1</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="line_start_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>0</constant> <!-- line -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Start</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">line_x1</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">2</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>0</constant> <!-- line -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">2</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="line_x1">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="line_y1">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="line_end_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>0</constant> <!-- line -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_End</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">line_x2</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">3</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>0</constant> <!-- line -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">3</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="line_x2">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="line_y2">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="rect_origin_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>3</constant> <!-- rect -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Origin</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">rect_x</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">4</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>3</constant> <!-- rect -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">4</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="rect_x">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="rect_y">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="rect_size_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>3</constant> <!-- rect -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Size</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">rect_width</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">5</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>3</constant> <!-- rect -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">5</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="rect_width">
                <property name="hexpand">1</property>
                <property name="min">0</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="rect_height">
                <property name="hexpand">1</property>
                <property name="min">0</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="rect_radius_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>3</constant> <!-- rect -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Radius</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">rect_rx</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">6</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>3</constant> <!-- rect -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">6</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="rect_rx">
                <property name="hexpand">1</property>
                <property name="min">0</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="rect_ry">
                <property name="hexpand">1</property>
                <property name="min">0</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="circle_center_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>4</constant> <!-- circle -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Center</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">circle_cx</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">7</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>4</constant> <!-- circle -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">7</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="circle_cx">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="circle_cy">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="circle_radius_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>4</constant> <!-- circle -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Radius</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">circle_r</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">8</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="NumberEditor" id="circle_r">
            <property name="min">0</property>
            <signal name="notify::value" handler="shape_changed" swapped="yes"/>
            <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>4</constant> <!-- circle -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <layout>
              <property name="row">8</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="ellipse_center_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>5</constant> <!-- ellipse -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Center</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">ellipse_cx</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">9</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>5</constant> <!-- ellipse -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">9</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="ellipse_cx">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="ellipse_cy">
                <property name="hexpand">1</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="ellipse_radius_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>5</constant> <!-- ellipse -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Radius</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">circle_r</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">10</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>5</constant> <!-- ellipse -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">10</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="NumberEditor" id="ellipse_rx">
                <property name="hexpand">1</property>
                <property name="min">0</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="NumberEditor" id="ellipse_ry">
                <property name="hexpand">1</property>
                <property name="min">0</property>
                <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="poly_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_one_of_two">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>1</constant> <!-- polyline -->
                <constant type='guint'>2</constant> <!-- polygon -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Points</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">circle_r</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">11</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_one_of_two">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>1</constant> <!-- polyline -->
                <constant type='guint'>2</constant> <!-- polygon -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <layout>
              <property name="row">10</property>
              <property name="column">1</property>
            </layout>
            <child>
              <object class="GtkBox" id="polyline_box">
                <property name="orientation">vertical</property>
                <child>
                  <object class="GtkBox">
                    <child>
                      <object class="NumberEditor">
                        <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                        <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
                      </object>
                    </child>
                    <child>
                      <object class="NumberEditor">
                        <signal name="notify::value" handler="shape_changed" swapped="yes"/>
                        <signal name="notify::unit" handler="shape_changed" swapped="yes"/>
                      </object>
                    </child>
                    <child>
                      <object class="GtkButton">
                        <property name="icon-name">user-trash-symbolic</property>
                        <property name="tooltip-text" translatable="yes">Delete Point</property>
                        <signal name="clicked" handler="polyline_delete_row" swapped="no"/>
                      </object>
                    </child>
                  </object>
                </child>
              </object>
            </child>
            <child>
              <object class="GtkButton">
                <property name="valign">start</property>
                <property name="icon-name">list-add-symbolic</property>
                <property name="tooltip-text" translatable="yes">Add Point</property>
                <signal name="clicked" handler="polyline_add_row" swapped="yes"/>
              </object>
            </child>
          </object>
        </child>
        <child>
          <object class="GtkLabel" id="path_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>6</constant> <!-- path -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Path</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">path_editor</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">12</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="PathEditor" id="path_editor">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>6</constant> <!-- path -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <layout>
              <property name="row">12</property>
              <property name="column">1</property>
            </layout>
            <signal name="notify::path" handler="path_changed" swapped="yes"/>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="origin_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_is_graphical">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Origin</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">origin</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">13</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkScale" id="origin">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_is_graphical">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="value-changed" handler="origin_changed" swapped="yes"/>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">0</property>
                <property name="upper">1</property>
                <property name="step-increment">0.1</property>
              </object>
            </property>
            <marks>
              <mark value="0" position="bottom"/>
              <mark value="0.5" position="bottom"/>
              <mark value="1" position="bottom"/>
            </marks>
            <layout>
              <property name="row">13</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkBox" id="children">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_children">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">shape_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="orientation">vertical</property>
            <property name="margin-start">20</property>
            <layout>
              <property name="row">14</property>
              <property name="column">0</property>
              <property name="column-span">2</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="transition_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Transition</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">transition_type</property>
              </object>
            </property>
            <layout>
              <property name="row">15</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="transition_type">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="notify::selected" handler="transition_changed" swapped="yes"/>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>None</item>
                  <item>Animate</item>
                  <item>Morph</item>
                  <item>Fade</item>
                </items>
              </object>
            </property>
            <layout>
              <property name="row">15</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="transition_duration_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transition_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Duration</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">transition_duration</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">16</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkSpinButton" id="transition_duration">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transition_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="value-changed" handler="transition_changed" swapped="yes"/>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">0</property>
                <property name="upper">3000</property>
                <property name="step-increment">1</property>
              </object>
            </property>
            <property name="numeric">1</property>
            <property name="digits">2</property>
            <layout>
              <property name="row">16</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="transition_delay_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transition_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">D_elay</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">transition_delay</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">17</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkSpinButton" id="transition_delay">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transition_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="value-changed" handler="transition_changed" swapped="yes"/>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">-3000</property>
                <property name="upper">3000</property>
                <property name="step-increment">1</property>
              </object>
            </property>
            <property name="numeric">1</property>
            <property name="digits">2</property>
            <layout>
              <property name="row">17</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="transition_easing_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transition_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Easing</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">transition_easing</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">18</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transition_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <child>
              <object class="GtkDropDown" id="transition_easing">
                <property name="valign">center</property>
                <property name="hexpand">1</property>
                <signal name="notify::selected" handler="transition_changed" swapped="yes"/>
                <property name="model">
                  <object class="GtkStringList">
                    <items>
                      <item>Linear</item>
                      <item>Ease-in-out</item>
                      <item>Ease-in</item>
                      <item>Ease-out</item>
                      <item>Ease</item>
                    </items>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="GtkMenuButton">
                <property name="sensitive">0</property>
                <property name="valign">center</property>
                <property name="child">
                  <object class="MiniGraph">
                    <property name="width-request">50</property>
                    <property name="height-request">50</property>
                    <property name="easing" bind-source="transition_easing" bind-property="selected" bind-flags="sync-create"/>
                  </object>
                </property>
              </object>
            </child>
            <layout>
              <property name="row">18</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="animation_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel" id="animation_label">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Animation</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">animation_direction</property>
              </object>
            </property>
            <layout>
              <property name="row">19</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="animation_direction">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="notify::selected" handler="animation_changed" swapped="yes"/>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>None</item>
                  <item>Normal</item>
                  <item>Alternate</item>
                  <item>Reverse</item>
                  <item>Reverse Alternate</item>
                  <item>In-Out</item>
                  <item>In-Out Alternate</item>
                  <item>In-Out Reverse</item>
                  <item>Segment</item>
                  <item>Segment Alternate</item>
                </items>
              </object>
            </property>
            <layout>
              <property name="row">19</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="animation_duration_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Duration</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">animation_duration</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">20</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkSpinButton" id="animation_duration">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="value-changed" handler="animation_changed" swapped="yes"/>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">0</property>
                <property name="upper">3000</property>
                <property name="step-increment">1</property>
              </object>
            </property>
            <property name="numeric">1</property>
            <property name="digits">2</property>
            <layout>
              <property name="row">20</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="animation_repeat_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Repetitions</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">animation_repeat</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">21</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <child>
              <object class="GtkCheckButton" id="infty_check">
                <property name="label">∞</property>
                <accessibility>
                  <property name="label" translatable="yes">Repeat forever</property>
                </accessibility>
                <signal name="notify::active" handler="animation_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="GtkSpinButton" id="animation_repeat">
                <property name="sensitive" bind-source="infty_check" bind-property="active" bind-flags="sync-create | invert-boolean"/>
                <signal name="value-changed" handler="animation_changed" swapped="yes"/>
                <property name="adjustment">
                  <object class="GtkAdjustment">
                    <property name="lower">0</property>
                    <property name="upper">3.402823e+38</property>
                    <property name="step-increment">0.5</property>
                  </object>
                </property>
                <property name="digits">2</property>
              </object>
            </child>
            <layout>
              <property name="row">21</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="animation_easing_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Easing</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">animation_easing</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">22</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <child>
              <object class="GtkDropDown" id="animation_easing">
                <property name="valign">center</property>
                <property name="hexpand">1</property>
                <signal name="notify::selected" handler="animation_changed" swapped="yes"/>
                <property name="model">
                  <object class="GtkStringList">
                    <items>
                      <item>Linear</item>
                      <item>Ease-in-out</item>
                      <item>Ease-in</item>
                      <item>Ease-out</item>
                      <item>Ease</item>
                    </items>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="GtkMenuButton">
                <property name="valign">center</property>
                <property name="child">
                  <object class="MiniGraph" id="mini_graph">
                    <property name="width-request">50</property>
                    <property name="height-request">50</property>
                    <property name="easing" bind-source="animation_easing" bind-property="selected" bind-flags="sync-create"/>
                  </object>
                </property>
              </object>
            </child>
            <layout>
              <property name="row">22</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="animation_segment_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">Segment</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">animation_segment</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">24</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkSpinButton" id="animation_segment">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">animation_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="value-changed" handler="animation_changed" swapped="yes"/>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">0</property>
                <property name="upper">1</property>
                <property name="step-increment">0.1</property>
              </object>
            </property>
            <property name="numeric">1</property>
            <property name="digits">2</property>
            <layout>
              <property name="row">24</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="attach_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel" id="attach_to_label">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Attach</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">attach_to</property>
              </object>
            </property>
            <layout>
              <property name="row">25</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="attach_to">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="notify::selected" handler="attach_changed" swapped="yes"/>
            <layout>
              <property name="row">25</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="attach_at_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">attach_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Position</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">attach_at</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">26</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkScale" id="attach_at">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_gpa">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">attach_expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">0</property>
                <property name="upper">1</property>
                <property name="step-increment">0.1</property>
              </object>
            </property>
            <signal name="value-changed" handler="attach_changed" swapped="yes"/>
            <marks>
              <mark value="0" position="bottom"/>
              <mark value="0.5" position="bottom"/>
              <mark value="1" position="bottom"/>
            </marks>
            <layout>
              <property name="row">26</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="clip_path_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">clip-path</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Clip</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">clip_path_editor</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">27</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="PathEditor" id="clip_path_editor">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">clip-path</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <layout>
              <property name="row">27</property>
              <property name="column">1</property>
            </layout>
            <signal name="notify::path" handler="clip_path_changed" swapped="yes"/>
            <signal name="notify::id" handler="clip_path_changed" swapped="yes"/>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="mask_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">mask</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Mask</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">mask_dropdown</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">28</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="mask_dropdown">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">mask</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <layout>
              <property name="row">28</property>
              <property name="column">1</property>
            </layout>
            <signal name="notify::selected" handler="mask_changed" swapped="yes"/>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="transform_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">transform</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel" id="transform_label">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Transform</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">transform</property>
              </object>
            </property>
            <layout>
              <property name="row">29</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">transform</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <child>
              <object class="GtkEntry" id="transform">
                <property name="hexpand">1</property>
                <signal name="activate" handler="transform_changed" swapped="yes"/>
              </object>
            </child>
            <child>
              <object class="GtkButton">
                <binding name="visible">
                  <closure type="gboolean" function="bb_and_shape_has_attr">
                    <lookup name="expanded">expander</lookup>
                    <lookup name="expanded">transform_expander</lookup>
                    <constant type="gchararray">transform</constant>
                    <lookup name="update-counter">ShapeEditor</lookup>
                  </closure>
                </binding>
                <style>
                  <class name="flat"/>
                  <class name="circular"/>
                </style>
                <property name="icon-name">list-add-symbolic</property>
                <property name="tooltip-text">Add Transform</property>
                <signal name="clicked" handler="add_primitive_transform" swapped="yes"/>
              </object>
            </child>
            <layout>
              <property name="row">29</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkBox" id="transform_box">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">transform_expander</lookup>
                <constant type="gchararray">transform</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="orientation">vertical</property>
            <layout>
              <property name="row">32</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="filter_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">filter</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">1</property>
            <property name="xalign">1</property>
            <property name="label" translatable="yes">_Filter</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">filter</property>
            <layout>
              <property name="row">34</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkEntry" id="filter">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_shape_has_attr">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <constant type="gchararray">filter</constant>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="activate" handler="filter_changed" swapped="yes"/>
            <layout>
              <property name="row">34</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="opacity_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">1</property>
            <property name="xalign">1</property>
            <property name="label" translatable="yes">_Opacity</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">opacity</property>
            <layout>
              <property name="row">35</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="AlphaEditor" id="opacity">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <layout>
              <property name="row">35</property>
              <property name="column">1</property>
            </layout>
            <signal name="notify::alpha" handler="opacity_changed" swapped="yes"/>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="paint_order_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">1</property>
            <property name="xalign">1</property>
            <property name="label" translatable="yes">_Paint order</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">paint_order</property>
            <layout>
              <property name="row">36</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkDropDown" id="paint_order">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <signal name="notify::selected" handler="paint_order_changed" swapped="yes"/>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>Fill, Stroke, Markers</item>
                  <item>Fill, Markers, Stroke</item>
                  <item>Stroke, Fill, Markers</item>
                  <item>Stroke, Markers, Fill</item>
                  <item>Markers, Fill, Stroke</item>
                  <item>Markers, Stroke, Fill</item>
                </items>
              </object>
            </property>
            <layout>
              <property name="row">36</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="fill_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel" id="fill_label">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Fill</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">fill_paint</property>
              </object>
            </property>
            <layout>
              <property name="row">37</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="ColorEditor" id="fill_paint">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">37</property>
              <property name="column">1</property>
            </layout>
            <signal name="notify::symbolic" handler="fill_changed" swapped="yes"/>
            <signal name="notify::color" handler="fill_changed" swapped="yes"/>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="fill_rule_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">fill_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Rule</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">fill_rule</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">38</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="fill_rule">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">fill_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>Winding</item>
                  <item>Even-Odd</item>
                </items>
              </object>
            </property>
            <signal name="notify::selected" handler="fill_changed" swapped="yes"/>
            <layout>
              <property name="row">38</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="stroke_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">10</property>
            <property name="label-widget">
              <object class="GtkLabel">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Stroke</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">stroke_paint</property>
              </object>
            </property>
            <layout>
              <property name="row">39</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="ColorEditor" id="stroke_paint">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <layout>
              <property name="row">39</property>
              <property name="column">1</property>
            </layout>
            <signal name="notify::symbolic" handler="stroke_changed" swapped="yes"/>
            <signal name="notify::color" handler="stroke_changed" swapped="yes"/>
          </object>
        </child>

        <child>
          <object class="GtkExpander" id="width_expander">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">0</property>
            <property name="valign">center</property>
            <property name="margin-start">20</property>
            <property name="label-widget">
              <object class="GtkLabel">
                <property name="hexpand">1</property>
                <property name="xalign">1</property>
                <property name="label" translatable="yes">_Width</property>
                <property name="use-underline">1</property>
                <property name="mnemonic-widget">line_width</property>
              </object>
            </property>
            <layout>
              <property name="row">40</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="NumberEditor" id="line_width">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="min">0</property>
            <signal name="notify::value" handler="stroke_changed" swapped="yes"/>
            <signal name="notify::unit" handler="stroke_changed" swapped="yes"/>
            <layout>
              <property name="row">40</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="line_min_label">
            <binding name="visible">
              <closure type="gboolean" function="bbb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="expanded">width_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Min</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">min_width</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">41</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="NumberEditor" id="min_width">
            <binding name="visible">
              <closure type="gboolean" function="bbb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="expanded">width_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="min">0</property>
            <signal name="notify::value" handler="stroke_changed" swapped="yes"/>
            <signal name="notify::unit" handler="stroke_changed" swapped="yes"/>
            <layout>
              <property name="row">41</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="line_max_label">
            <binding name="visible">
              <closure type="gboolean" function="bbb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="expanded">width_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">Ma_x</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">max_width</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">42</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="NumberEditor" id="max_width">
            <binding name="visible">
              <closure type="gboolean" function="bbb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="expanded">width_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="min">0</property>
            <signal name="notify::value" handler="stroke_changed" swapped="yes"/>
            <signal name="notify::unit" handler="stroke_changed" swapped="yes"/>
            <layout>
              <property name="row">42</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="line_join_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Join</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">line_join</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">43</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="line_join">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>Miter</item>
                  <item>Round</item>
                  <item>Bevel</item>
                </items>
              </object>
            </property>
            <signal name="notify::selected" handler="stroke_changed" swapped="yes"/>
            <layout>
              <property name="row">43</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="line_cap_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Cap</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">line_cap</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">44</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="line_cap">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>Butt</item>
                  <item>Round</item>
                  <item>Square</item>
                </items>
              </object>
            </property>
            <signal name="notify::selected" handler="stroke_changed" swapped="yes"/>
            <layout>
              <property name="row">44</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="miter_limit_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Miter limit</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">miter_limit</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">45</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkScale" id="miter_limit">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_unequal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">stroke_expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">10</constant> <!-- defs -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="adjustment">
              <object class="GtkAdjustment">
                <property name="lower">0</property>
                <property name="upper">25</property>
                <property name="value">4</property>
                <property name="step-increment">0.1</property>
                <property name="page-size">0</property>
              </object>
            </property>
            <signal name="notify::value" handler="stroke_changed" swapped="yes"/>
            <layout>
              <property name="row">45</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkLabel" id="mask_type_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">9</constant> <!-- mask -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Mask Type</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">mask_type</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">46</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkDropDown" id="mask_type">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type="guint">9</constant> <!-- mask -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="model">
              <object class="GtkStringList">
                <items>
                  <item>Luminance</item>
                  <item>Alpha</item>
                </items>
              </object>
            </property>
            <signal name="notify::selected" handler="mask_type_changed" swapped="yes"/>
            <layout>
              <property name="row">46</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="href_label">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>23</constant> <!-- a -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_URL</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">href_entry</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">49</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkEntry" id="href_entry">
            <binding name="visible">
              <closure type="gboolean" function="bb_and_uint_equal">
                <lookup name="expanded">expander</lookup>
                <lookup name="expanded">expander</lookup>
                <lookup name="selected">shape_dropdown</lookup>
                <constant type='guint'>23</constant> <!-- a -->
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">1</property>
            <signal name="activate" handler="href_changed" swapped="yes"/>
            <layout>
              <property name="row">49</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="class_label">
            <binding name="visible">
              <closure type="gboolean" function="bool_and_edit">
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Classes</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">class_entry</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">47</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkEntry" id="class_entry">
            <binding name="visible">
              <closure type="gboolean" function="bool_and_edit">
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">1</property>
            <signal name="activate" handler="class_changed" swapped="yes"/>
            <layout>
              <property name="row">47</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="style_label">
            <binding name="visible">
              <closure type="gboolean" function="bool_and_edit">
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">_Style</property>
            <property name="use-underline">1</property>
            <property name="mnemonic-widget">style_entry</property>
            <property name="xalign">1</property>
            <layout>
              <property name="row">48</property>
              <property name="column">0</property>
            </layout>
          </object>
        </child>
        <child>
          <object class="GtkEntry" id="style_entry">
            <binding name="visible">
              <closure type="gboolean" function="bool_and_edit">
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="hexpand">1</property>
            <signal name="activate" handler="style_changed" swapped="yes"/>
            <layout>
              <property name="row">48</property>
              <property name="column">1</property>
            </layout>
          </object>
        </child>

        <child>
          <object class="GtkLabel" id="no_edit">
            <binding name="visible">
              <closure type="gboolean" function="bool_and_no_edit">
                <lookup name="expanded">expander</lookup>
                <lookup name="update-counter">ShapeEditor</lookup>
              </closure>
            </binding>
            <property name="label" translatable="yes">Not editable</property>
            <property name="attributes">style italic</property>
            <property name="margin-top">20</property>
            <property name="margin-bottom">20</property>
            <layout>
              <property name="row">100</property>
              <property name="column">0</property>
              <property name="column-span">2</property>
            </layout>
          </object>
        </child>

      </object>
    </child>
  </template>
  <object class="GtkSizeGroup" id="sg">
    <widgets>
      <widget name="shape_expander"/>
      <widget name="line_start_label"/>
      <widget name="line_end_label"/>
      <widget name="circle_center_label"/>
      <widget name="circle_radius_label"/>
      <widget name="ellipse_center_label"/>
      <widget name="ellipse_radius_label"/>
      <widget name="path_label"/>
      <widget name="origin_label"/>
      <widget name="transition_expander"/>
      <widget name="transition_duration_label"/>
      <widget name="transition_delay_label"/>
      <widget name="transition_easing_label"/>
      <widget name="animation_expander"/>
      <widget name="animation_duration_label"/>
      <widget name="animation_repeat_label"/>
      <widget name="animation_easing_label"/>
      <widget name="animation_segment_label"/>
      <widget name="paint_order_label"/>
      <widget name="clip_path_label"/>
      <widget name="opacity_label"/>
      <widget name="transform_expander"/>
      <widget name="filter_label"/>
      <widget name="stroke_expander"/>
      <widget name="width_expander"/>
      <widget name="line_min_label"/>
      <widget name="line_max_label"/>
      <widget name="line_join_label"/>
      <widget name="line_cap_label"/>
      <widget name="miter_limit_label"/>
      <widget name="fill_expander"/>
      <widget name="fill_rule_label"/>
      <widget name="attach_expander"/>
      <widget name="attach_at_label"/>
      <widget name="mask_label"/>
      <widget name="mask_type_label"/>
      <widget name="class_label"/>
    </widgets>
  </object>
</interface>

[Dauer der Verarbeitung: 0.62 Sekunden, vorverarbeitet 2026-07-02]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik