From 252d2e48dbe74e66e9201e1fa7a99b3c4d9a3c30 Mon Sep 17 00:00:00 2001
From: fly <merspieler@alwaysdata.net>
Date: Fri, 29 Nov 2024 16:58:00 +0100
Subject: [PATCH] Add ECAM panel bindings to flightgear files

Signed-off-by: fly <merspieler@alwaysdata.net>
---
 .../flightgear/HID/FLC-Meow-Pedestal-box.xml  | 359 ++++++++++++++++++
 1 file changed, 359 insertions(+)

diff --git a/Pedestal/flightgear/HID/FLC-Meow-Pedestal-box.xml b/Pedestal/flightgear/HID/FLC-Meow-Pedestal-box.xml
index f87cf8f..c77a93e 100644
--- a/Pedestal/flightgear/HID/FLC-Meow-Pedestal-box.xml
+++ b/Pedestal/flightgear/HID/FLC-Meow-Pedestal-box.xml
@@ -66,6 +66,26 @@
 			<property type="string">/controls/lighting/ped-flood-knb</property>
 		</binding>
 	</event>
+	<event>
+		<name>abs-z-translate-5</name>
+		<desc type="string">Upper ECAM Brightness</desc>
+		<min-range>-4095</min-range>
+		<max-range>4095</max-range>
+		<binding>
+			<command type="string">property-scale</command>
+			<property type="string">/controls/lighting/DU/du3</property>
+		</binding>
+	</event>
+	<event>
+		<name>abs-z-translate-6</name>
+		<desc type="string">Lower ECAM Brightness</desc>
+		<min-range>-4095</min-range>
+		<max-range>4095</max-range>
+		<binding>
+			<command type="string">property-scale</command>
+			<property type="string">/controls/lighting/DU/du4</property>
+		</binding>
+	</event>
 	<event>
 		<name>abs-z-translate-7</name>
 		<desc type="string">FloodTL Main Panel</desc>
@@ -274,4 +294,343 @@
 			</binding>
 		</mod-up>
 	</event>
+	<event>
+		<name>button-34</name>
+		<desc type="string">ECAM FUEL page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("fuelPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<!--event> TODO not implemented aircraft side yet
+		<name>button-35</name>
+		<desc type="string">ECAM ALL</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+				</script>
+			</binding>
+		</mod-up>
+	</event-->
+	<event>
+		<name>button-36</name>
+		<desc type="string">ECAM CLR</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.clrBtn();
+				ecam.FWC.Btn.clr.setValue(1);
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.FWC.Btn.clr.setValue(0);
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-38</name>
+		<desc type="string">ECAM ENG page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("enginePage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-39</name>
+		<desc type="string">ECAM APU page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("apuPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-40</name>
+		<desc type="string">ECAM CLR</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.clrBtn();
+				ecam.FWC.Btn.clr.setValue(1);
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.FWC.Btn.clr.setValue(0);
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-41</name>
+		<desc type="string">ECAM TO CONFIG</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command>property-assign</command>
+			<property>/ECAM/to-config-test</property>
+			<value>1</value>
+		</binding>
+		<mod-up>
+			<binding>
+				<command>property-assign</command>
+				<property>/ECAM/to-config-test</property>
+				<value>0</value>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-42</name>
+		<desc type="string">ECAM BLEED page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("bleedPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-43</name>
+		<desc type="string">ECAM COND page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("condPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-46</name>
+		<desc type="string">ECAM PRESS page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("cabPressPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-47</name>
+		<desc type="string">ECAM DOOR page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("doorPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-48</name>
+		<desc type="string">ECAM STS page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.stsBtn(nil);
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.stsBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-50</name>
+		<desc type="string">ECAM ELEC page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("elecPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-51</name>
+		<desc type="string">ECAM WHEEL page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("wheelPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-52</name>
+		<desc type="string">ECAM RCL</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.rclBtn();
+				ecam.FWC.Btn.recall.setValue(1);
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.FWC.Btn.recall.setValue(0);
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<!--event> TODO not implemented aircraft side
+		<name>button-53</name>
+		<desc type="string">ECAM EMER CANC</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+				</script>
+			</binding>
+		</mod-up>
+	</event-->
+	<event>
+		<name>button-54</name>
+		<desc type="string">ECAM HYD page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("hydraulicPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
+	<event>
+		<name>button-55</name>
+		<desc type="string">ECAM FCLT page</desc>
+		<repeatable type="string">false</repeatable>
+		<binding>
+			<command type="string">nasal</command>
+			<script>
+				ecam.ECAMControlPanel.sysPageBtn("fctlPage");
+			</script>
+		</binding>
+		<mod-up>
+			<binding>
+				<command type="string">nasal</command>
+				<script>
+					ecam.ECAMControlPanel.sysPageBtn("REL");
+				</script>
+			</binding>
+		</mod-up>
+	</event>
 </PropertyList>