<?xml version='1.0' encoding='UTF-8'?>
<!-- Created with Cambalache 1.0 -->
<interface>
  <!-- interface-name unit_list_panel.ui -->
  <requires lib="gio" version="2.44"/>
  <requires lib="gtk" version="4.18"/>
  <requires lib="libadwaita" version="1.7"/>
  <template class="UnitListPanel" parent="GtkBox">
    <property name="orientation">vertical</property>
    <property name="vexpand">True</property>
    <property name="width-request">150</property>
    <child>
      <object class="GtkSearchBar" id="search_bar"/>
    </child>
    <child>
      <object class="AdwViewStack" id="panel_stack">
        <child>
          <object class="AdwViewStackPage">
            <property name="child">
              <object class="GtkBox">
                <property name="orientation">vertical</property>
                <child>
                  <object class="GtkScrolledWindow" id="scrolled_window">
                    <property name="vexpand">True</property>
                  </object>
                </child>
                <child>
                  <object class="AdwBreakpointBin">
                    <property name="child">
                      <object class="GtkBox" id="summary">
                        <property name="css-classes">bottom_sidebar</property>
                        <property name="spacing">10</property>
                        <child>
                          <object class="GtkBox">
                            <property name="hexpand">True</property>
                            <property name="margin-start">5</property>
                            <property name="spacing">5</property>
                            <child>
                              <object class="GtkLabel" id="loaded_units_count_label">
                                <property name="tooltip-text" translatable="yes" context="list tooltip">Loaded Units Retrieved</property>
                              </object>
                            </child>
                            <child>
                              <object class="GtkLabel" id="loaded_units_count_info">
                                <property name="label" translatable="yes" context="list info">Loaded Units Retrieved</property>
                              </object>
                            </child>
                          </object>
                        </child>
                        <child>
                          <object class="GtkBox">
                            <property name="hexpand">True</property>
                            <property name="spacing">5</property>
                            <child>
                              <object class="GtkLabel" id="unit_files_count_label">
                                <property name="tooltip-text" translatable="yes" context="list tooltip">Unit Files Retrieved</property>
                              </object>
                            </child>
                            <child>
                              <object class="GtkLabel" id="unit_files_number_info">
                                <property name="label" translatable="yes" context="list info">Unit Files Retrieved</property>
                              </object>
                            </child>
                          </object>
                        </child>
                        <child>
                          <object class="GtkBox">
                            <property name="hexpand">True</property>
                            <property name="spacing">5</property>
                            <child>
                              <object class="GtkLabel" id="unit_filtered_count_label">
                                <property name="tooltip-text" translatable="yes" context="list tooltip">Units displayed</property>
                              </object>
                            </child>
                            <child>
                              <object class="GtkLabel" id="unit_filtered_count_info">
                                <property name="label" translatable="yes" context="list info">Units Displayed</property>
                              </object>
                            </child>
                          </object>
                        </child>
                        <child>
                          <object class="GtkButton">
                            <property name="css-classes">circular</property>
                            <property name="halign">end</property>
                            <property name="icon-name">window-close-symbolic</property>
                            <property name="tooltip-text" translatable="yes" context="list info tooltip">Hide Total Summary</property>
                            <signal name="clicked" handler="legend_button_clicked" swapped="True"/>
                          </object>
                        </child>
                      </object>
                    </property>
                    <property name="height-request">10</property>
                    <property name="width-request">150</property>
                    <child>
                      <object class="AdwBreakpoint">
                        <!-- Custom object fragments -->
                        <condition>max-width: 570px</condition>
                        <setter object="loaded_units_count_info" property="label" translatable="yes" context="list info" comments="short version">Loaded</setter>
                        <setter object="unit_files_number_info" property="label" translatable="yes" context="list info" comments="short version">Files</setter>
                        <setter object="unit_filtered_count_info" property="label" translatable="yes" context="list info" comments="short version">Units</setter>
                      </object>
                    </child>
                    <child>
                      <object class="AdwBreakpoint">
                        <!-- Custom object fragments -->
                        <condition>max-width: 290px</condition>
                        <setter object="loaded_units_count_info" property="label"/>
                        <setter object="unit_files_number_info" property="label"/>
                        <setter object="unit_filtered_count_info" property="label"/>
                      </object>
                    </child>
                  </object>
                </child>
              </object>
            </property>
            <property name="name">unit_list</property>
          </object>
        </child>
        <child>
          <object class="AdwViewStackPage">
            <property name="child">
              <object class="AdwSpinner"/>
            </property>
            <property name="name">spinner</property>
          </object>
        </child>
        <child>
          <object class="AdwViewStackPage">
            <property name="child">
              <object class="AdwStatusPage">
                <property name="description" translatable="yes" context="list page description">No units returned, set environment variable &lt;b&gt;RUST_LOG=info&lt;/b&gt; to see what happened.</property>
                <property name="icon-name">sad-computer-symbolic</property>
                <property name="title" translatable="yes" context="list page title">Something went wrong</property>
              </object>
            </property>
            <property name="name">error</property>
          </object>
        </child>
        <child>
          <object class="AdwViewStackPage">
            <property name="child">
              <object class="AdwStatusPage">
                <property name="child">
                  <object class="GtkBox">
                    <property name="halign">baseline-center</property>
                    <property name="spacing">10</property>
                    <child>
                      <object class="GtkButton">
                        <property name="action-name">win.unit_list_filter_blank</property>
                        <property name="css-classes">suggested-action</property>
                        <child>
                          <object class="AdwButtonContent">
                            <property name="icon-name">funnel-symbolic</property>
                            <property name="label" translatable="yes" context="unit search" comments="Button label">Edit Filters</property>
                          </object>
                        </child>
                      </object>
                    </child>
                    <child>
                      <object class="GtkButton" id="clear_all_filters">
                        <property name="action-name">win.unit_list_filter_clear</property>
                        <property name="action-target">'all'</property>
                        <property name="css-classes">flat
destructive-action</property>
                        <property name="label" translatable="yes">Clear Filters</property>
                      </object>
                    </child>
                  </object>
                </property>
                <property name="description" translatable="yes" context="list page description" comments="When the filter is too restrictive">Overly restrictive filter</property>
                <property name="icon-name">funnel-outline-symbolic</property>
                <property name="title" translatable="yes" context="list page title">No Filtered Units</property>
              </object>
            </property>
            <property name="name">restrictive_filter</property>
          </object>
        </child>
      </object>
    </child>
  </template>
</interface>
