<?xml version="1.0"?>
<interface>
  <object class="GtkWindow" id="lxdm">
    <property name="decorated">False</property>
    <child>
      <object class="GtkVBox" id="vbox1">
        <property name="visible">True</property>
        <property name="orientation">vertical</property>

          <!-- The Header Panel 
            
            This panel is at the top of the screen. It contains
            2 components : 'logo' which is aligned on the left
            and 'time' which is aligned on the right.
            
            The component logo is dedicated to display the Slackware's
            logo pointed by the symlink 'logo.pixmap'.
          -->

        <child>
		  <object class="GtkHBox" id="header_panel">
            <property name="visible">True</property>
           
            <child>
              <object class="GtkImage" id="logo">
                <property name="visible">True</property>
                <property name="xpad">8</property>
                <property name="ypad">2</property>
                <property name="pixbuf">logo.pixmap</property>
              </object>
              <packing>
                <property name="expand">False</property>
                <property name="position">0</property>
              </packing>
            </child>
           
            <child>
              <object class="GtkLabel" id="time">
                <property name="visible">True</property>
                <property name="xpad">12</property>
                <property name="ypad">2</property>
                <property name="single_line_mode">True</property>
              </object>
              <packing>
                <property name="expand">False</property>
                <property name="pack_type">end</property>
                <property name="position">1</property>
              </packing>
            </child>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="position">0</property>
          </packing>
        </child>
          

          <!-- The Image Panel 

            This panel is just below the header panel. It 
            is dedicated to display the "login image" pointed
            by the symlink login.pixmap.
            
            The position of the "login image" is controlled 
            by the properties 'xalign' and 'yalign' of component
            'image1' :
            
              xalign=0.0 => 'image' on the left
              xalign=0.5 => 'image' centered
              xalign=1.0 => 'image' on the right
            
              yalign=0.0 => 'image' on the top (below header panel)
              yalign=0.5 => 'image centered (between header and input panels)
              yalign=1.0 => 'image' on the bottom (above input panel)           
          -->
          
        <child>
          <object class="GtkAlignment" id="image_panel">
            <property name="visible">True</property>
            <property name="xscale">1</property>
            <property name="yscale">1</property>
            <child>
              <object class="GtkImage" id="image1">
                <property name="visible">True</property>
                <property name="pixbuf">login.pixmap</property>
                <property name="xalign">0.4</property>
                <property name="yalign">1.0</property>
              </object>
              <packing>
                <property name="position">0</property>
              </packing>
            </child>
          </object>
          <packing>
            <property name="position">1</property>
          </packing>
        </child>
          
        
          <!-- The Input Panel 
          
            This panel is just below the image panel. It contains 
            the components to enter/select the username and password.

            The position of the 'input area' is controlled 
            by the properties 'xalign' and 'yalign' of component
            'hbox3' :
            
              xalign=0.0 => 'input area' on the left
              xalign=0.5 => 'input area' centered
              xalign=1.0 => 'input area' on the right
            
              yalign=0.0 => 'input area' on the top (below image panel)
              yalign=0.5 => 'input area centered (between image and bottom panels)
              yalign=1.0 => 'input area' on the bottom (above bottom panel)
          -->
          
        <child>
          <object class="GtkAlignment" id="alignment1">
            <property name="visible">True</property>
            <property name="xscale">1</property>
            <property name="yscale">1</property>
            <child>
              <object class="GtkVBox" id="vbox2">
                <property name="visible">True</property>
                <property name="orientation">vertical</property>

                <child>
                  <object class="GtkAlignment" id="alignment2">
                    <property name="visible">True</property>
                    
                      <!-- xalign and yalign control the position
                           of hbox3 component.
                        -->
                    
                    <property name="xalign">0.6</property>
                    <property name="yalign">0.1</property>
                    <property name="xscale">0</property>
                    <property name="yscale">0</property>
                    <child>
                      <object class="GtkHBox" id="hbox3">
                        <property name="visible">True</property>
                        <property name="spacing">8</property>
                        
                        <child>
                          <object class="GtkLabel" id="prompt">
                            <property name="visible">True</property>
                            <property name="label" translatable="yes">User:</property>
                            
								<!-- The prompt must be right aligned, ie.
								     xalign=1.0. Otherwise, rendering 
								     could look bad in some case, and
								     particularly when DPI is > 100, and 
								     the component hbox3 is decorated.
								  -->
								     
                            <property name="xalign">1.0</property>
                            <property name="yalign">0.5</property>

                              <!-- Set top/bottom margin to prevent the
                                   image panel to go up and down when 
                                   the user list is enabled and an element
                                   is selected.
                                   
                                   Attention, the top and bottom margin
                                   must be the same to ensure the label
                                   is y centered relatively to the input
                                   area.
                                   -->

							<property name="margin-top">80</property>
							<property name="margin-bottom">80</property>

							<!-- Set the left margin to 16px and the
							     width of prompt label to 16 characters.
							     
							     This is a requirement to ensure good 
							     rendering when the component hbox3 is 
							     stylized (ie. colored, bordered,...) .
							  -->
							<property name="margin-left">16</property>
							<property name="width-chars">16</property>

                          </object>
                          <packing>
                            <property name="expand">False</property>
                            <property name="fill">False</property>
                            <property name="position">0</property>
                          </packing>
                        </child> <!-- prompt -->
                        
                        <child>
                          <object class="GtkScrolledWindow" id="user_list_scrolled">
                            <property name="visible">True</property>
                            <property name="can_focus">False</property>
                            <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
                            <property name="vscrollbar_policy">GTK_POLICY_NEVER</property>

							<!-- The margins are required to ensure good
							     rendering when the component hbox3 is 
							     stylized (ie. colored, bordered,...) .
							  -->

							<property name="margin-top">16</property>
							<property name="margin-bottom">16</property>
							<property name="margin-right">8</property>
                            
                            <child>
                              <object class="GtkIconView" id="user_list">
                                <property name="visible">True</property>
                                <property name="can_focus">True</property>
                                <property name="item-padding">1</property>
                                <property name="margin">2</property>
                                <property name="column-spacing">0</property>
                                <property name="row-spacing">1</property>

								<!-- It is required to limit the widht 
								     of items to 128px to ensure good 
								     rendering of hbox3 component when
								     it is stylized (ie. colored,
								     bordered,...)
								-->
                                <property name="item-width">128</property>

                              </object>
                            </child>
                          </object>
                        </child>  <!-- user_list_scrolled -->
                        
                        <child>
                          <object class="GtkEntry" id="login_entry">
                            <property name="visible">True</property>
                            <property name="can_focus">True</property>
                            <property name="invisible_char">&#x2022;</property>

							<!-- The 3 parameters below are required to
							     to ensure good rendering when the component
							     hbox3 is stylized (ie. colored, bordered,...).							     
							  -->
							<property name="margin-right">28</property>
							<property name="margin-top">64</property>
							<property name="margin-bottom">64</property>
                          </object>
                          <packing>
                            <property name="expand">False</property>
                            <property name="fill">False</property>
                            <property name="position">1</property>
                          </packing>
                        </child>  <!-- login_entry -->
                        
                      </object>
                    </child>
                  </object>
                  <packing>
                    <property name="position">0</property>
                  </packing>
                </child> <!-- alignment2 -->
              </object>
            </child>
          </object>
          <packing>
            <property name="position">2</property>
          </packing>
        </child> <!-- alignment1 -->

          <!-- The Bottom Panel 

            This panel is just below the input panel. It contains 
            the components to select the session, the language, 
            the keyboard layout, and also, to shutdown/reboot the 
            computer.
          -->
			
        <child>
          <object class="GtkEventBox" id="bottom_pane">
            <property name="visible">True</property>
            <property name="app_paintable">True</property>
            <property name="visible_window">False</property>
            <child>
              <object class="GtkHBox" id="bottom_hbox">
                <property name="visible">True</property>
                <property name="border_width">6</property>
                <property name="spacing">12</property>
                <child>
                  <object class="GtkHBox" id="sessions_box">
                    <property name="visible">True</property>
                    <property name="spacing">6</property>
                    <child>
                      <object class="GtkImage" id="image2">
                        <property name="visible">True</property>
                        <property name="pixbuf">session.png</property>
                      </object>
                      <packing>
                        <property name="expand">False</property>
                        <property name="position">0</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkLabel" id="label2">
                        <property name="visible">True</property>
                        <property name="label" translatable="yes">Desktop:</property>
                      </object>
                      <packing>
                        <property name="expand">False</property>
                        <property name="position">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkComboBox" id="sessions">
                        <property name="visible">True</property>
                        <property name="entry-text-column">0</property>
                        <property name="has-entry">True</property>
                      </object>
                      <packing>
                        <property name="expand">False</property>
                        <property name="position">2</property>
                      </packing>
                    </child>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="position">0</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkHBox" id="lang_box">
                    <property name="visible">True</property>
                    <property name="spacing">6</property>
                    <child>
                      <object class="GtkImage" id="image3">
                        <property name="visible">True</property>
                        <!--<property name="pixbuf">lang.png</property>-->
                      </object>
                      <packing>
                        <property name="expand">False</property>
                        <property name="position">0</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkLabel" id="label_lang">
                        <property name="visible">True</property>
                        <property name="label" translatable="yes">Language:</property>
                      </object>
                      <packing>
                        <property name="expand">False</property>
                        <property name="position">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkComboBox" id="lang">
                        <property name="visible">True</property>
                        <property name="entry-text-column">0</property>
                        <property name="has-entry">True</property>
                      </object>
                      <packing>
                        <property name="expand">False</property>
                        <property name="position">2</property>
                      </packing>
                    </child>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="position">1</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkLabel" id="label_keyboard">
                    <property name="label" translatable="yes">Keyboard:</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="position">2</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkComboBox" id="keyboard">
                    <property name="has-entry">True</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="position">3</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkButton" id="exit">
                    <property name="label">gtk-quit</property>
                    <property name="visible">True</property>
                    <property name="can_focus">True</property>
                    <property name="receives_default">True</property>
                    <property name="relief">none</property>
                    <property name="use_stock">True</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="pack_type">end</property>
                    <property name="position">4</property>
                  </packing>
                </child>
              </object>
            </child>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="position">3</property>
          </packing>
        </child> <!-- bottom-pane -->
      </object>
    </child>
  </object>
</interface>
