<!--
Syd Adams
777-200 Efis controller
-->

<PropertyList>

 <path>efis-ctl.ac</path>

	<effect>
		<inherits-from>Effects/model-transparent</inherits-from>
		<object-name>efisletters</object-name>
	</effect>

 	<animation>
		<type>material</type>
		<object-name>efisletters</object-name>
		<condition>
			 <greater-than>
				<property>systems/electrical/CPT-FLT-INST</property>
				<value>24.0</value>
			 </greater-than>
		</condition>
		<emission>
			<red>0.2</red>
			<green>0.8</green>
			<blue>0.2</blue>
			<factor-prop>controls/lighting/panel-flood-intencity</factor-prop>
		</emission>
	</animation>

    <animation>
        <type>rotate</type>
        <object-name>BARO.knob</object-name>
        <object-name>BARO.knob.001</object-name>
        <property>instrumentation/efis/inputs/kpa-mode</property>
        <factor>80</factor>
        <center>
            <x-m>0.02324</x-m>
            <y-m>0.04439</y-m>
            <z-m>0.02781</z-m>
        </center>
        <axis>
            <x>-1</x>
            <y>0</y>
            <z>0</z>
        </axis>
    </animation>

    <animation>
        <type>rotate</type>
        <object-name>Range.knob</object-name>
        <object-name>Range.knob.001</object-name>
        <property>instrumentation/efis/inputs/range-nm</property>
        <interpolation>
            <entry><ind>10</ind><dep>0</dep></entry>
            <entry><ind>20</ind><dep>30</dep></entry>
            <entry><ind>40</ind><dep>60</dep></entry>
            <entry><ind>80</ind><dep>90</dep></entry>
            <entry><ind>160</ind><dep>120</dep></entry>
            <entry><ind>320</ind><dep>150</dep></entry>
            <entry><ind>640</ind><dep>180</dep></entry>
        </interpolation>
        <center>
            <x-m>0.01246</x-m>
            <y-m>0.02425</y-m>
            <z-m>-0.002298</z-m>
        </center>
        <axis>
            <x>-1</x>
            <y>0</y>
            <z>0</z>
        </axis>
    </animation>

    <animation>
        <type>rotate</type>
        <object-name>MINS.knob</object-name>
        <object-name>MINS.knob.001</object-name>
        <property>instrumentation/efis/inputs/minimums-mode</property>
        <factor>80</factor>
        <center>
            <x-m>0.02322</x-m>
            <y-m>-0.042224</y-m>
            <z-m>0.02781</z-m>
        </center>
        <axis>
            <x>-1</x>
            <y>0</y>
            <z>0</z>
        </axis>
    </animation>

    <animation>
        <type>rotate</type>
        <object-name>MODE.knob</object-name>
        <object-name>MODE.knob.001</object-name>
        <property>instrumentation/efis/mfd/mode-num</property>
        <interpolation>
            <entry><ind>0</ind><dep>0</dep></entry>
            <entry><ind>1</ind><dep>30</dep></entry>
            <entry><ind>2</ind><dep>60</dep></entry>
            <entry><ind>3</ind><dep>90</dep></entry>
        </interpolation>
        <center>
            <x-m>0.01234</x-m>
            <y-m>-0.02134</y-m>
            <z-m>-0.002082</z-m>
        </center>
        <axis>
            <x>-1</x>
            <y>0</y>
            <z>0</z>
        </axis>
    </animation>

    <animation>
        <type>translate</type>
        <object-name>LVOR.toggle</object-name>
        <property>instrumentation/efis/inputs/lh-vor-adf</property>
        <factor>0.003</factor>
        <center>
            <x-m>-0.000672</x-m>
            <y-m>-0.0371</y-m>
            <z-m>-0.002628</z-m>
        </center>
        <axis>
            <x>0</x>
            <y>0</y>
            <z>1</z>
        </axis>
    </animation>

    <animation>
        <type>translate</type>
        <object-name>RVOR.toggle</object-name>
        <property>instrumentation/efis/inputs/rh-vor-adf</property>
        <factor>0.003</factor>
        <center>
            <x-m>-0.000824</x-m>
            <y-m>0.0017</y-m>
            <z-m>-0.002628</z-m>
        </center>
        <axis>
            <x>0</x>
            <y>0</y>
            <z>1</z>
        </axis>
    </animation>

<!-- 
#############   hotspots   ############## -->

    <animation>
        <type>pick</type>
        <object-name>ND.center</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("center",0);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Mtrs.btn</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/alt-meters</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>FPV.btn</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/fpv-view</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.pos</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/radar/display-controls/pos</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.data</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/radar/display-controls/data</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.terr</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/terr</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.arpt</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/arpt</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.wpt</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/wpt</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.sta</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/sta</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>RDR.wxr</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/wxr</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Rvor.toggle</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("rhvor",1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Radf.toggle</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("rhvor",-1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Lvor.toggle</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("lhvor",1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Ladf.toggle</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("lhvor",-1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>rng.inc</object-name>
        <object-name>rng2.inc</object-name>
        <object-name>rng.dec</object-name>
        <object-name>rng2.dec</object-name>
        <object-name>Range.knob</object-name>
        <object-name>Range.knob.001</object-name>
        <action>
            <button>0</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("range",1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>rng.inc</object-name>
        <object-name>rng2.inc</object-name>
        <object-name>rng.dec</object-name>
        <object-name>rng2.dec</object-name>
        <object-name>Range.knob</object-name>
        <object-name>Range.knob.001</object-name>
        <action>
            <button>1</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("range",-1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>rng.inc</object-name>
        <object-name>rng2.inc</object-name>
        <object-name>rng.dec</object-name>
        <object-name>rng2.dec</object-name>
        <object-name>TFC</object-name>
        <object-name>Range.knob</object-name>
        <object-name>Range.knob.001</object-name>
        <action>
            <button>3</button> <!--  scroll up -->
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("range",1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>rng.inc</object-name>
        <object-name>rng2.inc</object-name>
        <object-name>rng.dec</object-name>
        <object-name>rng2.dec</object-name>
        <object-name>TFC</object-name>
        <object-name>Range.knob</object-name>
        <object-name>Range.knob.001</object-name>
        <action>
            <button>4</button> <!--  scroll down -->
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("range",-1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>TFC</object-name>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/efis/inputs/tfc</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(3);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>BARO.knob</object-name>
        <object-name>BARO.knob.001</object-name>
        <action>
            <button>0</button>
            <button>3</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-assign</command>
                <property>instrumentation/efis/inputs/kpa-mode</property>
                <value>1</value>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

     <animation>
        <type>pick</type>
        <object-name>BARO.knob</object-name>
        <object-name>BARO.knob.001</object-name>
        <action>
            <button>1</button>
            <button>4</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-assign</command>
                <property>instrumentation/efis/inputs/kpa-mode</property>
                <value>0</value>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

   <animation>
        <type>pick</type>
        <object-name>inhg.inc</object-name>
        <object-name>inhg.dec</object-name>
        <action>
            <button>0</button> <!--  left button -->
            <repeatable>true</repeatable>
            <binding>
				<condition>
					<not><property>instrumentation/inputs/setting-std</property></not>
				</condition>
                <command>property-adjust</command>
                <property>instrumentation/altimeter/setting-inhg</property>
                <step>0.01</step>
                <min>26.0</min>
                <max>33.0</max>
                <wrap>false</wrap>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>inhg.inc</object-name>
        <object-name>inhg.dec</object-name>
        <action>
            <button>1</button> <!--  center button -->
            <repeatable>true</repeatable>
            <binding>
				<condition>
					<not><property>instrumentation/inputs/setting-std</property></not>
				</condition>
                <command>property-adjust</command>
                <property>instrumentation/altimeter/setting-inhg</property>
                <step>-0.01</step>
                <min>26.0</min>
                <max>33.0</max>
                <wrap>false</wrap>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>inhg.inc</object-name>
        <object-name>inhg.dec</object-name>
        <object-name>inhg.reset</object-name>
        <action>
            <button>3</button> <!--  scroll up -->
            <repeatable>false</repeatable>
            <binding>
				<condition>
					<not><property>instrumentation/inputs/setting-std</property></not>
				</condition>
                <command>property-adjust</command>
                <property>instrumentation/altimeter/setting-inhg</property>
                <step>0.01</step>
                <min>26.0</min>
                <max>33.0</max>
                <wrap>false</wrap>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>inhg.inc</object-name>
        <object-name>inhg.dec</object-name>
        <object-name>inhg.reset</object-name>
        <action>
            <button>4</button> <!--  scroll down -->
            <repeatable>false</repeatable>
            <binding>
				<condition>
					<not><property>instrumentation/inputs/setting-std</property></not>
				</condition>
                <command>property-adjust</command>
                <property>instrumentation/altimeter/setting-inhg</property>
                <step>-0.01</step>
                <min>26.0</min>
                <max>33.0</max>
                <wrap>false</wrap>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

	<animation>
        <type>pick</type>
        <object-name>inhg.reset</object-name>
        <visible>true</visible>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>property-toggle</command>
                <property>instrumentation/inputs/setting-std</property>
            </binding>
			<binding>
				<condition>
					<property>instrumentation/inputs/setting-std</property>
				</condition>
                <command>property-assign</command>
                <property>instrumentation/efis/inhg-previous</property>
                <property>instrumentation/altimeter/setting-inhg</property>
            </binding>
			<binding>
				<condition>
					<property>instrumentation/inputs/setting-std</property>
				</condition>
                <command>property-assign</command>
				<property>instrumentation/altimeter/setting-inhg</property>
				<value>29.92</value>
            </binding>
			<binding>
				<condition>
					<not><property>instrumentation/inputs/setting-std</property></not>
				</condition>
                <command>property-assign</command>
                <property>instrumentation/altimeter/setting-inhg</property>
                <property>instrumentation/efis/inhg-previous</property>
            </binding>
            <binding>
                <command>nasal</command>
                <script>controls.click(4);</script>
            </binding>
        </action>
    </animation>

	<animation>
        <type>pick</type>
        <object-name>Mins.inc</object-name>
        <object-name>Mins.dec</object-name>
        <action>
            <button>0</button>
            <button>3</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("mins",1);</script>
            </binding>
        </action>
    </animation>

	<animation>
        <type>pick</type>
        <object-name>Mins.inc</object-name>
        <object-name>Mins.dec</object-name>
        <action>
            <button>1</button>
            <button>4</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("mins",0);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>minset.inc</object-name>
        <object-name>minset.dec</object-name>
        <action>
            <button>0</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("dh",10);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>minset.inc</object-name>
        <object-name>minset.dec</object-name>
        <action>
            <button>1</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("dh",-10);</script>
            </binding>
        </action>
    </animation>
    
    <animation>
        <type>pick</type>
        <object-name>minset.dec</object-name>
        <object-name>minset.inc</object-name>
        <object-name>DH.reset</object-name>
        <action>
            <button>3</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("dh",10);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>minset.dec</object-name>
        <object-name>minset.inc</object-name>
        <object-name>DH.reset</object-name>
        <action>
            <button>4</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("dh",-10);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>DH.reset</object-name>
        <visible>true</visible>
        <action>
            <button>0</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("dh",0);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Mode.inc</object-name>
        <object-name>Mode.dec</object-name>
        <object-name>Mode2.inc</object-name>
        <object-name>Mode2.dec</object-name>
        <action>
            <button>0</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("display",1);</script>
            </binding>
        </action>
    </animation>

    <animation>
        <type>pick</type>
        <object-name>Mode.inc</object-name>
        <object-name>Mode.dec</object-name>
        <object-name>Mode2.inc</object-name>
        <object-name>Mode2.dec</object-name>
        <action>
            <button>1</button>
            <repeatable>true</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("display",-1);</script>
            </binding>
        </action>
    </animation>
    
    <animation>
        <type>pick</type>
        <object-name>Mode.inc</object-name>
        <object-name>Mode.dec</object-name>
        <object-name>Mode2.inc</object-name>
        <object-name>Mode2.dec</object-name>
        <object-name>ND.center</object-name>
        <action>
            <button>3</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("display",1);</script>
            </binding>
        </action>
    </animation>
    <animation>
        <type>pick</type>
        <object-name>Mode.inc</object-name>
        <object-name>Mode.dec</object-name>
        <object-name>Mode2.inc</object-name>
        <object-name>Mode2.dec</object-name>
        <object-name>ND.center</object-name>
        <action>
            <button>4</button>
            <repeatable>false</repeatable>
            <binding>
                <command>nasal</command>
                <script>b777.Efis.ctl_func("display",-1);</script>
            </binding>
        </action>
    </animation>

</PropertyList>
