<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Adw" version="1"/>
  <include name="Gtk" version="4.0"/>
  <package name="libpanel-1"/>
  <c:include name="libpanel.h"/>
  <namespace name="Panel"
             version="1"
             shared-library="libpanel-1.so.0.0"
             c:identifier-prefixes="Panel"
             c:symbol-prefixes="panel">
    <enumeration name="Area"
                 glib:type-name="PanelArea"
                 glib:get-type="panel_area_get_type"
                 c:type="PanelArea">
      <member name="start"
              value="0"
              c:identifier="PANEL_AREA_START"
              glib:nick="start"
              glib:name="PANEL_AREA_START">
      </member>
      <member name="end"
              value="1"
              c:identifier="PANEL_AREA_END"
              glib:nick="end"
              glib:name="PANEL_AREA_END">
      </member>
      <member name="top"
              value="2"
              c:identifier="PANEL_AREA_TOP"
              glib:nick="top"
              glib:name="PANEL_AREA_TOP">
      </member>
      <member name="bottom"
              value="3"
              c:identifier="PANEL_AREA_BOTTOM"
              glib:nick="bottom"
              glib:name="PANEL_AREA_BOTTOM">
      </member>
      <member name="center"
              value="4"
              c:identifier="PANEL_AREA_CENTER"
              glib:nick="center"
              glib:name="PANEL_AREA_CENTER">
      </member>
    </enumeration>
    <function-macro name="CHECK_VERSION"
                    c:identifier="PANEL_CHECK_VERSION"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="src/panel-version.h"
           line="84">Compile-time version checking. Evaluates to %TRUE if the version
of libpanel is greater than the required one.</doc>
      <source-position filename="src/panel-version.h" line="92"/>
      <parameters>
        <parameter name="major">
          <doc xml:space="preserve"
               filename="src/panel-version.h"
               line="86">required major version</doc>
        </parameter>
        <parameter name="minor">
          <doc xml:space="preserve"
               filename="src/panel-version.h"
               line="87">required minor version</doc>
        </parameter>
        <parameter name="micro">
          <doc xml:space="preserve"
               filename="src/panel-version.h"
               line="88">required micro version</doc>
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DEPRECATED_FOR"
                    c:identifier="PANEL_DEPRECATED_FOR"
                    introspectable="0">
      <source-position filename="src/panel-version-macros.h" line="33"/>
      <parameters>
        <parameter name="f">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DEPRECATED_IN_1_0_FOR"
                    c:identifier="PANEL_DEPRECATED_IN_1_0_FOR"
                    introspectable="0">
      <source-position filename="src/panel-version-macros.h" line="112"/>
      <parameters>
        <parameter name="f">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Dock"
           c:symbol-prefix="dock"
           c:type="PanelDock"
           parent="Gtk.Widget"
           glib:type-name="PanelDock"
           glib:get-type="panel_dock_get_type"
           glib:type-struct="DockClass">
      <source-position filename="src/panel-dock.h" line="42"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_dock_new">
        <source-position filename="src/panel-dock.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="panel_drag_begin">
        <source-position filename="src/panel-dock.h" line="38"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="panel_drag_end">
        <source-position filename="src/panel-dock.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="foreach_frame" c:identifier="panel_dock_foreach_frame">
        <doc xml:space="preserve"
             filename="src/panel-dock.c"
             line="1229">Invokes a callback for each frame in the dock.</doc>
        <source-position filename="src/panel-dock.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-dock.c"
                 line="1231">a #PanelDock</doc>
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     scope="call"
                     closure="1">
            <doc xml:space="preserve"
                 filename="src/panel-dock.c"
                 line="1232">a function to be called on each frame</doc>
            <type name="FrameCallback" c:type="PanelFrameCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     closure="0">
            <doc xml:space="preserve"
                 filename="src/panel-dock.c"
                 line="1233">data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_can_reveal_area"
              c:identifier="panel_dock_get_can_reveal_area">
        <source-position filename="src/panel-dock.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="area" transfer-ownership="none">
            <type name="Area" c:type="PanelArea"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_can_reveal_bottom"
              c:identifier="panel_dock_get_can_reveal_bottom"
              glib:get-property="can-reveal-bottom">
        <source-position filename="src/panel-dock.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_can_reveal_end"
              c:identifier="panel_dock_get_can_reveal_end"
              glib:get-property="can-reveal-end">
        <source-position filename="src/panel-dock.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_can_reveal_start"
              c:identifier="panel_dock_get_can_reveal_start"
              glib:get-property="can-reveal-start">
        <source-position filename="src/panel-dock.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_can_reveal_top"
              c:identifier="panel_dock_get_can_reveal_top"
              glib:get-property="can-reveal-top">
        <source-position filename="src/panel-dock.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reveal_area" c:identifier="panel_dock_get_reveal_area">
        <source-position filename="src/panel-dock.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="area" transfer-ownership="none">
            <type name="Area" c:type="PanelArea"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_reveal_bottom"
              c:identifier="panel_dock_get_reveal_bottom"
              glib:get-property="reveal-bottom">
        <source-position filename="src/panel-dock.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reveal_end"
              c:identifier="panel_dock_get_reveal_end"
              glib:get-property="reveal-end">
        <source-position filename="src/panel-dock.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reveal_start"
              c:identifier="panel_dock_get_reveal_start"
              glib:get-property="reveal-start">
        <source-position filename="src/panel-dock.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reveal_top"
              c:identifier="panel_dock_get_reveal_top"
              glib:get-property="reveal-top">
        <source-position filename="src/panel-dock.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="panel_dock_remove">
        <source-position filename="src/panel-dock.h" line="101"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_bottom_height"
              c:identifier="panel_dock_set_bottom_height"
              glib:set-property="bottom-height">
        <source-position filename="src/panel-dock.h" line="94"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_end_width"
              c:identifier="panel_dock_set_end_width"
              glib:set-property="end-width">
        <source-position filename="src/panel-dock.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reveal_area" c:identifier="panel_dock_set_reveal_area">
        <source-position filename="src/panel-dock.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="area" transfer-ownership="none">
            <type name="Area" c:type="PanelArea"/>
          </parameter>
          <parameter name="reveal" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reveal_bottom"
              c:identifier="panel_dock_set_reveal_bottom"
              glib:set-property="reveal-bottom">
        <source-position filename="src/panel-dock.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="reveal_bottom" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reveal_end"
              c:identifier="panel_dock_set_reveal_end"
              glib:set-property="reveal-end">
        <source-position filename="src/panel-dock.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="reveal_end" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reveal_start"
              c:identifier="panel_dock_set_reveal_start"
              glib:set-property="reveal-start">
        <source-position filename="src/panel-dock.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="reveal_start" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reveal_top"
              c:identifier="panel_dock_set_reveal_top"
              glib:set-property="reveal-top">
        <source-position filename="src/panel-dock.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="reveal_top" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_start_width"
              c:identifier="panel_dock_set_start_width"
              glib:set-property="start-width">
        <source-position filename="src/panel-dock.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_top_height"
              c:identifier="panel_dock_set_top_height"
              glib:set-property="top-height">
        <source-position filename="src/panel-dock.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </instance-parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <property name="bottom-height"
                writable="1"
                transfer-ownership="none"
                setter="set_bottom_height">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="can-reveal-bottom"
                transfer-ownership="none"
                getter="get_can_reveal_bottom">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="can-reveal-end"
                transfer-ownership="none"
                getter="get_can_reveal_end">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="can-reveal-start"
                transfer-ownership="none"
                getter="get_can_reveal_start">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="can-reveal-top"
                transfer-ownership="none"
                getter="get_can_reveal_top">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="end-width"
                writable="1"
                transfer-ownership="none"
                setter="set_end_width">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="reveal-bottom"
                writable="1"
                transfer-ownership="none"
                setter="set_reveal_bottom"
                getter="get_reveal_bottom">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="reveal-end"
                writable="1"
                transfer-ownership="none"
                setter="set_reveal_end"
                getter="get_reveal_end">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="reveal-start"
                writable="1"
                transfer-ownership="none"
                setter="set_reveal_start"
                getter="get_reveal_start">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="reveal-top"
                writable="1"
                transfer-ownership="none"
                setter="set_reveal_top"
                getter="get_reveal_top">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="start-width"
                writable="1"
                transfer-ownership="none"
                setter="set_start_width">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="top-height"
                writable="1"
                transfer-ownership="none"
                setter="set_top_height">
        <type name="gint" c:type="gint"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
      <glib:signal name="panel-drag-begin" when="last">
        <doc xml:space="preserve"
             filename="src/panel-dock.c"
             line="514">This signal is emitted when dragging of a panel begins.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="panel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-dock.c"
                 line="517">a #PanelWidget</doc>
            <type name="Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="panel-drag-end" when="last">
        <doc xml:space="preserve"
             filename="src/panel-dock.c"
             line="529">This signal is emitted when dragging of a panel either
completes or was cancelled.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="panel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-dock.c"
                 line="532">a #PanelWidget</doc>
            <type name="Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="DockClass"
            c:type="PanelDockClass"
            glib:is-gtype-struct-for="Dock">
      <source-position filename="src/panel-dock.h" line="42"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="panel_drag_begin">
        <callback name="panel_drag_begin">
          <source-position filename="src/panel-dock.h" line="38"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="Dock" c:type="PanelDock*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <type name="Widget" c:type="PanelWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="panel_drag_end">
        <callback name="panel_drag_end">
          <source-position filename="src/panel-dock.h" line="40"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="Dock" c:type="PanelDock*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <type name="Widget" c:type="PanelWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <function-macro name="ENCODE_VERSION"
                    c:identifier="PANEL_ENCODE_VERSION"
                    introspectable="0">
      <source-position filename="src/panel-version.h" line="72"/>
      <parameters>
        <parameter name="major">
        </parameter>
        <parameter name="minor">
        </parameter>
        <parameter name="micro">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Frame"
           c:symbol-prefix="frame"
           c:type="PanelFrame"
           parent="Gtk.Widget"
           glib:type-name="PanelFrame"
           glib:get-type="panel_frame_get_type"
           glib:type-struct="FrameClass">
      <source-position filename="src/panel-frame.h" line="40"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="panel_frame_new">
        <source-position filename="src/panel-frame.h" line="43"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="add" c:identifier="panel_frame_add">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="937">Adds a widget to the frame.</doc>
        <source-position filename="src/panel-frame.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="939">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="panel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="940">a widget to add</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_before" c:identifier="panel_frame_add_before">
        <source-position filename="src/panel-frame.h" line="57"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="panel" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
          <parameter name="sibling" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_closeable"
              c:identifier="panel_frame_get_closeable"
              glib:get-property="closeable">
        <source-position filename="src/panel-frame.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_empty"
              c:identifier="panel_frame_get_empty"
              glib:get-property="empty">
        <source-position filename="src/panel-frame.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_header" c:identifier="panel_frame_get_header">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1061">Gets the header for the frame.</doc>
        <source-position filename="src/panel-frame.h" line="47"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-frame.c"
               line="1067">a #PanelFrameHeader or %NULL</doc>
          <type name="FrameHeader" c:type="PanelFrameHeader*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1063">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_pages" c:identifier="panel_frame_get_n_pages">
        <source-position filename="src/panel-frame.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_page" c:identifier="panel_frame_get_page">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1195">Gets the page with the given index, if any.</doc>
        <source-position filename="src/panel-frame.h" line="69"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-frame.c"
               line="1202">a #PanelWidget or %NULL</doc>
          <type name="Widget" c:type="PanelWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1197">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="n" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1198">the index of the page</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_pages" c:identifier="panel_frame_get_pages">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1127">Get the pages for the frame.</doc>
        <source-position filename="src/panel-frame.h" line="72"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-frame.c"
               line="1133">a #GtkSelectionModel</doc>
          <type name="Gtk.SelectionModel" c:type="GtkSelectionModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1129">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_placeholder"
              c:identifier="panel_frame_get_placeholder"
              glib:get-property="placeholder">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1220">Gets the placeholder widget, if any.</doc>
        <source-position filename="src/panel-frame.h" line="76"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-frame.c"
               line="1226">a #GtkWidget or %NULL</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1222">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_position" c:identifier="panel_frame_get_position">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1373">Gets the #PanelPosition for the frame.</doc>
        <source-position filename="src/panel-frame.h" line="81"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-frame.c"
               line="1379">a #PanelPosition</doc>
          <type name="Position" c:type="PanelPosition*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1375">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_requested_size"
              c:identifier="panel_frame_get_requested_size">
        <source-position filename="src/panel-frame.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_visible_child"
              c:identifier="panel_frame_get_visible_child"
              glib:get-property="visible-child">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1009">Gets the widget of the currently visible child.</doc>
        <source-position filename="src/panel-frame.h" line="67"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-frame.c"
               line="1015">a #PanelWidget or %NULL</doc>
          <type name="Widget" c:type="PanelWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1011">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="panel_frame_remove">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="951">Removes a widget from the frame.</doc>
        <source-position filename="src/panel-frame.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="953">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="panel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="954">a widget to add</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_header" c:identifier="panel_frame_set_header">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1080">Sets the header for the frame, such as a #PanelFrameSwitcher.</doc>
        <source-position filename="src/panel-frame.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1082">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="header"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1083">a #PanelFrameHeader</doc>
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_placeholder"
              c:identifier="panel_frame_set_placeholder"
              glib:set-property="placeholder">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1238">Sets the placeholder widget for the frame.

The placeholder widget is displayed when there are no pages
to display in the frame.</doc>
        <source-position filename="src/panel-frame.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1240">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="placeholder"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1241">a #GtkWidget or %NULL</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_requested_size"
              c:identifier="panel_frame_set_requested_size">
        <source-position filename="src/panel-frame.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="requested_size" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_visible_child"
              c:identifier="panel_frame_set_visible_child"
              glib:set-property="visible-child">
        <doc xml:space="preserve"
             filename="src/panel-frame.c"
             line="1030">Sets the current page to the child specified in @widget.</doc>
        <source-position filename="src/panel-frame.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1032">a #PanelFrame</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame.c"
                 line="1033">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <property name="closeable"
                transfer-ownership="none"
                getter="get_closeable">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="empty" transfer-ownership="none" getter="get_empty">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="placeholder"
                writable="1"
                transfer-ownership="none"
                setter="set_placeholder"
                getter="get_placeholder">
        <type name="Gtk.Widget"/>
      </property>
      <property name="visible-child"
                writable="1"
                transfer-ownership="none"
                setter="set_visible_child"
                getter="get_visible_child">
        <type name="Widget"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
    </class>
    <callback name="FrameCallback" c:type="PanelFrameCallback">
      <source-position filename="src/panel-types.h" line="56"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="frame" transfer-ownership="none">
          <type name="Frame" c:type="PanelFrame*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="FrameClass"
            c:type="PanelFrameClass"
            glib:is-gtype-struct-for="Frame">
      <source-position filename="src/panel-frame.h" line="40"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="8">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
    </record>
    <interface name="FrameHeader"
               c:symbol-prefix="frame_header"
               c:type="PanelFrameHeader"
               glib:type-name="PanelFrameHeader"
               glib:get-type="panel_frame_header_get_type"
               glib:type-struct="FrameHeaderInterface">
      <source-position filename="src/panel-frame-header.h" line="50"/>
      <prerequisite name="Gtk.Widget"/>
      <virtual-method name="add_prefix" invoker="add_prefix">
        <source-position filename="src/panel-frame-header.h" line="44"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="add_suffix" invoker="add_suffix">
        <source-position filename="src/panel-frame-header.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="can_drop" invoker="can_drop">
        <source-position filename="src/panel-frame-header.h" line="42"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="page_changed" invoker="page_changed">
        <doc xml:space="preserve"
             filename="src/panel-frame-header.c"
             line="102">Notifies the header that the visible page has changed.</doc>
        <source-position filename="src/panel-frame-header.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="104">a #PanelFrameHeader</doc>
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="widget"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="105">a #PanelWidget or %NULL if no page is visible</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="add_prefix" c:identifier="panel_frame_header_add_prefix">
        <source-position filename="src/panel-frame-header.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_suffix" c:identifier="panel_frame_header_add_suffix">
        <source-position filename="src/panel-frame-header.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="can_drop" c:identifier="panel_frame_header_can_drop">
        <source-position filename="src/panel-frame-header.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_frame"
              c:identifier="panel_frame_header_get_frame"
              glib:get-property="frame">
        <doc xml:space="preserve"
             filename="src/panel-frame-header.c"
             line="64">Gets the frame the header is attached to.</doc>
        <source-position filename="src/panel-frame-header.h" line="53"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-frame-header.c"
               line="70">a #PanelFrame or %NULL</doc>
          <type name="Frame" c:type="PanelFrame*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="66">a #PanelFrameHeader</doc>
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="page_changed"
              c:identifier="panel_frame_header_page_changed">
        <doc xml:space="preserve"
             filename="src/panel-frame-header.c"
             line="102">Notifies the header that the visible page has changed.</doc>
        <source-position filename="src/panel-frame-header.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="104">a #PanelFrameHeader</doc>
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="widget"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="105">a #PanelWidget or %NULL if no page is visible</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_frame"
              c:identifier="panel_frame_header_set_frame"
              glib:set-property="frame">
        <doc xml:space="preserve"
             filename="src/panel-frame-header.c"
             line="45">Sets the frame the header is attached to.</doc>
        <source-position filename="src/panel-frame-header.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="47">a #PanelFrameHeader</doc>
            <type name="FrameHeader" c:type="PanelFrameHeader*"/>
          </instance-parameter>
          <parameter name="frame"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header.c"
                 line="48">a #PanelFrame or %NULL</doc>
            <type name="Frame" c:type="PanelFrame*"/>
          </parameter>
        </parameters>
      </method>
      <property name="frame"
                writable="1"
                transfer-ownership="none"
                setter="set_frame"
                getter="get_frame">
        <doc xml:space="preserve"
             filename="src/panel-frame-header.c"
             line="32">The frame the header is attached to, or %NULL.</doc>
        <type name="Frame"/>
      </property>
    </interface>
    <class name="FrameHeaderBar"
           c:symbol-prefix="frame_header_bar"
           c:type="PanelFrameHeaderBar"
           parent="Gtk.Widget"
           glib:type-name="PanelFrameHeaderBar"
           glib:get-type="panel_frame_header_bar_get_type"
           glib:type-struct="FrameHeaderBarClass">
      <source-position filename="src/panel-frame-header-bar.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="FrameHeader"/>
      <constructor name="new" c:identifier="panel_frame_header_bar_new">
        <doc xml:space="preserve"
             filename="src/panel-frame-header-bar.c"
             line="81">Create a new #PanelFrameHeaderBar.</doc>
        <source-position filename="src/panel-frame-header-bar.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-frame-header-bar.c"
               line="86">a newly created #PanelFrameHeaderBar</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_menu_popover"
              c:identifier="panel_frame_header_bar_get_menu_popover">
        <doc xml:space="preserve"
             filename="src/panel-frame-header-bar.c"
             line="562">Gets the menu popover attached to this menubar.</doc>
        <source-position filename="src/panel-frame-header-bar.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-frame-header-bar.c"
               line="568">a #GtkPopoverMenu</doc>
          <type name="Gtk.PopoverMenu" c:type="GtkPopoverMenu*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-frame-header-bar.c"
                 line="564">a #PanelFrameHeaderBar</doc>
            <type name="FrameHeaderBar" c:type="PanelFrameHeaderBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_show_icon"
              c:identifier="panel_frame_header_bar_get_show_icon"
              glib:get-property="show-icon">
        <source-position filename="src/panel-frame-header-bar.h" line="39"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeaderBar" c:type="PanelFrameHeaderBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_show_icon"
              c:identifier="panel_frame_header_bar_set_show_icon"
              glib:set-property="show-icon">
        <source-position filename="src/panel-frame-header-bar.h" line="41"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameHeaderBar" c:type="PanelFrameHeaderBar*"/>
          </instance-parameter>
          <parameter name="show_icon" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="show-icon"
                writable="1"
                transfer-ownership="none"
                setter="set_show_icon"
                getter="get_show_icon">
        <type name="gboolean" c:type="gboolean"/>
      </property>
    </class>
    <record name="FrameHeaderBarClass"
            c:type="PanelFrameHeaderBarClass"
            glib:is-gtype-struct-for="FrameHeaderBar">
      <source-position filename="src/panel-frame-header-bar.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <record name="FrameHeaderInterface"
            c:type="PanelFrameHeaderInterface"
            glib:is-gtype-struct-for="FrameHeader">
      <source-position filename="src/panel-frame-header.h" line="50"/>
      <field name="parent_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="page_changed">
        <callback name="page_changed">
          <source-position filename="src/panel-frame-header.h" line="40"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/panel-frame-header.c"
                   line="104">a #PanelFrameHeader</doc>
              <type name="FrameHeader" c:type="PanelFrameHeader*"/>
            </parameter>
            <parameter name="widget"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="src/panel-frame-header.c"
                   line="105">a #PanelWidget or %NULL if no page is visible</doc>
              <type name="Widget" c:type="PanelWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="can_drop">
        <callback name="can_drop">
          <source-position filename="src/panel-frame-header.h" line="42"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="FrameHeader" c:type="PanelFrameHeader*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <type name="Widget" c:type="PanelWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="add_prefix">
        <callback name="add_prefix">
          <source-position filename="src/panel-frame-header.h" line="44"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="FrameHeader" c:type="PanelFrameHeader*"/>
            </parameter>
            <parameter name="priority" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
            <parameter name="child" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="add_suffix">
        <callback name="add_suffix">
          <source-position filename="src/panel-frame-header.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="FrameHeader" c:type="PanelFrameHeader*"/>
            </parameter>
            <parameter name="priority" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
            <parameter name="child" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="FrameSwitcher"
           c:symbol-prefix="frame_switcher"
           c:type="PanelFrameSwitcher"
           parent="Gtk.Widget"
           glib:type-name="PanelFrameSwitcher"
           glib:get-type="panel_frame_switcher_get_type"
           glib:type-struct="FrameSwitcherClass">
      <doc xml:space="preserve"
           filename="src/panel-frame-switcher.c"
           line="29">The `PanelFrameSwitcher` shows a row of buttons to switch between `GtkStack`
pages.</doc>
      <source-position filename="src/panel-frame-switcher.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Orientable"/>
      <implements name="FrameHeader"/>
      <constructor name="new" c:identifier="panel_frame_switcher_new">
        <doc xml:space="preserve"
             filename="src/panel-frame-switcher.c"
             line="896">Create a new `PanelFrameSwitcher`.</doc>
        <source-position filename="src/panel-frame-switcher.h" line="35"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-frame-switcher.c"
               line="901">a new `PanelFrameSwitcher`.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
    </class>
    <record name="FrameSwitcherClass"
            c:type="PanelFrameSwitcherClass"
            glib:is-gtype-struct-for="FrameSwitcher">
      <source-position filename="src/panel-frame-switcher.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <class name="FrameTabBar"
           c:symbol-prefix="frame_tab_bar"
           c:type="PanelFrameTabBar"
           parent="Gtk.Widget"
           glib:type-name="PanelFrameTabBar"
           glib:get-type="panel_frame_tab_bar_get_type"
           glib:type-struct="FrameTabBarClass">
      <source-position filename="src/panel-frame-tab-bar.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="FrameHeader"/>
      <constructor name="new" c:identifier="panel_frame_tab_bar_new">
        <doc xml:space="preserve"
             filename="src/panel-frame-tab-bar.c"
             line="67">Create a new #PanelFrameTabBar.</doc>
        <source-position filename="src/panel-frame-tab-bar.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-frame-tab-bar.c"
               line="72">a newly created #PanelFrameTabBar</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_autohide"
              c:identifier="panel_frame_tab_bar_get_autohide"
              glib:get-property="autohide">
        <source-position filename="src/panel-frame-tab-bar.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameTabBar" c:type="PanelFrameTabBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_expand_tabs"
              c:identifier="panel_frame_tab_bar_get_expand_tabs"
              glib:get-property="expand-tabs">
        <source-position filename="src/panel-frame-tab-bar.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameTabBar" c:type="PanelFrameTabBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_inverted"
              c:identifier="panel_frame_tab_bar_get_inverted"
              glib:get-property="inverted">
        <source-position filename="src/panel-frame-tab-bar.h" line="42"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameTabBar" c:type="PanelFrameTabBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_autohide"
              c:identifier="panel_frame_tab_bar_set_autohide"
              glib:set-property="autohide">
        <source-position filename="src/panel-frame-tab-bar.h" line="39"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameTabBar" c:type="PanelFrameTabBar*"/>
          </instance-parameter>
          <parameter name="autohide" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_expand_tabs"
              c:identifier="panel_frame_tab_bar_set_expand_tabs"
              glib:set-property="expand-tabs">
        <source-position filename="src/panel-frame-tab-bar.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameTabBar" c:type="PanelFrameTabBar*"/>
          </instance-parameter>
          <parameter name="expand_tabs" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_inverted"
              c:identifier="panel_frame_tab_bar_set_inverted"
              glib:set-property="inverted">
        <source-position filename="src/panel-frame-tab-bar.h" line="44"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="FrameTabBar" c:type="PanelFrameTabBar*"/>
          </instance-parameter>
          <parameter name="inverted" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="autohide"
                writable="1"
                transfer-ownership="none"
                setter="set_autohide"
                getter="get_autohide">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="expand-tabs"
                writable="1"
                transfer-ownership="none"
                setter="set_expand_tabs"
                getter="get_expand_tabs">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="inverted"
                writable="1"
                transfer-ownership="none"
                setter="set_inverted"
                getter="get_inverted">
        <type name="gboolean" c:type="gboolean"/>
      </property>
    </class>
    <record name="FrameTabBarClass"
            c:type="PanelFrameTabBarClass"
            glib:is-gtype-struct-for="FrameTabBar">
      <source-position filename="src/panel-frame-tab-bar.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <class name="Grid"
           c:symbol-prefix="grid"
           c:type="PanelGrid"
           parent="Gtk.Widget"
           glib:type-name="PanelGrid"
           glib:get-type="panel_grid_get_type"
           glib:type-struct="GridClass">
      <source-position filename="src/panel-grid.h" line="42"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_grid_new">
        <doc xml:space="preserve"
             filename="src/panel-grid.c"
             line="53">Create a new #PanelGrid.</doc>
        <source-position filename="src/panel-grid.h" line="45"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-grid.c"
               line="58">a newly created #PanelGrid</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="create_frame" introspectable="0">
        <source-position filename="src/panel-grid.h" line="38"/>
        <return-value>
          <type name="Frame" c:type="PanelFrame*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="add" c:identifier="panel_grid_add">
        <source-position filename="src/panel-grid.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="agree_to_close_async"
              c:identifier="panel_grid_agree_to_close_async">
        <source-position filename="src/panel-grid.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="agree_to_close_finish"
              c:identifier="panel_grid_agree_to_close_finish"
              throws="1">
        <source-position filename="src/panel-grid.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="foreach_frame" c:identifier="panel_grid_foreach_frame">
        <doc xml:space="preserve"
             filename="src/panel-grid.c"
             line="736">Calls @callback for each #PanelFrame within @grid.</doc>
        <source-position filename="src/panel-grid.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="738">a #PanelGrid</doc>
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     scope="call"
                     closure="1">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="739">a #PanelFrameCallback</doc>
            <type name="FrameCallback" c:type="PanelFrameCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="740">closure data for @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_column" c:identifier="panel_grid_get_column">
        <doc xml:space="preserve"
             filename="src/panel-grid.c"
             line="439">Gets the #PanelGridColumn for a column index.</doc>
        <source-position filename="src/panel-grid.h" line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-grid.c"
               line="446">a #PanelGridColumn</doc>
          <type name="GridColumn" c:type="PanelGridColumn*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="441">a #PanelGrid</doc>
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
          <parameter name="column" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="442">a column index</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_most_recent_column"
              c:identifier="panel_grid_get_most_recent_column">
        <doc xml:space="preserve"
             filename="src/panel-grid.c"
             line="245">Gets the most recently acive column on a grid.</doc>
        <source-position filename="src/panel-grid.h" line="47"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-grid.c"
               line="251">a #PanelGridColumn</doc>
          <type name="GridColumn" c:type="PanelGridColumn*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="247">a #PanelGrid</doc>
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_most_recent_frame"
              c:identifier="panel_grid_get_most_recent_frame">
        <doc xml:space="preserve"
             filename="src/panel-grid.c"
             line="280">Gets the most recently acive frame on a grid.</doc>
        <source-position filename="src/panel-grid.h" line="49"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-grid.c"
               line="286">a #PanelGridFrame</doc>
          <type name="Frame" c:type="PanelFrame*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid.c"
                 line="282">a #PanelGrid</doc>
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_columns" c:identifier="panel_grid_get_n_columns">
        <source-position filename="src/panel-grid.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="insert_column" c:identifier="panel_grid_insert_column">
        <source-position filename="src/panel-grid.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Grid" c:type="PanelGrid*"/>
          </instance-parameter>
          <parameter name="position" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
      <glib:signal name="create-frame" when="last">
        <doc xml:space="preserve"
             filename="src/panel-grid.c"
             line="208">The "create-frame" signal is used to create a new frame within
the grid.

Consumers of this signal are required to return an unrooted
#PanelFrame from this signal. The first signal handler wins.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-grid.c"
               line="218">an unrooted #PanelFrame</doc>
          <type name="Frame"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="GridClass"
            c:type="PanelGridClass"
            glib:is-gtype-struct-for="Grid">
      <source-position filename="src/panel-grid.h" line="42"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="create_frame" introspectable="0">
        <callback name="create_frame" introspectable="0">
          <source-position filename="src/panel-grid.h" line="38"/>
          <return-value>
            <type name="Frame" c:type="PanelFrame*"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="Grid" c:type="PanelGrid*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="12">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
    </record>
    <class name="GridColumn"
           c:symbol-prefix="grid_column"
           c:type="PanelGridColumn"
           parent="Gtk.Widget"
           glib:type-name="PanelGridColumn"
           glib:get-type="panel_grid_column_get_type"
           glib:type-struct="GridColumnClass">
      <source-position filename="src/panel-grid-column.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_grid_column_new">
        <source-position filename="src/panel-grid-column.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="foreach_frame"
              c:identifier="panel_grid_column_foreach_frame">
        <doc xml:space="preserve"
             filename="src/panel-grid-column.c"
             line="141">Invokes a callback for each frame in the grid column.</doc>
        <source-position filename="src/panel-grid-column.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid-column.c"
                 line="143">a #PanelGridColumn</doc>
            <type name="GridColumn" c:type="PanelGridColumn*"/>
          </instance-parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     scope="call"
                     closure="1">
            <doc xml:space="preserve"
                 filename="src/panel-grid-column.c"
                 line="144">a function to be called on each frame</doc>
            <type name="FrameCallback" c:type="PanelFrameCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     closure="0">
            <doc xml:space="preserve"
                 filename="src/panel-grid-column.c"
                 line="145">data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_empty" c:identifier="panel_grid_column_get_empty">
        <source-position filename="src/panel-grid-column.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="GridColumn" c:type="PanelGridColumn*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_most_recent_frame"
              c:identifier="panel_grid_column_get_most_recent_frame">
        <doc xml:space="preserve"
             filename="src/panel-grid-column.c"
             line="83">Gets the most recently acive frame on a grid column.</doc>
        <source-position filename="src/panel-grid-column.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-grid-column.c"
               line="89">a #PanelGridFrame</doc>
          <type name="Frame" c:type="PanelFrame*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid-column.c"
                 line="85">a #PanelGridColumn</doc>
            <type name="GridColumn" c:type="PanelGridColumn*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_rows" c:identifier="panel_grid_column_get_n_rows">
        <source-position filename="src/panel-grid-column.h" line="44"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="GridColumn" c:type="PanelGridColumn*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_row" c:identifier="panel_grid_column_get_row">
        <doc xml:space="preserve"
             filename="src/panel-grid-column.c"
             line="101">Gets the frame corresponding to a row index.</doc>
        <source-position filename="src/panel-grid-column.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-grid-column.c"
               line="108">a #PanelGridFrame</doc>
          <type name="Frame" c:type="PanelFrame*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid-column.c"
                 line="103">a #PanelGridColumn</doc>
            <type name="GridColumn" c:type="PanelGridColumn*"/>
          </instance-parameter>
          <parameter name="row" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-grid-column.c"
                 line="104">the index of the row</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
    </class>
    <record name="GridColumnClass"
            c:type="PanelGridColumnClass"
            glib:is-gtype-struct-for="GridColumn">
      <source-position filename="src/panel-grid-column.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <constant name="MAJOR_VERSION" value="1" c:type="PANEL_MAJOR_VERSION">
      <doc xml:space="preserve"
           filename="src/panel-version.h"
           line="36">libpanel major version component (e.g. 1 if %PANEL_VERSION is 1.2.3)</doc>
      <source-position filename="src/panel-version.h" line="41"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MICRO_VERSION" value="2" c:type="PANEL_MICRO_VERSION">
      <doc xml:space="preserve"
           filename="src/panel-version.h"
           line="50">libpanel micro version component (e.g. 3 if %PANEL_VERSION is 1.2.3)</doc>
      <source-position filename="src/panel-version.h" line="55"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MINOR_VERSION" value="0" c:type="PANEL_MINOR_VERSION">
      <doc xml:space="preserve"
           filename="src/panel-version.h"
           line="43">libpanel minor version component (e.g. 2 if %PANEL_VERSION is 1.2.3)</doc>
      <source-position filename="src/panel-version.h" line="48"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <class name="OmniBar"
           c:symbol-prefix="omni_bar"
           c:type="PanelOmniBar"
           parent="Gtk.Widget"
           glib:type-name="PanelOmniBar"
           glib:get-type="panel_omni_bar_get_type"
           glib:type-struct="OmniBarClass">
      <source-position filename="src/panel-omni-bar.h" line="40"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Actionable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_omni_bar_new">
        <doc xml:space="preserve"
             filename="src/panel-omni-bar.c"
             line="102">Create a new #PanelOmniBar.</doc>
        <source-position filename="src/panel-omni-bar.h" line="43"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-omni-bar.c"
               line="107">a newly created #PanelOmniBar</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="add_prefix" c:identifier="panel_omni_bar_add_prefix">
        <source-position filename="src/panel-omni-bar.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_suffix" c:identifier="panel_omni_bar_add_suffix">
        <source-position filename="src/panel-omni-bar.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_popover"
              c:identifier="panel_omni_bar_get_popover"
              glib:get-property="popover">
        <source-position filename="src/panel-omni-bar.h" line="45"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-omni-bar.c"
               line="67">a #GtkPopover or %NULL</doc>
          <type name="Gtk.Popover" c:type="GtkPopover*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-omni-bar.c"
                 line="65">a #PanelOmniBar</doc>
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_progress"
              c:identifier="panel_omni_bar_get_progress"
              glib:get-property="progress">
        <source-position filename="src/panel-omni-bar.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="panel_omni_bar_remove">
        <source-position filename="src/panel-omni-bar.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_popover"
              c:identifier="panel_omni_bar_set_popover"
              glib:set-property="popover">
        <source-position filename="src/panel-omni-bar.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
          <parameter name="popover" transfer-ownership="none">
            <type name="Gtk.Popover" c:type="GtkPopover*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_progress"
              c:identifier="panel_omni_bar_set_progress"
              glib:set-property="progress">
        <source-position filename="src/panel-omni-bar.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
          <parameter name="progress" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </method>
      <method name="start_pulsing" c:identifier="panel_omni_bar_start_pulsing">
        <source-position filename="src/panel-omni-bar.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="stop_pulsing" c:identifier="panel_omni_bar_stop_pulsing">
        <source-position filename="src/panel-omni-bar.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="OmniBar" c:type="PanelOmniBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="action-tooltip" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="icon-name" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="menu-model" writable="1" transfer-ownership="none">
        <type name="Gio.MenuModel"/>
      </property>
      <property name="popover"
                writable="1"
                transfer-ownership="none"
                setter="set_popover"
                getter="get_popover">
        <type name="Gtk.Popover"/>
      </property>
      <property name="progress"
                writable="1"
                transfer-ownership="none"
                setter="set_progress"
                getter="get_progress">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
    </class>
    <record name="OmniBarClass"
            c:type="PanelOmniBarClass"
            glib:is-gtype-struct-for="OmniBar">
      <source-position filename="src/panel-omni-bar.h" line="40"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="8">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
    </record>
    <class name="Paned"
           c:symbol-prefix="paned"
           c:type="PanelPaned"
           parent="Gtk.Widget"
           glib:type-name="PanelPaned"
           glib:get-type="panel_paned_get_type"
           glib:type-struct="PanedClass">
      <source-position filename="src/panel-paned.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="panel_paned_new">
        <doc xml:space="preserve"
             filename="src/panel-paned.c"
             line="49">Create a new #PanelPaned.</doc>
        <source-position filename="src/panel-paned.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-paned.c"
               line="54">a newly created #PanelPaned</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="append" c:identifier="panel_paned_append">
        <source-position filename="src/panel-paned.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_n_children" c:identifier="panel_paned_get_n_children">
        <source-position filename="src/panel-paned.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_nth_child" c:identifier="panel_paned_get_nth_child">
        <doc xml:space="preserve"
             filename="src/panel-paned.c"
             line="563">Gets the child at position @nth.</doc>
        <source-position filename="src/panel-paned.h" line="56"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-paned.c"
               line="570">a #GtkWidget or %NULL</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-paned.c"
                 line="565">a #PanelPaned</doc>
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
          <parameter name="nth" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-paned.c"
                 line="566">the child position</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="insert" c:identifier="panel_paned_insert">
        <source-position filename="src/panel-paned.h" line="43"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
          <parameter name="position" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="insert_after" c:identifier="panel_paned_insert_after">
        <source-position filename="src/panel-paned.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="sibling" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="prepend" c:identifier="panel_paned_prepend">
        <source-position filename="src/panel-paned.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="panel_paned_remove">
        <source-position filename="src/panel-paned.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Paned" c:type="PanelPaned*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
    </class>
    <record name="PanedClass"
            c:type="PanelPanedClass"
            glib:is-gtype-struct-for="Paned">
      <source-position filename="src/panel-paned.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <class name="Position"
           c:symbol-prefix="position"
           c:type="PanelPosition"
           parent="GObject.Object"
           final="1"
           glib:type-name="PanelPosition"
           glib:get-type="panel_position_get_type"
           glib:type-struct="PositionClass">
      <source-position filename="src/panel-position.h" line="31"/>
      <constructor name="new" c:identifier="panel_position_new">
        <source-position filename="src/panel-position.h" line="34"/>
        <return-value transfer-ownership="full">
          <type name="Position" c:type="PanelPosition*"/>
        </return-value>
      </constructor>
      <constructor name="new_from_variant"
                   c:identifier="panel_position_new_from_variant">
        <source-position filename="src/panel-position.h" line="36"/>
        <return-value transfer-ownership="full">
          <type name="Position" c:type="PanelPosition*"/>
        </return-value>
        <parameters>
          <parameter name="variant" transfer-ownership="none">
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="equal" c:identifier="panel_position_equal">
        <source-position filename="src/panel-position.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="a" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="b" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_area"
              c:identifier="panel_position_get_area"
              glib:get-property="area">
        <source-position filename="src/panel-position.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="Area" c:type="PanelArea"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_area_set"
              c:identifier="panel_position_get_area_set"
              glib:get-property="area-set">
        <source-position filename="src/panel-position.h" line="42"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_column"
              c:identifier="panel_position_get_column"
              glib:get-property="column">
        <source-position filename="src/panel-position.h" line="44"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_column_set"
              c:identifier="panel_position_get_column_set"
              glib:get-property="column-set">
        <source-position filename="src/panel-position.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_depth"
              c:identifier="panel_position_get_depth"
              glib:get-property="depth">
        <source-position filename="src/panel-position.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_depth_set"
              c:identifier="panel_position_get_depth_set"
              glib:get-property="depth-set">
        <source-position filename="src/panel-position.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_row"
              c:identifier="panel_position_get_row"
              glib:get-property="row">
        <source-position filename="src/panel-position.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_row_set"
              c:identifier="panel_position_get_row_set"
              glib:get-property="row-set">
        <source-position filename="src/panel-position.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_indeterminate"
              c:identifier="panel_position_is_indeterminate">
        <source-position filename="src/panel-position.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_area"
              c:identifier="panel_position_set_area"
              glib:set-property="area">
        <source-position filename="src/panel-position.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="area" transfer-ownership="none">
            <type name="Area" c:type="PanelArea"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_area_set"
              c:identifier="panel_position_set_area_set"
              glib:set-property="area-set">
        <source-position filename="src/panel-position.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="area_set" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_column"
              c:identifier="panel_position_set_column"
              glib:set-property="column">
        <source-position filename="src/panel-position.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="column" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_column_set"
              c:identifier="panel_position_set_column_set"
              glib:set-property="column-set">
        <source-position filename="src/panel-position.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="column_set" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_depth"
              c:identifier="panel_position_set_depth"
              glib:set-property="depth">
        <source-position filename="src/panel-position.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="depth" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_depth_set"
              c:identifier="panel_position_set_depth_set"
              glib:set-property="depth-set">
        <source-position filename="src/panel-position.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="depth_set" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_row"
              c:identifier="panel_position_set_row"
              glib:set-property="row">
        <source-position filename="src/panel-position.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="row" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_row_set"
              c:identifier="panel_position_set_row_set"
              glib:set-property="row-set">
        <source-position filename="src/panel-position.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
          <parameter name="row_set" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_variant" c:identifier="panel_position_to_variant">
        <source-position filename="src/panel-position.h" line="38"/>
        <return-value transfer-ownership="full">
          <type name="GLib.Variant" c:type="GVariant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Position" c:type="PanelPosition*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="area"
                writable="1"
                transfer-ownership="none"
                setter="set_area"
                getter="get_area">
        <type name="Area"/>
      </property>
      <property name="area-set"
                writable="1"
                transfer-ownership="none"
                setter="set_area_set"
                getter="get_area_set">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="column"
                writable="1"
                transfer-ownership="none"
                setter="set_column"
                getter="get_column">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="column-set"
                writable="1"
                transfer-ownership="none"
                setter="set_column_set"
                getter="get_column_set">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="depth"
                writable="1"
                transfer-ownership="none"
                setter="set_depth"
                getter="get_depth">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="depth-set"
                writable="1"
                transfer-ownership="none"
                setter="set_depth_set"
                getter="get_depth_set">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="row"
                writable="1"
                transfer-ownership="none"
                setter="set_row"
                getter="get_row">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="row-set"
                writable="1"
                transfer-ownership="none"
                setter="set_row_set"
                getter="get_row_set">
        <type name="gboolean" c:type="gboolean"/>
      </property>
    </class>
    <record name="PositionClass"
            c:type="PanelPositionClass"
            glib:is-gtype-struct-for="Position">
      <source-position filename="src/panel-position.h" line="31"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <class name="SaveDelegate"
           c:symbol-prefix="save_delegate"
           c:type="PanelSaveDelegate"
           parent="GObject.Object"
           glib:type-name="PanelSaveDelegate"
           glib:get-type="panel_save_delegate_get_type"
           glib:type-struct="SaveDelegateClass">
      <source-position filename="src/panel-save-delegate.h" line="52"/>
      <constructor name="new" c:identifier="panel_save_delegate_new">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="59">Create a new #PanelSaveDelegate.</doc>
        <source-position filename="src/panel-save-delegate.h" line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-save-delegate.c"
               line="64">a newly created #PanelSaveDelegate</doc>
          <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
        </return-value>
      </constructor>
      <virtual-method name="close" invoker="close">
        <source-position filename="src/panel-save-delegate.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="discard" invoker="discard">
        <source-position filename="src/panel-save-delegate.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="save">
        <source-position filename="src/panel-save-delegate.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="task" transfer-ownership="none">
            <type name="Gio.Task" c:type="GTask*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="save_async" invoker="save_async">
        <source-position filename="src/panel-save-delegate.h" line="38"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     closure="2">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="save_finish" invoker="save_finish" throws="1">
        <source-position filename="src/panel-save-delegate.h" line="42"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="close" c:identifier="panel_save_delegate_close">
        <source-position filename="src/panel-save-delegate.h" line="96"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="discard" c:identifier="panel_save_delegate_discard">
        <source-position filename="src/panel-save-delegate.h" line="98"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon"
              c:identifier="panel_save_delegate_get_icon"
              glib:get-property="icon">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="560">Gets the #GIcon for the save delegate, or %NULL if unset.</doc>
        <source-position filename="src/panel-save-delegate.h" line="67"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-save-delegate.c"
               line="566">a #GIcon or %NULL</doc>
          <type name="Gio.Icon" c:type="GIcon*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="562">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_name"
              c:identifier="panel_save_delegate_get_icon_name"
              glib:get-property="icon-name">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="388">Gets the icon name for the save delegate.</doc>
        <source-position filename="src/panel-save-delegate.h" line="62"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-save-delegate.c"
               line="394">the icon name or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="390">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_is_draft"
              c:identifier="panel_save_delegate_get_is_draft"
              glib:get-property="is-draft">
        <source-position filename="src/panel-save-delegate.h" line="57"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_progress"
              c:identifier="panel_save_delegate_get_progress"
              glib:get-property="progress">
        <source-position filename="src/panel-save-delegate.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_subtitle"
              c:identifier="panel_save_delegate_get_subtitle"
              glib:get-property="subtitle">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="436">Gets the subtitle for the save delegate.</doc>
        <source-position filename="src/panel-save-delegate.h" line="72"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-save-delegate.c"
               line="442">the subtitle or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="438">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_title"
              c:identifier="panel_save_delegate_get_title"
              glib:get-property="title">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="473">Gets the title for the save delegate.</doc>
        <source-position filename="src/panel-save-delegate.h" line="77"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-save-delegate.c"
               line="479">the title or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="475">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="save_async" c:identifier="panel_save_delegate_save_async">
        <source-position filename="src/panel-save-delegate.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_finish"
              c:identifier="panel_save_delegate_save_finish"
              throws="1">
        <source-position filename="src/panel-save-delegate.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon"
              c:identifier="panel_save_delegate_set_icon"
              glib:set-property="icon">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="578">Sets the #GIcon for the save delegate. Pass %NULL to unset.</doc>
        <source-position filename="src/panel-save-delegate.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="580">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="581">a #GIcon or %NULL</doc>
            <type name="Gio.Icon" c:type="GIcon*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_name"
              c:identifier="panel_save_delegate_set_icon_name"
              glib:set-property="icon-name">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="412">Sets the icon name for the save delegate. Pass %NULL to unset.</doc>
        <source-position filename="src/panel-save-delegate.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="414">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="415">the icon name or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_is_draft"
              c:identifier="panel_save_delegate_set_is_draft"
              glib:set-property="is-draft">
        <source-position filename="src/panel-save-delegate.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="is_draft" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_progress"
              c:identifier="panel_save_delegate_set_progress"
              glib:set-property="progress">
        <source-position filename="src/panel-save-delegate.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="progress" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_subtitle"
              c:identifier="panel_save_delegate_set_subtitle"
              glib:set-property="subtitle">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="454">Sets the subtitle for the save delegate. Pass %NULL to unset.</doc>
        <source-position filename="src/panel-save-delegate.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="456">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="subtitle"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="457">the subtitle or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_title"
              c:identifier="panel_save_delegate_set_title"
              glib:set-property="title">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="491">Sets the title for the save delegate. Pass %NULL to unset.</doc>
        <source-position filename="src/panel-save-delegate.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="493">a #PanelSaveDelegate</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </instance-parameter>
          <parameter name="title"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="494">the title or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <property name="icon"
                writable="1"
                transfer-ownership="none"
                setter="set_icon"
                getter="get_icon">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="230">The "icon" property contains a #GIcon that describes the save
operation. Generally, this should be the symbolic icon of the
document class you are saving.

Alternatively, you can use #PanelSaveDelegate:icon-name for a
named icon.</doc>
        <type name="Gio.Icon"/>
      </property>
      <property name="icon-name"
                writable="1"
                transfer-ownership="none"
                setter="set_icon_name"
                getter="get_icon_name">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="247">The "icon-name" property contains the name of an icon to use when
showing information about the save operation in UI such as a save
dialog.

You can also use #PanelSaveDelegate:icon to set a #GIcon instead of
an icon name.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="is-draft"
                writable="1"
                transfer-ownership="none"
                setter="set_is_draft"
                getter="get_is_draft">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="264">The "is-draft" property indicates that the document represented by the
delegate is a draft and might be lost of not saved.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="progress"
                writable="1"
                transfer-ownership="none"
                setter="set_progress"
                getter="get_progress">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="277">The "progress" property contains progress between 0.0 and 1.0 and
should be updated by the delegate implementation as saving progresses.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="subtitle"
                writable="1"
                transfer-ownership="none"
                setter="set_subtitle"
                getter="get_subtitle">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="304">The "subtitle" property contains additional information that may
not make sense to put in the title. This might include the directory
that the file will be saved within.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="title"
                writable="1"
                transfer-ownership="none"
                setter="set_title"
                getter="get_title">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="290">The "title" property contains the title of the document being saved.
Generally, this should be the base name of the document such as
`file.txt`.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="close" when="last">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="343">This signal is emitted when the save delegate should close
the widget it is related to. This can happen after saving as
part of a close request and it is now save for the delegate to
close.

Implementations are encouraged to connect to this signal (or
implement the virtual method) and call panel_widget_force_close().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="discard" when="last">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="363">This signal is emitted when the user has requested that the
delegate discard the changes instead of saving them.

Implementations are encouraged to connect to this signal (or
implement the virtual method) and revert the document to the
last saved state and/or close the document.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="save" when="last">
        <doc xml:space="preserve"
             filename="src/panel-save-delegate.c"
             line="320">This signal can be used when subclassing #PanelSaveDelegate is not
possible or cumbersome. The default implementation of
#PanelSaveDelegateClass.save_async() will emit this signal to allow
the consumer to implement asynchronous save in a flexible manner.

The caller is expected to complete @task with a boolean when the
save operation has completed.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/panel-save-delegate.c"
               line="333">%TRUE if the operation was handled.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="task" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-save-delegate.c"
                 line="323">a #GTask</doc>
            <type name="Gio.Task"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="SaveDelegateClass"
            c:type="PanelSaveDelegateClass"
            glib:is-gtype-struct-for="SaveDelegate">
      <source-position filename="src/panel-save-delegate.h" line="52"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="save_async">
        <callback name="save_async">
          <source-position filename="src/panel-save-delegate.h" line="38"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
            </parameter>
            <parameter name="cancellable"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1">
              <type name="Gio.Cancellable" c:type="GCancellable*"/>
            </parameter>
            <parameter name="callback"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       scope="async"
                       closure="3">
              <type name="Gio.AsyncReadyCallback"
                    c:type="GAsyncReadyCallback"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="3">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="save_finish">
        <callback name="save_finish" throws="1">
          <source-position filename="src/panel-save-delegate.h" line="42"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
            </parameter>
            <parameter name="result" transfer-ownership="none">
              <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="save">
        <callback name="save">
          <source-position filename="src/panel-save-delegate.h" line="45"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
            </parameter>
            <parameter name="task" transfer-ownership="none">
              <type name="Gio.Task" c:type="GTask*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="discard">
        <callback name="discard">
          <source-position filename="src/panel-save-delegate.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="close">
        <callback name="close">
          <source-position filename="src/panel-save-delegate.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="8">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
    </record>
    <class name="SaveDialog"
           c:symbol-prefix="save_dialog"
           c:type="PanelSaveDialog"
           parent="Adw.MessageDialog"
           final="1"
           glib:type-name="PanelSaveDialog"
           glib:get-type="panel_save_dialog_get_type"
           glib:type-struct="SaveDialogClass">
      <source-position filename="src/panel-save-dialog.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Native"/>
      <implements name="Gtk.Root"/>
      <implements name="Gtk.ShortcutManager"/>
      <constructor name="new" c:identifier="panel_save_dialog_new">
        <doc xml:space="preserve"
             filename="src/panel-save-dialog.c"
             line="73">Create a new #PanelSaveDialog.</doc>
        <source-position filename="src/panel-save-dialog.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-save-dialog.c"
               line="78">a newly created #PanelSaveDialog</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="add_delegate"
              c:identifier="panel_save_dialog_add_delegate">
        <source-position filename="src/panel-save-dialog.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDialog" c:type="PanelSaveDialog*"/>
          </instance-parameter>
          <parameter name="delegate" transfer-ownership="none">
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_close_after_save"
              c:identifier="panel_save_dialog_get_close_after_save"
              glib:get-property="close-after-save">
        <source-position filename="src/panel-save-dialog.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDialog" c:type="PanelSaveDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="run_async" c:identifier="panel_save_dialog_run_async">
        <source-position filename="src/panel-save-dialog.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDialog" c:type="PanelSaveDialog*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="run_finish"
              c:identifier="panel_save_dialog_run_finish"
              throws="1">
        <source-position filename="src/panel-save-dialog.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDialog" c:type="PanelSaveDialog*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_close_after_save"
              c:identifier="panel_save_dialog_set_close_after_save"
              glib:set-property="close-after-save">
        <source-position filename="src/panel-save-dialog.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="SaveDialog" c:type="PanelSaveDialog*"/>
          </instance-parameter>
          <parameter name="close_after_save" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="close-after-save"
                writable="1"
                transfer-ownership="none"
                setter="set_close_after_save"
                getter="get_close_after_save">
        <doc xml:space="preserve"
             filename="src/panel-save-dialog.c"
             line="349">This property requests that the widget close after saving.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
    </class>
    <record name="SaveDialogClass"
            c:type="PanelSaveDialogClass"
            glib:is-gtype-struct-for="SaveDialog">
      <source-position filename="src/panel-save-dialog.h" line="32"/>
      <field name="parent_class">
        <type name="Adw.MessageDialogClass" c:type="AdwMessageDialogClass"/>
      </field>
    </record>
    <class name="Statusbar"
           c:symbol-prefix="statusbar"
           c:type="PanelStatusbar"
           parent="Gtk.Widget"
           glib:type-name="PanelStatusbar"
           glib:get-type="panel_statusbar_get_type"
           glib:type-struct="StatusbarClass">
      <source-position filename="src/panel-statusbar.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_statusbar_new">
        <source-position filename="src/panel-statusbar.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="add_prefix" c:identifier="panel_statusbar_add_prefix">
        <source-position filename="src/panel-statusbar.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Statusbar" c:type="PanelStatusbar*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_suffix" c:identifier="panel_statusbar_add_suffix">
        <source-position filename="src/panel-statusbar.h" line="41"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Statusbar" c:type="PanelStatusbar*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="panel_statusbar_remove">
        <source-position filename="src/panel-statusbar.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Statusbar" c:type="PanelStatusbar*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
    </class>
    <record name="StatusbarClass"
            c:type="PanelStatusbarClass"
            glib:is-gtype-struct-for="Statusbar">
      <source-position filename="src/panel-statusbar.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <class name="ThemeSelector"
           c:symbol-prefix="theme_selector"
           c:type="PanelThemeSelector"
           parent="Gtk.Widget"
           glib:type-name="PanelThemeSelector"
           glib:get-type="panel_theme_selector_get_type"
           glib:type-struct="ThemeSelectorClass">
      <source-position filename="src/panel-theme-selector.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_theme_selector_new">
        <source-position filename="src/panel-theme-selector.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_action_name"
              c:identifier="panel_theme_selector_get_action_name"
              glib:get-property="action-name">
        <source-position filename="src/panel-theme-selector.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="ThemeSelector" c:type="PanelThemeSelector*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_action_name"
              c:identifier="panel_theme_selector_set_action_name"
              glib:set-property="action-name">
        <source-position filename="src/panel-theme-selector.h" line="39"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="ThemeSelector" c:type="PanelThemeSelector*"/>
          </instance-parameter>
          <parameter name="action_name" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <property name="action-name"
                writable="1"
                transfer-ownership="none"
                setter="set_action_name"
                getter="get_action_name">
        <type name="utf8" c:type="gchar*"/>
      </property>
    </class>
    <record name="ThemeSelectorClass"
            c:type="PanelThemeSelectorClass"
            glib:is-gtype-struct-for="ThemeSelector">
      <source-position filename="src/panel-theme-selector.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <class name="ToggleButton"
           c:symbol-prefix="toggle_button"
           c:type="PanelToggleButton"
           parent="Gtk.Widget"
           glib:type-name="PanelToggleButton"
           glib:get-type="panel_toggle_button_get_type"
           glib:type-struct="ToggleButtonClass">
      <source-position filename="src/panel-toggle-button.h" line="32"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_toggle_button_new">
        <source-position filename="src/panel-toggle-button.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="dock" transfer-ownership="none">
            <type name="Dock" c:type="PanelDock*"/>
          </parameter>
          <parameter name="area" transfer-ownership="none">
            <type name="Area" c:type="PanelArea"/>
          </parameter>
        </parameters>
      </constructor>
      <property name="area"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Area"/>
      </property>
      <property name="dock" writable="1" transfer-ownership="none">
        <type name="Dock"/>
      </property>
    </class>
    <record name="ToggleButtonClass"
            c:type="PanelToggleButtonClass"
            glib:is-gtype-struct-for="ToggleButton">
      <source-position filename="src/panel-toggle-button.h" line="32"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
    </record>
    <function-macro name="UNAVAILABLE"
                    c:identifier="PANEL_UNAVAILABLE"
                    introspectable="0">
      <source-position filename="src/panel-version-macros.h" line="34"/>
      <parameters>
        <parameter name="maj">
        </parameter>
        <parameter name="min">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="VERSION_S" value="1.0.2" c:type="PANEL_VERSION_S">
      <doc xml:space="preserve"
           filename="src/panel-version.h"
           line="64">libpanel version, encoded as a string, useful for printing and
concatenation.</doc>
      <source-position filename="src/panel-version.h" line="70"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="WIDGET_KIND_ANY" value="*" c:type="PANEL_WIDGET_KIND_ANY">
      <source-position filename="src/panel-widget.h" line="45"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="WIDGET_KIND_DOCUMENT"
              value="document"
              c:type="PANEL_WIDGET_KIND_DOCUMENT">
      <source-position filename="src/panel-widget.h" line="47"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="WIDGET_KIND_UNKNOWN"
              value="unknown"
              c:type="PANEL_WIDGET_KIND_UNKNOWN">
      <source-position filename="src/panel-widget.h" line="46"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="WIDGET_KIND_UTILITY"
              value="utility"
              c:type="PANEL_WIDGET_KIND_UTILITY">
      <source-position filename="src/panel-widget.h" line="48"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="Widget"
           c:symbol-prefix="widget"
           c:type="PanelWidget"
           parent="Gtk.Widget"
           glib:type-name="PanelWidget"
           glib:get-type="panel_widget_get_type"
           glib:type-struct="WidgetClass">
      <source-position filename="src/panel-widget.h" line="43"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <constructor name="new" c:identifier="panel_widget_new">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="254">Create a new #PanelWidget.</doc>
        <source-position filename="src/panel-widget.h" line="51"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="259">a newly created #PanelWidget</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="get_default_focus" invoker="get_default_focus">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1234">Discovers the widget that should be focused as the default widget
for the #PanelWidget.

For example, if you want to focus a text editor by default, you might
return the #GtkTextView inside your widgetry.</doc>
        <source-position filename="src/panel-widget.h" line="38"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="1244">the default widget to focus within
  the #PanelWidget.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1236">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="presented">
        <source-position filename="src/panel-widget.h" line="39"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="action_set_enabled"
              c:identifier="panel_widget_action_set_enabled">
        <source-position filename="src/panel-widget.h" line="144"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="action_name" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="enabled" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="close" c:identifier="panel_widget_close">
        <source-position filename="src/panel-widget.h" line="131"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="focus_default" c:identifier="panel_widget_focus_default">
        <source-position filename="src/panel-widget.h" line="124"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="force_close" c:identifier="panel_widget_force_close">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1366">Closes the widget without any save dialogs.</doc>
        <source-position filename="src/panel-widget.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1368">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_busy"
              c:identifier="panel_widget_get_busy"
              glib:get-property="busy">
        <source-position filename="src/panel-widget.h" line="107"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_can_maximize"
              c:identifier="panel_widget_get_can_maximize"
              glib:get-property="can-maximize">
        <source-position filename="src/panel-widget.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_child"
              c:identifier="panel_widget_get_child"
              glib:get-property="child">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="877">Gets the child widget of the panel.</doc>
        <source-position filename="src/panel-widget.h" line="58"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="883">a #GtkWidget or %NULL</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="879">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_default_focus"
              c:identifier="panel_widget_get_default_focus">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1234">Discovers the widget that should be focused as the default widget
for the #PanelWidget.

For example, if you want to focus a text editor by default, you might
return the #GtkTextView inside your widgetry.</doc>
        <source-position filename="src/panel-widget.h" line="122"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="1244">the default widget to focus within
  the #PanelWidget.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1236">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon"
              c:identifier="panel_widget_get_icon"
              glib:get-property="icon">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="737">Gets a #GIcon for the widget.</doc>
        <source-position filename="src/panel-widget.h" line="68"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="743">a #GIcon or %NULL</doc>
          <type name="Gio.Icon" c:type="GIcon*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="739">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_name"
              c:identifier="panel_widget_get_icon_name"
              glib:get-property="icon-name">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="686">Gets the icon name for the widget.</doc>
        <source-position filename="src/panel-widget.h" line="73"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="692">the icon name or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="688">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id"
              c:identifier="panel_widget_get_id"
              glib:get-property="id">
        <source-position filename="src/panel-widget.h" line="53"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="panel_widget_get_kind"
              glib:get-property="kind">
        <source-position filename="src/panel-widget.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_menu_model"
              c:identifier="panel_widget_get_menu_model"
              glib:get-property="menu-model">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1147">Gets the #GMenuModel for the widget.

#PanelFrameHeader may use this model to display additional options
for the page to the user via menus.</doc>
        <source-position filename="src/panel-widget.h" line="113"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="1156">a #GMenuModel</doc>
          <type name="Gio.MenuModel" c:type="GMenuModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1149">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_modified"
              c:identifier="panel_widget_get_modified"
              glib:get-property="modified">
        <source-position filename="src/panel-widget.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_needs_attention"
              c:identifier="panel_widget_get_needs_attention"
              glib:get-property="needs-attention">
        <source-position filename="src/panel-widget.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_position" c:identifier="panel_widget_get_position">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1594">Gets teh position of the widget within the dock.</doc>
        <source-position filename="src/panel-widget.h" line="118"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="1600">a #PanelPosition or %NULL if the
  widget isn't within a #PanelFrame.</doc>
          <type name="Position" c:type="PanelPosition*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1596">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reorderable"
              c:identifier="panel_widget_get_reorderable"
              glib:get-property="reorderable">
        <source-position filename="src/panel-widget.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_save_delegate"
              c:identifier="panel_widget_get_save_delegate"
              glib:get-property="save-delegate">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1297">Gets the #PanelWidget:save-delegate property.

The save delegate may be used to perform save operations on the
content within the widget.

Document editors might use this to save the file to disk.</doc>
        <source-position filename="src/panel-widget.h" line="126"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="1308">a #PanelSaveDelegate or %NULL</doc>
          <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1299">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_title"
              c:identifier="panel_widget_get_title"
              glib:get-property="title">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="836">Gets the title for the widget.</doc>
        <source-position filename="src/panel-widget.h" line="63"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="842">the title or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="838">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="insert_action_group"
              c:identifier="panel_widget_insert_action_group">
        <source-position filename="src/panel-widget.h" line="135"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="prefix" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="group" transfer-ownership="none">
            <type name="Gio.ActionGroup" c:type="GActionGroup*"/>
          </parameter>
        </parameters>
      </method>
      <method name="mark_busy" c:identifier="panel_widget_mark_busy">
        <source-position filename="src/panel-widget.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="maximize" c:identifier="panel_widget_maximize">
        <source-position filename="src/panel-widget.h" line="98"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="raise" c:identifier="panel_widget_raise">
        <source-position filename="src/panel-widget.h" line="120"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_can_maximize"
              c:identifier="panel_widget_set_can_maximize"
              glib:set-property="can-maximize">
        <source-position filename="src/panel-widget.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="can_maximize" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_child"
              c:identifier="panel_widget_set_child"
              glib:set-property="child">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="895">Sets the child widget of the panel.</doc>
        <source-position filename="src/panel-widget.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="897">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="child"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="898">a #GtkWidget or %NULL</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon"
              c:identifier="panel_widget_set_icon"
              glib:set-property="icon">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="758">Sets a #GIcon for the widget.</doc>
        <source-position filename="src/panel-widget.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="760">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="761">a #GIcon or %NULL</doc>
            <type name="Gio.Icon" c:type="GIcon*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_name"
              c:identifier="panel_widget_set_icon_name"
              glib:set-property="icon-name">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="712">Sets the icon name for the widget.</doc>
        <source-position filename="src/panel-widget.h" line="75"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="714">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="icon_name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="715">the icon name or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_id"
              c:identifier="panel_widget_set_id"
              glib:set-property="id">
        <source-position filename="src/panel-widget.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="panel_widget_set_kind"
              glib:set-property="kind">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1057">Sets the kind of the widget.</doc>
        <source-position filename="src/panel-widget.h" line="104"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1059">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="kind"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1060">the kind of this widget</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_menu_model"
              c:identifier="panel_widget_set_menu_model"
              glib:set-property="menu-model">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1168">Sets the #GMenuModel for the widget.

#PanelFrameHeader may use this model to display additional options
for the page to the user via menus.</doc>
        <source-position filename="src/panel-widget.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1170">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="menu_model"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1171">a #GMenuModel</doc>
            <type name="Gio.MenuModel" c:type="GMenuModel*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_modified"
              c:identifier="panel_widget_set_modified"
              glib:set-property="modified">
        <source-position filename="src/panel-widget.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="modified" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_needs_attention"
              c:identifier="panel_widget_set_needs_attention"
              glib:set-property="needs-attention">
        <source-position filename="src/panel-widget.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="needs_attention" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reorderable"
              c:identifier="panel_widget_set_reorderable"
              glib:set-property="reorderable">
        <source-position filename="src/panel-widget.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="reorderable" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_save_delegate"
              c:identifier="panel_widget_set_save_delegate"
              glib:set-property="save-delegate">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1320">Sets the #PanelWidget:save-delegate property.

The save delegate may be used to perform save operations on the
content within the widget.

Document editors might use this to save the file to disk.</doc>
        <source-position filename="src/panel-widget.h" line="128"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1322">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="save_delegate"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1323">a #PanelSaveDelegate or %NULL</doc>
            <type name="SaveDelegate" c:type="PanelSaveDelegate*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_title"
              c:identifier="panel_widget_set_title"
              glib:set-property="title">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="854">Sets the title for the widget.</doc>
        <source-position filename="src/panel-widget.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="856">a #PanelWidget</doc>
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
          <parameter name="title"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="857">the title or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unmark_busy" c:identifier="panel_widget_unmark_busy">
        <source-position filename="src/panel-widget.h" line="111"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unmaximize" c:identifier="panel_widget_unmaximize">
        <source-position filename="src/panel-widget.h" line="100"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="PanelWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="busy" transfer-ownership="none" getter="get_busy">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="can-maximize"
                writable="1"
                transfer-ownership="none"
                setter="set_can_maximize"
                getter="get_can_maximize">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="child"
                writable="1"
                transfer-ownership="none"
                setter="set_child"
                getter="get_child">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="585">The child inside this widget.</doc>
        <type name="Gtk.Widget"/>
      </property>
      <property name="icon"
                writable="1"
                transfer-ownership="none"
                setter="set_icon"
                getter="get_icon">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="515">The icon for this widget.</doc>
        <type name="Gio.Icon"/>
      </property>
      <property name="icon-name"
                writable="1"
                transfer-ownership="none"
                setter="set_icon_name"
                getter="get_icon_name">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="527">The icon name for this widget.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="id"
                writable="1"
                transfer-ownership="none"
                setter="set_id"
                getter="get_id">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="kind"
                writable="1"
                transfer-ownership="none"
                setter="set_kind"
                getter="get_kind">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="menu-model"
                writable="1"
                transfer-ownership="none"
                setter="set_menu_model"
                getter="get_menu_model">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="553">A menu model to display additional options for the page to the user via
menus.</doc>
        <type name="Gio.MenuModel"/>
      </property>
      <property name="modified"
                writable="1"
                transfer-ownership="none"
                setter="set_modified"
                getter="get_modified">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="needs-attention"
                writable="1"
                transfer-ownership="none"
                setter="set_needs_attention"
                getter="get_needs_attention">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="reorderable"
                writable="1"
                transfer-ownership="none"
                setter="set_reorderable"
                getter="get_reorderable">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="save-delegate"
                writable="1"
                transfer-ownership="none"
                setter="set_save_delegate"
                getter="get_save_delegate">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="611">The save delegate attached to this widget.</doc>
        <type name="SaveDelegate"/>
      </property>
      <property name="title"
                writable="1"
                transfer-ownership="none"
                setter="set_title"
                getter="get_title">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="573">The title for this widget.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
      <glib:signal name="get-default-focus" when="last">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="625">Gets the default widget to focus within the #PanelWidget. The first
handler for this signal is expected to return a widget, or %NULL if
there is nothing to focus.</doc>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/panel-widget.c"
               line="633">a #GtkWidget within #PanelWidget
  or %NULL.</doc>
          <type name="Gtk.Widget"/>
        </return-value>
      </glib:signal>
      <glib:signal name="presented" when="last">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="645">The "presented" signal is emitted when the widget is brought
to the front of a frame.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="WidgetClass"
            c:type="PanelWidgetClass"
            glib:is-gtype-struct-for="Widget">
      <source-position filename="src/panel-widget.h" line="43"/>
      <field name="parent_instance">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="get_default_focus">
        <callback name="get_default_focus">
          <source-position filename="src/panel-widget.h" line="38"/>
          <return-value transfer-ownership="none" nullable="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1244">the default widget to focus within
  the #PanelWidget.</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/panel-widget.c"
                   line="1236">a #PanelWidget</doc>
              <type name="Widget" c:type="PanelWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="presented">
        <callback name="presented">
          <source-position filename="src/panel-widget.h" line="39"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="Widget" c:type="PanelWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="8">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
      <method name="install_action"
              c:identifier="panel_widget_class_install_action">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1440">This should be called at class initialization time to specify
actions to be added for all instances of this class.

Actions installed by this function are stateless. The only state
they have is whether they are enabled or not.</doc>
        <source-position filename="src/panel-widget.h" line="139"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1442">a `PanelWidgetClass`</doc>
            <type name="WidgetClass" c:type="PanelWidgetClass*"/>
          </instance-parameter>
          <parameter name="action_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1443">a prefixed action name, such as "clipboard.paste"</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="parameter_type"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1444">the parameter type</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="activate"
                     transfer-ownership="none"
                     scope="notified">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1445">callback to use when the action is activated</doc>
            <type name="Gtk.WidgetActionActivateFunc"
                  c:type="GtkWidgetActionActivateFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="install_property_action"
              c:identifier="panel_widget_class_install_property_action">
        <doc xml:space="preserve"
             filename="src/panel-widget.c"
             line="1506">Installs an action called @action_name on @widget_class and
binds its state to the value of the @property_name property.

This function will perform a few santity checks on the property selected
via @property_name. Namely, the property must exist, must be readable,
writable and must not be construct-only. There are also restrictions
on the type of the given property, it must be boolean, int, unsigned int,
double or string. If any of these conditions are not met, a critical
warning will be printed and no action will be added.

The state type of the action matches the property type.

If the property is boolean, the action will have no parameter and
toggle the property value. Otherwise, the action will have a parameter
of the same type as the property.</doc>
        <source-position filename="src/panel-widget.h" line="148"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1508">a `GtkWidgetClass`</doc>
            <type name="WidgetClass" c:type="PanelWidgetClass*"/>
          </instance-parameter>
          <parameter name="action_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1509">name of the action</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/panel-widget.c"
                 line="1510">name of the property in instances of @widget_class
  or any parent class.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <function name="finalize" c:identifier="panel_finalize">
      <source-position filename="src/panel-init.h" line="30"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="get_resource" c:identifier="panel_get_resource">
      <source-position filename="src/panel-resources.h" line="6"/>
      <return-value transfer-ownership="full">
        <type name="Gio.Resource" c:type="GResource*"/>
      </return-value>
    </function>
    <function name="init" c:identifier="panel_init">
      <source-position filename="src/panel-init.h" line="28"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <docsection name="panel-version">
      <doc xml:space="preserve"
           filename="src/panel-version.h"
           line="27">This module provides various macros that may be used to build code based
on the version of libpanel at build time.</doc>
    </docsection>
  </namespace>
</repository>
