<?xml version="1.0"?>

<!--
command interface /autopilot/route-manager/input:

  @clear             ... clear route
  @pop               ... remove first entry
  @delete3           ... delete 4th entry
  @insert2:ksfo@900  ... insert "ksfo@900" as 3rd entry
  ksfo@900           ... append "ksfo@900"

-->

<PropertyList>
    <name>map</name>
    <layout>vbox</layout>
    <resizable>true</resizable>

    <color>
        <red type="float">0.41</red>
        <green type="float">0.4</green>
        <blue type="float">0.42</blue>
        <alpha type="float">1.0</alpha>
        <alpha type="float">1.0</alpha>
    </color>

    <nasal>
        <open>
            var mapDialog = cmdarg();
            var setTransparency = func(updateDialog){
                var alpha = (getprop("/gui/map/transparent") or 0);
                mapDialog.getNode("color/alpha").setValue(1-alpha*0.3);
                mapDialog.getNode("color/red").setValue(0.41-alpha*0.2);
                mapDialog.getNode("color/green").setValue(0.4-alpha*0.2);
                mapDialog.getNode("color/blue").setValue(0.42-alpha*0.2);
                var n = props.Node.new({ "dialog-name": "map" });
                if (updateDialog)
                {
                    fgcommand("dialog-close", n);
                    fgcommand("dialog-show", n);
                }
            }
            setTransparency(0);
        </open>

        <close>

        </close>
    </nasal>

        <group>
            <layout>hbox</layout>
            <empty><stretch>1</stretch></empty>

            <text>
                <label>Map</label>
            </text>

            <empty><stretch>1</stretch></empty>

            <button>
                <pref-width>16</pref-width>
                <pref-height>16</pref-height>
                <legend></legend>
                <keynum>27</keynum>
                <border>2</border>

                <binding>
                    <command>dialog-close</command>
                </binding>
            </button>
        </group>
        <hrule/>

        <group>
            <layout>hbox</layout>
            <stretch>true</stretch>

            <!-- sidebar -->
            <group>
                <layout>vbox</layout>
                <text>
                    <label>Display:</label>
                </text>

                <checkbox>
                    <label>Fixes</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/draw-fixes</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>

                <checkbox>
                    <label>Navaids</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/draw-navaids</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>
<!--
                <button>
                    <legend>Airways</legend>
                    <pref-width>100</pref-width>
                </button>
-->

                <checkbox>
                    <label>Traffic</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/draw-traffic</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>

<!--
                <button>
                    <legend>Obstacles</legend>
                    <pref-width>100</pref-width>
                </button>
-->

                <checkbox>
                    <label>Data</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/draw-data</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>

                <empty><stretch>true</stretch></empty>

                <checkbox>
                    <label>Magnetic Hdgs</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/magnetic-headings</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>

                <checkbox>
                    <label>Center on Acft</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/centre-on-aircraft</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>

                <checkbox>
                    <label>Aircraft Hdg Up</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/aircraft-heading-up</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                </checkbox>

                <checkbox>
                    <label>Transparent</label>
                    <pref-width>100</pref-width>
                    <property>/gui/map/transparent</property>
                    <live>true</live>
                    <binding>
                      <command>dialog-apply</command>
                    </binding>
                    <binding>
                      <command>property-toggle</command>
                    </binding>
                    <binding>
                        <command>nasal</command>
                        <script>setTransparency(1);</script>
                    </binding>
                </checkbox>

                <empty><stretch>true</stretch></empty>

                <button>
                    <name>close</name>
                    <legend>Close</legend>
                    <pref-width>100</pref-width>
                    <default>true</default>
                    <binding>
                      <command>dialog-close</command>
                    </binding>
                </button>

            </group>

            <vrule/>

            <group>
                <layout>vbox</layout>
                <stretch>true</stretch>
                
                <map>
                    <!-- <halign>fill</halign> -->
                    <valign>fill</valign>
                    <halign>fill</halign>
                    <stretch>true</stretch>
                    <pref-height>400</pref-height>
                    <pref-width>600</pref-width>
                    <property>/gui/map</property>
                </map>
            
                <hrule/>
                
                <group>
                    <layout>hbox</layout>
                    
                    <button>
                        <name>zoomout</name>
                        <legend>-</legend>
                        <pref-width>22</pref-width>
                        <pref-height>22</pref-height>

                        <binding>
                            <command>property-adjust</command>
                            <property>/gui/map/zoom</property>
                            <min>0</min>
                            <step>-1</step>
                        </binding>
                    </button>
                    
                    <text>
                        <label>MMM</label>
                        <format>Zoom %d</format>
                        <property>/gui/map/zoom</property>
                        <live>true</live>
                    </text>
                    
                    <button>
                        <name>zoomin</name>
                        <legend>+</legend>
                        <pref-width>22</pref-width>
                        <pref-height>22</pref-height>

                        <binding>
                            <command>property-adjust</command>
                            <property>/gui/map/zoom</property>
                            <step>1</step>
                            <max>12</max>
                        </binding>
                    </button>
                </group>
            </group>
            
        </group>
</PropertyList>

