<?xml version="1.0"?>

<PropertyList>
 <name>clouds</name>
 <layout>vbox</layout>

 <text>
  <label>Weather - Clouds</label>
 </text>

 <hrule/>


 <nasal>
  <open>
    var rebuild = func {
        var p = "/environment/rebuild-layers";
        setprop(p, getprop(p) + 1);
    }
  </open>
 </nasal>


 <!-- Header Row -->

 <group>
  <layout>table</layout>
  <padding>7</padding>

  <text>
   <label>Layer</label>
   <row>0</row>
   <col>0</col>
  </text>

  <text>
   <label>Elevation (ft)</label>
   <row>0</row>
   <col>1</col>
  </text>

  <text>
   <label>Coverage</label>
   <row>0</row>
   <col>2</col>
   <width>80</width>
  </text>

  <text>
   <label>Thickness (ft)</label>
   <row>0</row>
   <col>3</col>
  </text>


  <!-- Layer 4 -->

  <text>
   <label>4</label>
   <row>1</row>
   <col>0</col>
  </text>

  <input>
   <row>1</row>
   <col>1</col>
   <live>true</live>
   <property>/environment/clouds/layer[4]/elevation-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>

  <combo>
   <row>1</row>
   <col>2</col>
   <pref-width>100</pref-width>
   <live>true</live>
   <property>/environment/clouds/layer[4]/coverage</property>
   <value>clear</value>
   <value>few</value>
   <value>scattered</value>
   <value>broken</value>
   <value>overcast</value>
   <value>cirrus</value>
   <binding>
    <command>dialog-apply</command>
   </binding>
   <binding>
    <command>nasal</command>
    <script>rebuild()</script>
   </binding>
  </combo>

  <input>
   <row>1</row>
   <col>3</col>
   <live>true</live>
   <property>/environment/clouds/layer[4]/thickness-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>


  <!-- Layer 3 -->

  <text>
   <label>3</label>
   <row>2</row>
   <col>0</col>
  </text>

  <input>
   <row>2</row>
   <col>1</col>
   <live>true</live>
   <property>/environment/clouds/layer[3]/elevation-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>

  <combo>
   <row>2</row>
   <col>2</col>
   <pref-width>100</pref-width>
   <live>true</live>
   <property>/environment/clouds/layer[3]/coverage</property>
   <value>clear</value>
   <value>few</value>
   <value>scattered</value>
   <value>broken</value>
   <value>overcast</value>
   <value>cirrus</value>
   <binding>
    <command>dialog-apply</command>
   </binding>
   <binding>
    <command>nasal</command>
    <script>rebuild()</script>
   </binding>
  </combo>

  <input>
   <row>2</row>
   <col>3</col>
   <live>true</live>
   <property>/environment/clouds/layer[3]/thickness-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>


  <!-- Layer 2 -->

  <text>
   <label>2</label>
   <row>3</row>
   <col>0</col>
  </text>

  <input>
   <row>3</row>
   <col>1</col>
   <live>true</live>
   <property>/environment/clouds/layer[2]/elevation-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>

  <combo>
   <row>3</row>
   <col>2</col>
   <pref-width>100</pref-width>
   <live>true</live>
   <property>/environment/clouds/layer[2]/coverage</property>
   <value>clear</value>
   <value>few</value>
   <value>scattered</value>
   <value>broken</value>
   <value>overcast</value>
   <value>cirrus</value>
   <binding>
    <command>dialog-apply</command>
   </binding>
   <binding>
    <command>nasal</command>
    <script>rebuild()</script>
   </binding>
  </combo>

  <input>
   <row>3</row>
   <col>3</col>
   <live>true</live>
   <property>/environment/clouds/layer[2]/thickness-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>


  <!-- Layer 1 -->

  <text>
   <label>1</label>
   <row>4</row>
   <col>0</col>
  </text>

  <input>
   <row>4</row>
   <col>1</col>
   <live>true</live>
   <property>/environment/clouds/layer[1]/elevation-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>

  <combo>
   <row>4</row>
   <col>2</col>
   <pref-width>100</pref-width>
   <live>true</live>
   <property>/environment/clouds/layer[1]/coverage</property>
   <value>clear</value>
   <value>few</value>
   <value>scattered</value>
   <value>broken</value>
   <value>overcast</value>
   <value>cirrus</value>
   <binding>
    <command>dialog-apply</command>
   </binding>
   <binding>
    <command>nasal</command>
    <script>rebuild()</script>
   </binding>
  </combo>

  <input>
   <row>4</row>
   <col>3</col>
   <live>true</live>
   <property>/environment/clouds/layer[1]/thickness-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>


  <!-- Layer 0 -->

  <text>
   <label>0</label>
   <row>5</row>
   <col>0</col>
  </text>

  <input>
   <row>5</row>
   <col>1</col>
   <live>true</live>
   <property>/environment/clouds/layer[0]/elevation-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>

  <combo>
   <row>5</row>
   <col>2</col>
   <pref-width>100</pref-width>
   <live>true</live>
   <editable>false</editable>
   <property>/environment/clouds/layer[0]/coverage</property>
   <value>clear</value>
   <value>few</value>
   <value>scattered</value>
   <value>broken</value>
   <value>overcast</value>
   <value>cirrus</value>
   <binding>
    <command>dialog-apply</command>
   </binding>
   <binding>
    <command>nasal</command>
    <script>rebuild()</script>
   </binding>
  </combo>

  <input>
   <row>5</row>
   <col>3</col>
   <live>true</live>
   <property>/environment/clouds/layer[0]/thickness-ft</property>
   <binding>
    <command>dialog-apply</command>
   </binding>
  </input>

 </group>


 <!-- Buttons -->

 <button>
  <legend>Close</legend>
  <default>true</default>
  <binding>
   <command>dialog-close</command>
  </binding>
 </button>

</PropertyList>