1
0
Fork 0

Merge branch 'Work' of \New Git\fgdata

This commit is contained in:
Vivian Meazza 2010-12-29 17:23:32 +00:00
commit 9f8563f1ee
33 changed files with 1239 additions and 885 deletions

View file

@ -1,27 +0,0 @@
N 0 -118.0372167 34.08178333 0.0 J E-01-19 "rwy 01"
N 1 -118.0321833 34.09066667 0.0 J E-01-19 "rwy 19"
N 2 -118.0369167 34.08166667 0.0 H E ""
N 3 -118.03185 34.0906 0.0 H E ""
N 4 -118.03515 34.0848 0.0 T E ""
N 5 -118.0349667 34.08511667 0.0 T E ""
N 6 -118.0348333 34.08466667 0.0 T E ""
G 7 -118.0347333 34.08483333 0.0 GS 10 ""
N 8 -118.03465 34.08498333 0.0 T E ""
N 9 -118.0346 34.08456667 0.0 T E ""
G 10 -118.0345167 34.08473333 0.0 GS 10 ""
N 11 -118.0344167 34.0849 0.0 T E ""
A 0 1 R N ""
A 0 2 T N ""
A 1 3 T N ""
A 2 4 T N ""
A 4 5 T N ""
A 3 5 T N ""
A 4 6 T N ""
A 6 9 T Y ""
A 5 8 T Y ""
A 8 11 T Y ""
A 6 7 T Y ""
A 7 8 T Y ""
A 9 10 T Y ""
A 10 11 T Y ""
[End]

View file

@ -155,7 +155,7 @@ _setlistener("/sim/signals/nasal-dir-initialized", func {
menubarAutoVisibilityListener = setlistener( "/devices/status/mice/mouse/y", func(n) { menubarAutoVisibilityListener = setlistener( "/devices/status/mice/mouse/y", func(n) {
if( n.getValue() == nil ) return; if( n.getValue() == nil ) return;
if( mouseMode.getValue() != 0 ) return; if( mouseMode.getValue() != 0 ) return;
if( n.getValue() <= menubarAutoVisibilityEdge.getValue() ) if( n.getValue() <= menubarAutoVisibilityEdge.getValue() )
menubarVisibility.setBoolValue( 1 ); menubarVisibility.setBoolValue( 1 );
@ -372,10 +372,10 @@ var OverlaySelector = {
var m = Dialog.new(data.getNode("dialog", 1), "gui/dialogs/overlay-select.xml", name); var m = Dialog.new(data.getNode("dialog", 1), "gui/dialogs/overlay-select.xml", name);
m.parents = [OverlaySelector, Dialog]; m.parents = [OverlaySelector, Dialog];
# resolve the path in FG_ROOT, and --fg-aircraft dir, etc # resolve the path in FG_ROOT, and --fg-aircraft dir, etc
m.dir = resolvepath(dir) ~ "/"; m.dir = resolvepath(dir) ~ "/";
var relpath = func(p) substr(p, p[0] == `/`); var relpath = func(p) substr(p, p[0] == `/`);
m.nameprop = relpath(nameprop); m.nameprop = relpath(nameprop);
m.sortprop = relpath(sortprop or nameprop); m.sortprop = relpath(sortprop or nameprop);
@ -724,8 +724,17 @@ var showWeightDialog = func {
dialog[name].set("name", name); dialog[name].set("name", name);
dialog[name].set("layout", "vbox"); dialog[name].set("layout", "vbox");
var header = dialog[name].addChild("text"); var header = dialog[name].addChild("group");
header.set("label", title); header.set("layout", "hbox");
header.addChild("empty").set("stretch", "1");
header.addChild("text").set("label", title);
header.addChild("empty").set("stretch", "1");
var w = header.addChild("button");
w.set("pref-width", 16);
w.set("pref-height", 16);
w.set("legend", "");
w.set("default", 0);
w.setBinding("dialog-close");
dialog[name].addChild("hrule"); dialog[name].addChild("hrule");
@ -801,15 +810,17 @@ var showWeightDialog = func {
weightitem = nil; weightitem = nil;
} }
dialog[name].addChild("hrule");
var buttonBar = dialog[name].addChild("group"); var buttonBar = dialog[name].addChild("group");
buttonBar.set("layout", "hbox"); buttonBar.set("layout", "hbox");
buttonBar.set("default-padding", 10); buttonBar.set("default-padding", 10);
var ok = buttonBar.addChild("button"); var close = buttonBar.addChild("button");
ok.set("legend", "OK"); close.set("legend", "Close");
ok.set("key", "esc"); close.set("default", "true");
ok.setBinding("dialog-apply"); close.set("key", "Enter");
ok.setBinding("dialog-close"); close.setBinding("dialog-close");
# Temporary helper function # Temporary helper function
var tcell = func(parent, type, row, col) { var tcell = func(parent, type, row, col) {

View file

@ -216,12 +216,12 @@ var parse_msg = func (source, msg) {
var pos = Binary.decodeCoord(substr(msg, 6)); var pos = Binary.decodeCoord(substr(msg, 6));
var radius = Binary.decodeDouble(substr(msg, 36)); var radius = Binary.decodeDouble(substr(msg, 36));
resolve_retardant_drop(pos, radius, 0, 0); resolve_retardant_drop(pos, radius, 0, 0);
} }
if (type == 4) { if (type == 4) {
var pos = Binary.decodeCoord(substr(msg, 6)); var pos = Binary.decodeCoord(substr(msg, 6));
var radius = Binary.decodeDouble(substr(msg, 36)); var radius = Binary.decodeDouble(substr(msg, 36));
resolve_foam_drop(pos, radius, 0, 0); resolve_foam_drop(pos, radius, 0, 0);
} }
} }
############################################################################### ###############################################################################
@ -356,7 +356,7 @@ var FireCell = {
CAFire.set_cell(me.x + d[0], me.y + d[1], CAFire.set_cell(me.x + d[0], me.y + d[1],
FireCell.new(me.x + d[0], FireCell.new(me.x + d[0],
me.y + d[1])); me.y + d[1]));
} }
} }
} }
foreach (var d; CAFire.NEIGHBOURS[1]) { foreach (var d; CAFire.NEIGHBOURS[1]) {
@ -385,7 +385,7 @@ var CellModel = {
############################################################ ############################################################
new : func (x, y, alt) { new : func (x, y, alt) {
var m = { parents: [CellModel] }; var m = { parents: [CellModel] };
m.type = "none"; m.type = "none";
m.model = nil; m.model = nil;
m.lat = y * CAFire.CELL_SIZE/60.0 + 0.5 * CAFire.CELL_SIZE / 60.0; m.lat = y * CAFire.CELL_SIZE/60.0 + 0.5 * CAFire.CELL_SIZE / 60.0;
m.lon = x * CAFire.CELL_SIZE/60.0 + 0.5 * CAFire.CELL_SIZE / 60.0; m.lon = x * CAFire.CELL_SIZE/60.0 + 0.5 * CAFire.CELL_SIZE / 60.0;
@ -488,7 +488,7 @@ CAFireModels.update = func {
var c = me.pending[0]; var c = me.pending[0];
me.pending = subvec(me.pending, 1); me.pending = subvec(me.pending, 1);
work -= 1; work -= 1;
if (contains(c, "alt")) { if (contains(c, "alt")) {
if (me.grid[c.x] == nil) { if (me.grid[c.x] == nil) {
me.grid[c.x] = {}; me.grid[c.x] = {};
} }
@ -606,7 +606,7 @@ CAFire.ignite = func (lat, lon) {
# Resolve a water drop. # Resolve a water drop.
# For now: Assume that water makes the affected cell nonflammable forever # For now: Assume that water makes the affected cell nonflammable forever
# and extinguishes it if burning. # and extinguishes it if burning.
# radius - meter : double # radius - meter : double
# Note: volume is unused ATM. # Note: volume is unused ATM.
CAFire.resolve_water_drop = func (lat, lon, radius, volume=0) { CAFire.resolve_water_drop = func (lat, lon, radius, volume=0) {
trace("CAFire.resolve_water_drop: Dumping water at " ~ lat ~", " ~ lon ~ trace("CAFire.resolve_water_drop: Dumping water at " ~ lat ~", " ~ lon ~
@ -652,7 +652,7 @@ CAFire.resolve_retardant_drop = func (lat, lon, radius, volume=0) {
# Resolve a foam drop. # Resolve a foam drop.
# For now: Assume that water makes the affected cell nonflammable forever # For now: Assume that water makes the affected cell nonflammable forever
# and extinguishes it if burning. # and extinguishes it if burning.
# radius - meter : double # radius - meter : double
# Note: volume is unused ATM. # Note: volume is unused ATM.
CAFire.resolve_foam_drop = func (lat, lon, radius, volume=0) { CAFire.resolve_foam_drop = func (lat, lon, radius, volume=0) {
trace("CAFire.resolve_foam_drop: Dumping foam at " ~ lat ~", " ~ lon ~ trace("CAFire.resolve_foam_drop: Dumping foam at " ~ lat ~", " ~ lon ~
@ -904,7 +904,7 @@ _setlistener("/sim/signals/nasal-dir-initialized", func {
if (getprop(save_on_exit_pp)) if (getprop(save_on_exit_pp))
CAFire.save_event_log(SAVEDIR ~ "fire_log.xml"); CAFire.save_event_log(SAVEDIR ~ "fire_log.xml");
}); });
if (getprop(restore_on_startup_pp)) { if (getprop(restore_on_startup_pp)) {
settimer(func { settimer(func {
# Delay loading the log until the terrain is there. Note: hack. # Delay loading the log until the terrain is there. Note: hack.
@ -952,7 +952,7 @@ var dialog = {
me.x = x; me.x = x;
me.y = y; me.y = y;
me.bg = [0, 0, 0, 0.3]; # background color me.bg = [0, 0, 0, 0.3]; # background color
me.fg = [[1.0, 1.0, 1.0, 1.0]]; me.fg = [[1.0, 1.0, 1.0, 1.0]];
# #
# "private" # "private"
me.title = "Wildfire"; me.title = "Wildfire";
@ -979,12 +979,12 @@ var dialog = {
titlebar.set("layout", "hbox"); titlebar.set("layout", "hbox");
titlebar.addChild("empty").set("stretch", 1); titlebar.addChild("empty").set("stretch", 1);
titlebar.addChild("text").set("label", "Wildfire settings"); titlebar.addChild("text").set("label", "Wildfire settings");
titlebar.addChild("empty").set("stretch", 1);
var w = titlebar.addChild("button"); var w = titlebar.addChild("button");
w.set("pref-width", 16); w.set("pref-width", 16);
w.set("pref-height", 16); w.set("pref-height", 16);
w.set("legend", ""); w.set("legend", "");
w.set("default", 0); w.set("default", 0);
w.set("key", "esc");
w.setBinding("nasal", "wildfire.dialog.destroy(); "); w.setBinding("nasal", "wildfire.dialog.destroy(); ");
w.setBinding("dialog-close"); w.setBinding("dialog-close");
me.dialog.addChild("hrule"); me.dialog.addChild("hrule");
@ -1011,13 +1011,25 @@ var dialog = {
} }
me.dialog.addChild("hrule"); me.dialog.addChild("hrule");
# Buttons
var buttons = me.dialog.addChild("group");
buttons.node.setValues({"layout" : "hbox"});
# Load button. # Load button.
var load = me.dialog.addChild("button"); var load = buttons.addChild("button");
load.node.setValues({"legend" : "Load Wildfire log", load.node.setValues({"legend" : "Load Wildfire log",
"halign" : "center"}); "halign" : "center"});
load.setBinding("nasal", load.setBinding("nasal",
"wildfire.dialog.select_and_load()"); "wildfire.dialog.select_and_load()");
# Close button
var close = buttons.addChild("button");
close.node.setValues({"legend" : "Close",
"default" : "true",
"key" : "Esc"});
close.setBinding("nasal", "wildfire.dialog.destroy();");
close.setBinding("dialog-close");
fgcommand("dialog-new", me.dialog.prop()); fgcommand("dialog-new", me.dialog.prop());
fgcommand("dialog-show", me.namenode); fgcommand("dialog-show", me.namenode);
}, },

View file

@ -4,20 +4,33 @@
<name>AIcarrier</name> <name>AIcarrier</name>
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout> <layout>vbox</layout>
<!-- AI Carrier options --> <!-- AI Carrier options -->
<text> <group>
<halign>left</halign> <layout>hbox</layout>
<label>AI Carrier</label> <empty><stretch>1</stretch></empty>
<color>
<red>0.9</red> <text>
<green>0.9</green> <label>AI Carrier Controls</label>
<blue>0.9</blue> </text>
<alpha>1</alpha>
</color> <empty><stretch>1</stretch></empty>
</text>
<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> <group>
<layout>hbox</layout> <layout>hbox</layout>
@ -170,6 +183,8 @@
</empty> </empty>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>6</default-padding> <default-padding>6</default-padding>
@ -218,4 +233,4 @@
<stretch>true</stretch> <stretch>true</stretch>
</empty> </empty>
</group> </group>
</PropertyList> </PropertyList>

View file

@ -1,124 +0,0 @@
<?xml version="1.0"?>
<!-- General ATC/AI options -->
<PropertyList>
<name>ai</name>
<modal>false</modal>
<layout>vbox</layout>
<button>
<legend>-</legend>
<pref-width>16</pref-width>
<pref-height>16</pref-height>
<halign>right</halign>
<border>2</border>
<binding>
<command>dialog-close</command>
</binding>
</button>
<text>
<!-- <label>ATC/AI Options</label> -->
<label>AI Options</label>
</text>
<hrule/>
<group>
<layout>hbox</layout>
<empty>
<pref-width>10</pref-width>
</empty>
<group>
<layout>vbox</layout>
<!-- <checkbox>
<halign>left</halign>
<label>Enable ATC</label>
<property>/sim/atc/enabled</property>
</checkbox> -->
<checkbox>
<halign>left</halign>
<label>Enable AI traffic</label>
<property>/sim/ai-traffic/enabled</property>
</checkbox>
<group>
<layout>hbox</layout>
<text>
<halign>left</halign>
<label>AI traffic density:</label>
</text>
<combo>
<halign>left</halign>
<property>/sim/ai-traffic/level</property>
<value>1</value>
<value>2</value>
<value>3</value>
</combo>
</group>
</group>
<empty>
<stretch>true</stretch>
</empty>
</group>
<group>
<layout>hbox</layout>
<default-padding>6</default-padding>
<empty>
<stretch>true</stretch>
</empty>
<button>
<legend>OK</legend>
<default>true</default>
<equal>true</equal>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>dialog-close</command>
</binding>
</button>
<button>
<legend>Apply</legend>
<equal>true</equal>
<binding>
<command>dialog-apply</command>
</binding>
</button>
<button>
<legend>Reset</legend>
<equal>true</equal>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<legend>Cancel</legend>
<equal>true</equal>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
<empty>
<stretch>true</stretch>
</empty>
</group>
</PropertyList>

View file

@ -5,9 +5,27 @@
<layout>vbox</layout> <layout>vbox</layout>
<resizable>true</resizable> <resizable>true</resizable>
<text> <group>
<label>Select an Airport</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<text>
<label>Select an Airport</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/> <hrule/>
@ -97,6 +115,8 @@
</button> </button>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>10</default-padding> <default-padding>10</default-padding>

View file

@ -16,17 +16,17 @@
/autopilot/settings/true-heading-deg /autopilot/settings/true-heading-deg
/autopilot/settings/vertical-speed-fpm /autopilot/settings/vertical-speed-fpm
--> -->
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<text> <text>
<label>Autopilot Settings</label> <label>Autopilot Settings</label>
</text> </text>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<button> <button>
<pref-width>16</pref-width> <pref-width>16</pref-width>
<pref-height>16</pref-height> <pref-height>16</pref-height>
@ -536,4 +536,15 @@
</checkbox> </checkbox>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</PropertyList> </PropertyList>

View file

@ -8,25 +8,24 @@
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<text> <text>
<label>Cockpit View Options</label> <label>Cockpit View Options</label>
</text> </text>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<button> <button>
<pref-width>16</pref-width> <pref-width>16</pref-width>
<pref-height>16</pref-height> <pref-height>16</pref-height>
<legend></legend> <legend></legend>
<default>1</default>
<keynum>27</keynum> <keynum>27</keynum>
<border>2</border> <border>2</border>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>
</group> </group>
<hrule/> <hrule/>
@ -63,7 +62,7 @@
<text> <text>
<halign>center</halign> <halign>center</halign>
<label>Blackout</label> <label>Blackout</label>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -74,7 +73,7 @@
<row>0</row> <row>0</row>
<col>0</col> <col>0</col>
<label>Onset</label> <label>Onset</label>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -87,7 +86,7 @@
<format>%2.1f</format> <format>%2.1f</format>
<live>true</live> <live>true</live>
<property>/sim/rendering/redout/parameters/blackout-onset-g</property> <property>/sim/rendering/redout/parameters/blackout-onset-g</property>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -101,7 +100,7 @@
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</slider> </slider>
@ -110,7 +109,7 @@
<row>1</row> <row>1</row>
<col>0</col> <col>0</col>
<label>Complete</label> <label>Complete</label>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -123,7 +122,7 @@
<format>%2.1f</format> <format>%2.1f</format>
<live>true</live> <live>true</live>
<property>/sim/rendering/redout/parameters/blackout-complete-g</property> <property>/sim/rendering/redout/parameters/blackout-complete-g</property>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -137,7 +136,7 @@
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</slider> </slider>
@ -148,7 +147,7 @@
<text> <text>
<halign>center</halign> <halign>center</halign>
<label>Redout</label> <label>Redout</label>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -159,7 +158,7 @@
<row>0</row> <row>0</row>
<col>0</col> <col>0</col>
<label>Onset</label> <label>Onset</label>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -172,7 +171,7 @@
<format>%2.1f</format> <format>%2.1f</format>
<live>true</live> <live>true</live>
<property>/sim/rendering/redout/parameters/redout-onset-g</property> <property>/sim/rendering/redout/parameters/redout-onset-g</property>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -186,7 +185,7 @@
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</slider> </slider>
@ -207,7 +206,7 @@
<format>%2.1f</format> <format>%2.1f</format>
<live>true</live> <live>true</live>
<property>/sim/rendering/redout/parameters/redout-complete-g</property> <property>/sim/rendering/redout/parameters/redout-complete-g</property>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</text> </text>
@ -221,10 +220,21 @@
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<enable> <enable>
<property>/sim/rendering/redout/enabled</property> <property>/sim/rendering/redout/enabled</property>
</enable> </enable>
</slider> </slider>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</PropertyList> </PropertyList>

View file

@ -5,29 +5,26 @@
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout> <layout>vbox</layout>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<text> <text>
<label>Display Options</label> <label>Display Options</label>
</text> </text>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<button> <button>
<pref-width>16</pref-width> <pref-width>16</pref-width>
<pref-height>16</pref-height> <pref-height>16</pref-height>
<legend></legend> <legend></legend>
<default>1</default> <keynum>27</keynum>
<keynum>27</keynum> <border>2</border>
<border>2</border> <binding>
<binding> <command>dialog-close</command>
<command>dialog-close</command> </binding>
</binding> </button>
</button>
</group> </group>
<hrule/> <hrule/>
@ -82,4 +79,15 @@
</checkbox> </checkbox>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</PropertyList> </PropertyList>

View file

@ -7,17 +7,29 @@
<layout>vbox</layout> <layout>vbox</layout>
<!-- AI Wingman options --> <!-- AI Wingman options -->
<group>
<layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text> <text>
<halign>left</halign> <label>AI Wingman Controls</label>
<label>Wingman Controls</label> </text>
<color>
<red>0.5</red> <empty><stretch>1</stretch></empty>
<green>0.5</green>
<blue>0.5</blue> <button>
<alpha>1</alpha> <pref-width>16</pref-width>
</color> <pref-height>16</pref-height>
</text> <legend></legend>
<keynum>27</keynum>
<border>2</border>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
@ -182,7 +194,7 @@
<halign>left</halign> <halign>left</halign>
<label>Set Formation</label> <label>Set Formation</label>
</text> </text>
<button> <button>
<x>40</x> <x>40</x>
<y>10</y> <y>10</y>
@ -195,9 +207,7 @@
</group> </group>
<empty> <hrule/>
<stretch>true</stretch>
</empty>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>

View file

@ -9,24 +9,42 @@
var dlg = props.globals.getNode("/sim/gui/dialogs/gps", 1); var dlg = props.globals.getNode("/sim/gui/dialogs/gps", 1);
var cmd = gps.getNode("command", 1); var cmd = gps.getNode("command", 1);
var scratch = gps.getNode("scratch"); var scratch = gps.getNode("scratch");
scratch.getNode("exact", 1).setBoolValue(0); scratch.getNode("exact", 1).setBoolValue(0);
var searchType = scratch.getNode("type", 1); var searchType = scratch.getNode("type", 1);
var searchQuery = scratch.getNode("query", 1); var searchQuery = scratch.getNode("query", 1);
var copySearchArgs = func { var copySearchArgs = func {
searchType.setValue(dlg.getNode("search-type").getValue()); searchType.setValue(dlg.getNode("search-type").getValue());
searchQuery.setValue(dlg.getNode("search-query").getValue()); searchQuery.setValue(dlg.getNode("search-query").getValue());
} }
var slaved = props.globals.getNode("/instrumentation/nav[0]/slaved-to-gps", 1); var slaved = props.globals.getNode("/instrumentation/nav[0]/slaved-to-gps", 1);
</open> </open>
</nasal> </nasal>
<name>gps</name> <name>gps</name>
<layout>vbox</layout> <layout>vbox</layout>
<text> <group>
<layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text>
<label>GPS</label> <label>GPS</label>
</text> </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/> <hrule/>
<!-- show current state --> <!-- show current state -->
<group> <group>
@ -262,7 +280,7 @@
</text> </text>
</group> </group>
<hrule/> <hrule/>
<!-- ident text field, type combo, next/prev paging buttons <!-- ident text field, type combo, next/prev paging buttons
nearest and search buttons nearest and search buttons
--> -->
<group> <group>
@ -341,7 +359,7 @@
<script> <script>
copySearchArgs(); copySearchArgs();
scratch.getNode("max-results", 1).setIntValue(10); scratch.getNode("max-results", 1).setIntValue(10);
# ensure scratch pos is invalid, so we use current GPS # ensure scratch pos is invalid, so we use current GPS
# position as the search origin # position as the search origin
scratch.getNode("longitude-deg", 1).setDoubleValue(-9999); scratch.getNode("longitude-deg", 1).setDoubleValue(-9999);

View file

@ -1,12 +1,10 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<PropertyList> <PropertyList>
<x>-20</x>
<y>20</y>
<name>hud</name> <name>hud</name>
<layout>vbox</layout> <layout>vbox</layout>
<padding>20</padding> <padding>20</padding>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
@ -14,14 +12,13 @@
<text> <text>
<label>HUD Configuration</label> <label>HUD Configuration</label>
</text> </text>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<button> <button>
<pref-width>16</pref-width> <pref-width>16</pref-width>
<pref-height>16</pref-height> <pref-height>16</pref-height>
<legend></legend> <legend></legend>
<default>1</default>
<keynum>27</keynum> <keynum>27</keynum>
<border>2</border> <border>2</border>
<binding> <binding>
@ -174,6 +171,17 @@
</slider> </slider>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
<nasal> <nasal>
<open> <open>
gui.enable_widgets(cmdarg(), "devel-stuff", getprop("/sim/gui/devel-widgets")); gui.enable_widgets(cmdarg(), "devel-stuff", getprop("/sim/gui/devel-widgets"));

View file

@ -5,9 +5,28 @@
<name>instrument-failures</name> <name>instrument-failures</name>
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout> <layout>vbox</layout>
<text>
<label>Instrument Failures</label> <group>
</text> <layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text>
<label>Instrument Failures</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/> <hrule/>
@ -19,6 +38,8 @@
</text> </text>
</group> </group>
<hrule/>
<group> <group>
<layout>table</layout> <layout>table</layout>
<halign>center</halign> <halign>center</halign>
@ -90,7 +111,7 @@
<height>20</height> <height>20</height>
<property>/sim/failure-manager/instrumentation/nav[1]/cdi/mtbf</property> <property>/sim/failure-manager/instrumentation/nav[1]/cdi/mtbf</property>
</input> </input>
<text> <text>
<row>2</row> <row>2</row>
<col>0</col> <col>0</col>
@ -320,6 +341,8 @@
</input> </input>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<button> <button>
@ -363,7 +386,7 @@
<command>dialog-update</command> <command>dialog-update</command>
</binding> </binding>
</button> </button>
<button> <button>
<legend>Cancel</legend> <legend>Cancel</legend>
<equal>true</equal> <equal>true</equal>

View file

@ -3,209 +3,250 @@
<PropertyList> <PropertyList>
<name>instruments</name> <name>instruments</name>
<width>400</width>
<height>150</height>
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout>
<text> <group>
<x>0</x> <layout>hbox</layout>
<y>120</y> <empty><stretch>1</stretch></empty>
<label>Instrument Settings</label>
</text>
<group> <text>
<x>0</x> <label>Instrument Settings</label>
<y>90</y> </text>
<text> <empty><stretch>1</stretch></empty>
<label>ALT setting:</label>
</text> <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>table</layout>
<default-padding>5</default-padding>
<text>
<row>0</row>
<col>0</col>
<halign>right</halign>
<label>ALT setting:</label>
</text>
<group>
<row>0</row>
<col>1</col>
<layout>hbox</layout>
<default-padding>0</default-padding>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">-0.01</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">-0.10</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
</group>
<input>
<row>0</row>
<col>3</col>
<width>75</width>
<height>25</height>
<property>/instrumentation/altimeter/setting-inhg</property>
<binding>
<command>dialog-apply</command>
</binding>
</input>
<text>
<row>0</row>
<col>4</col>
<padding>0</padding>
<halign>left</halign>
<label>inHg</label>
</text>
<group>
<layout>hbox</layout>
<row>0</row>
<col>5</col>
<default-padding>0</default-padding>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">0.10</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<row>0</row>
<col>6</col>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">0.01</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
</group>
<text>
<row>1</row>
<col>0</col>
<halign>right</halign>
<label>HI offset:</label>
</text>
<group>
<layout>hbox</layout>
<default-padding>0</default-padding>
<row>1</row>
<col>1</col>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">-1.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">-10.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
</group>
<input>
<row>1</row>
<col>3</col>
<width>75</width>
<height>25</height>
<property>/instrumentation/heading-indicator/offset-deg</property>
<binding>
<command>dialog-apply</command>
</binding>
</input>
<text>
<row>1</row>
<col>4</col>
<padding>0</padding>
<halign>left</halign>
<label>deg</label>
</text>
<group>
<layout>hbox</layout>
<default-padding>0</default-padding>
<row>1</row>
<col>5</col>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">10.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">1.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
</group>
</group>
<hrule/>
<button> <button>
<x>115</x> <legend>Close</legend>
<y>2</y> <default>true</default>
<width>35</width> <key>Esc</key>
<height>26</height> <binding>
<border>1</border> <command>dialog-close</command>
<legend>&lt;</legend> </binding>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">-0.01</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button> </button>
<button>
<x>150</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">-0.10</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<input>
<x>190</x>
<y>0</y>
<width>75</width>
<height>25</height>
<label>inHg</label>
<property>/instrumentation/altimeter/setting-inhg</property>
<binding>
<command>dialog-apply</command>
</binding>
</input>
<button>
<x>315</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">0.10</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<x>350</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/altimeter/setting-inhg</property>
<step type="double">0.01</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
</group>
<group>
<x>0</x>
<y>60</y>
<text>
<label>HI offset:</label>
</text>
<button>
<x>115</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">-1.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<x>150</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&lt;&lt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">-10.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<input>
<x>190</x>
<y>0</y>
<width>75</width>
<height>25</height>
<label>deg</label>
<property>/instrumentation/heading-indicator/offset-deg</property>
<binding>
<command>dialog-apply</command>
</binding>
</input>
<button>
<x>315</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">10.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
<button>
<x>350</x>
<y>2</y>
<width>35</width>
<height>26</height>
<border>1</border>
<legend>&gt;</legend>
<binding>
<command>property-adjust</command>
<property>/instrumentation/heading-indicator/offset-deg</property>
<step type="double">1.0</step>
</binding>
<binding>
<command>dialog-update</command>
</binding>
</button>
</group>
<group>
<button>
<x>150</x>
<y>10</y>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
</PropertyList> </PropertyList>

View file

@ -10,6 +10,8 @@
<modal>false</modal> <modal>false</modal>
<text> <text>
<x>10</x> <x>10</x>
<y>570</y> <y>570</y>
@ -62,7 +64,7 @@
<x>0</x> <x>0</x>
<y>525</y> <y>525</y>
<combo> <combo>
<x>10</x> <x>10</x>
<y>0</y> <y>0</y>
@ -101,7 +103,7 @@
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</combo> </combo>
<input> <input>
<x>203</x> <x>203</x>
@ -231,7 +233,7 @@
<x>0</x> <x>0</x>
<y>440</y> <y>440</y>
<combo> <combo>
<x>10</x> <x>10</x>
<y>0</y> <y>0</y>
@ -426,7 +428,7 @@
<x>165</x> <x>165</x>
<y>0</y> <y>0</y>
<label>alt (ft)</label> <label>alt (ft)</label>
</text> </text>
<input> <input>
<x>245</x> <x>245</x>
@ -440,7 +442,7 @@
<x>320</x> <x>320</x>
<y>0</y> <y>0</y>
<label>size (km)</label> <label>size (km)</label>
</text> </text>
<input> <input>
<x>410</x> <x>410</x>
@ -649,7 +651,7 @@
<x>0</x> <x>0</x>
<y>195</y> <y>195</y>
<combo> <combo>
<x>10</x> <x>10</x>
<y>0</y> <y>0</y>

View file

@ -36,9 +36,27 @@
<close># just kept for educational purposes :-)</close> <close># just kept for educational purposes :-)</close>
</nasal> </nasal>
<text> <group>
<label>Location (in air)</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<text>
<label>Position Aircraft In Air</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/> <hrule/>
@ -48,7 +66,7 @@
<group> <group>
<layout>table</layout> <layout>table</layout>
<halign>left</halign> <halign>center</halign>
<radio> <radio>
<row>0</row><col>0</col> <row>0</row><col>0</col>
<live>true</live> <live>true</live>
@ -63,6 +81,7 @@
</radio> </radio>
<text> <text>
<row>0</row><col>1</col> <row>0</row><col>1</col>
<halign>right</halign>
<label>Airport:</label> <label>Airport:</label>
</text> </text>
<input> <input>
@ -71,6 +90,7 @@
</input> </input>
<text> <text>
<row>0</row><col>3</col> <row>0</row><col>3</col>
<halign>right</halign>
<label>Runway:</label> <label>Runway:</label>
</text> </text>
<input> <input>
@ -92,6 +112,7 @@
</radio> </radio>
<text> <text>
<row>1</row><col>1</col> <row>1</row><col>1</col>
<halign>right</halign>
<label>Longitude:</label> <label>Longitude:</label>
</text> </text>
<input> <input>
@ -100,6 +121,7 @@
</input> </input>
<text> <text>
<row>1</row><col>3</col> <row>1</row><col>3</col>
<halign>right</halign>
<label>Latitude:</label> <label>Latitude:</label>
</text> </text>
<input> <input>
@ -178,6 +200,8 @@
</input> </input>
</group> </group>
<hrule/>
<text> <text>
<label>Relative Position</label> <label>Relative Position</label>
</text> </text>
@ -246,6 +270,8 @@
</input> </input>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>10</default-padding> <default-padding>10</default-padding>

View file

@ -3,18 +3,42 @@
<name>location-of-tower</name> <name>location-of-tower</name>
<layout>vbox</layout> <layout>vbox</layout>
<text>
<label>Select tower for the Tower View</label> <group>
</text> <layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text>
<label>Tower Position</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/> <hrule/>
<text>
<label>Select position of tower for the Tower Views</label>
</text>
<group> <group>
<layout>table</layout> <layout>table</layout>
<text> <text>
<row>0</row><col>0</col> <row>0</row><col>0</col>
<label>Airport ID</label> <halign>right</halign>
<label>Airport ID:</label>
</text> </text>
<input> <input>
<name>airport-id</name> <name>airport-id</name>
@ -94,7 +118,7 @@
NASAL dialog) to assign text to the widget rather NASAL dialog) to assign text to the widget rather
than to the underlying property and doing an update? than to the underlying property and doing an update?
The way it is now CANCEL doesn't undo PRESET :-( The way it is now CANCEL doesn't undo PRESET :-(
--> -->
<binding> <binding>
<command>property-assign</command> <command>property-assign</command>
@ -114,10 +138,10 @@
<row>3</row><col>3</col> <row>3</row><col>3</col>
<stretch>true</stretch> <stretch>true</stretch>
</empty> </empty>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>10</default-padding> <default-padding>10</default-padding>
@ -128,10 +152,10 @@
<default>true</default> <default>true</default>
<equal>true</equal> <equal>true</equal>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>
@ -142,7 +166,7 @@
<equal>true</equal> <equal>true</equal>
<key>Esc</key> <key>Esc</key>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>

View file

@ -4,9 +4,27 @@
<name>location-on-ground</name> <name>location-on-ground</name>
<layout>vbox</layout> <layout>vbox</layout>
<text> <group>
<label>Set New Location</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<text>
<label>Position Aircraft On Ground</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/> <hrule/>
@ -19,7 +37,7 @@
rwy.setValue(""); rwy.setValue("");
var parkpos = dlg.getNode("parkpos", 1); var parkpos = dlg.getNode("parkpos", 1);
parkpos.setValue(""); parkpos.setValue("");
var mode = { var mode = {
runway: dlg.getNode("use_runway", 1), runway: dlg.getNode("use_runway", 1),
parkpos: dlg.getNode("use_parkpos", 1) parkpos: dlg.getNode("use_parkpos", 1)
@ -42,12 +60,13 @@
if (!initialized) { if (!initialized) {
set_radio("runway"); set_radio("runway");
} }
var runways = dlg.getNode("available-runways", 1); var runways = dlg.getNode("available-runways", 1);
var updateRunways = func {
var updateRunways = func {
var icao = dlg.getNode("airport").getValue(); var icao = dlg.getNode("airport").getValue();
runways.removeChildren("value"); runways.removeChildren("value");
var apt = airportinfo(icao); var apt = airportinfo(icao);
if (apt != nil) { if (apt != nil) {
var i=0; var i=0;
@ -56,7 +75,8 @@
i += 1; i += 1;
} }
} }
gui.dialog_update("location-on-ground");
gui.dialog_update("location-on-ground");
} }
</open> </open>
</nasal> </nasal>
@ -64,20 +84,20 @@
<group> <group>
<layout>table</layout> <layout>table</layout>
<halign>center</halign> <halign>center</halign>
<text> <text>
<row>0</row><col>1</col> <row>0</row><col>1</col>
<halign>right</halign> <halign>right</halign>
<label>Airport:</label> <label>Airport:</label>
</text> </text>
<input> <input>
<row>0</row><col>2</col> <row>0</row><col>2</col>
<property>/sim/gui/dialogs/location-on-ground/airport</property> <property>/sim/gui/dialogs/location-on-ground/airport</property>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script>updateRunways();</script> <script>updateRunways();</script>
</binding> </binding>
@ -92,18 +112,18 @@
<script>set_radio("runway")</script> <script>set_radio("runway")</script>
</binding> </binding>
</radio> </radio>
<text> <text>
<row>1</row><col>1</col> <row>1</row><col>1</col>
<halign>right</halign> <halign>right</halign>
<label>Runway:</label> <label>Runway:</label>
</text> </text>
<combo> <combo>
<name>runway</name> <name>runway</name>
<row>1</row><col>2</col> <row>1</row><col>2</col>
<pref-width>85</pref-width> <pref-width>85</pref-width>
<enable> <enable>
<property>/sim/gui/dialogs/location-on-ground/use_runway</property> <property>/sim/gui/dialogs/location-on-ground/use_runway</property>
</enable> </enable>
<property>sim/gui/dialogs/location-on-ground/runway</property> <property>sim/gui/dialogs/location-on-ground/runway</property>
@ -114,7 +134,7 @@
<object-name>runway</object-name> <object-name>runway</object-name>
</binding> </binding>
</combo> </combo>
<radio> <radio>
<row>2</row><col>0</col> <row>2</row><col>0</col>
<property>/sim/gui/dialogs/location-on-ground/use_parkpos</property> <property>/sim/gui/dialogs/location-on-ground/use_parkpos</property>
@ -124,22 +144,24 @@
<script>set_radio("parkpos")</script> <script>set_radio("parkpos")</script>
</binding> </binding>
</radio> </radio>
<text> <text>
<row>2</row><col>1</col> <row>2</row><col>1</col>
<halign>right</halign> <halign>right</halign>
<label>Parking:</label> <label>Parking:</label>
</text> </text>
<input> <input>
<row>2</row><col>2</col> <row>2</row><col>2</col>
<enable> <enable>
<property>/sim/gui/dialogs/location-on-ground/use_parkpos</property> <property>/sim/gui/dialogs/location-on-ground/use_parkpos</property>
</enable> </enable>
<property>/sim/gui/dialogs/location-on-ground/parkpos</property> <property>/sim/gui/dialogs/location-on-ground/parkpos</property>
</input> </input>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>10</default-padding> <default-padding>10</default-padding>

View file

@ -4,6 +4,30 @@
<name>pilot_offset</name> <name>pilot_offset</name>
<layout>vbox</layout> <layout>vbox</layout>
<group>
<layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text>
<label>Adjust View Position</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> <group>
<layout>hbox</layout> <layout>hbox</layout>
@ -19,7 +43,7 @@
<property>/sim/current-view/x-offset-m</property> <property>/sim/current-view/x-offset-m</property>
<binding><command>dialog-apply</command></binding> <binding><command>dialog-apply</command></binding>
</dial> </dial>
<text> <text>
<label>-100.00</label> <label>-100.00</label>
<format>%-0.2f m</format> <format>%-0.2f m</format>
@ -27,7 +51,7 @@
<property>/sim/current-view/x-offset-m</property> <property>/sim/current-view/x-offset-m</property>
</text> </text>
</group> </group>
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
@ -71,11 +95,13 @@
</group> </group>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
<button> <button>
<legend>OK</legend> <legend>Close</legend>
<equal>true</equal> <equal>true</equal>
<default>true</default> <default>true</default>
<key>Esc</key> <key>Esc</key>

View file

@ -3,46 +3,74 @@
<PropertyList> <PropertyList>
<name>radios</name> <name>radios</name>
<width>600</width> <width>550</width>
<height>370</height>
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout>
<text> <group>
<x>10</x> <layout>hbox</layout>
<y>300</y> <empty><stretch>1</stretch></empty>
<label>Radio Frequencies</label>
</text> <text>
<label>Radio Frequencies</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>table</layout>
<!-- headers --> <!-- headers -->
<group>
<x>0</x>
<y>280</y>
<text> <text>
<x>75</x> <row>0</row>
<col>1</col>
<label>Selected</label> <label>Selected</label>
</text> </text>
<text> <text>
<x>300</x> <row>0</row>
<col>4</col>
<label>Standby</label> <label>Standby</label>
</text> </text>
<text> <text>
<x>450</x> <row>0</row>
<col>6</col>
<label>Radial</label> <label>Radial</label>
</text> </text>
</group>
<group> <!-- Dummy label to stretch table, as layout manager doesn't handle labels well -->
<x>0</x> <text>
<y>240</y> <row>0</row>
<col>7</col>
<label></label>
</text>
<text> <text>
<row>1</row>
<col>0</col>
<halign>right</halign>
<label>COM1</label> <label>COM1</label>
</text> </text>
<input> <input>
<name>com1-selected</name> <name>com1-selected</name>
<x>75</x> <row>1</row>
<y>0</y> <col>1</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
@ -50,8 +78,8 @@
</input> </input>
<button> <button>
<x>220</x> <row>1</row>
<y>2</y> <col>3</col>
<width>35</width> <width>35</width>
<height>26</height> <height>26</height>
<border>1</border> <border>1</border>
@ -81,28 +109,25 @@
<input> <input>
<name>com1-standby</name> <name>com1-standby</name>
<x>300</x> <row>1</row>
<y>0</y> <col>4</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property> <property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
</input> </input>
</group>
<group>
<x>0</x>
<y>210</y>
<text> <text>
<row>2</row>
<col>0</col>
<halign>right</halign>
<label>COM2</label> <label>COM2</label>
</text> </text>
<input> <input>
<name>com2-selected</name> <name>com2-selected</name>
<x>75</x> <row>2</row>
<y>0</y> <col>1</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
@ -110,8 +135,8 @@
</input> </input>
<button> <button>
<x>220</x> <row>2</row>
<y>2</y> <col>3</col>
<width>35</width> <width>35</width>
<height>26</height> <height>26</height>
<border>1</border> <border>1</border>
@ -141,28 +166,25 @@
<input> <input>
<name>com2-standby</name> <name>com2-standby</name>
<x>300</x> <row>2</row>
<y>0</y> <col>4</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
<property>/instrumentation/comm[1]/frequencies/standby-mhz</property> <property>/instrumentation/comm[1]/frequencies/standby-mhz</property>
</input> </input>
</group>
<group>
<x>0</x>
<y>180</y>
<text> <text>
<row>3</row>
<col>0</col>
<halign>right</halign>
<label>NAV1</label> <label>NAV1</label>
</text> </text>
<input> <input>
<name>nav1-selected</name> <name>nav1-selected</name>
<x>75</x> <row>3</row>
<y>0</y> <col>1</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
@ -170,8 +192,8 @@
</input> </input>
<button> <button>
<x>220</x> <row>3</row>
<y>2</y> <col>3</col>
<width>35</width> <width>35</width>
<height>26</height> <height>26</height>
<border>1</border> <border>1</border>
@ -201,8 +223,8 @@
<input> <input>
<name>nav1-standby</name> <name>nav1-standby</name>
<x>300</x> <row>3</row>
<y>0</y> <col>4</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
@ -211,28 +233,25 @@
<input> <input>
<name>nav1-radial</name> <name>nav1-radial</name>
<x>450</x> <row>3</row>
<y>0</y> <col>6</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>deg</label> <label>deg</label>
<property>/instrumentation/nav[0]/radials/selected-deg</property> <property>/instrumentation/nav[0]/radials/selected-deg</property>
</input> </input>
</group>
<group>
<x>0</x>
<y>150</y>
<text> <text>
<row>4</row>
<col>0</col>
<halign>right</halign>
<label>NAV2</label> <label>NAV2</label>
</text> </text>
<input> <input>
<name>nav2-selected</name> <name>nav2-selected</name>
<x>75</x> <row>4</row>
<y>0</y> <col>1</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
@ -240,8 +259,8 @@
</input> </input>
<button> <button>
<x>220</x> <row>4</row>
<y>2</y> <col>3</col>
<width>35</width> <width>35</width>
<height>26</height> <height>26</height>
<border>1</border> <border>1</border>
@ -271,8 +290,8 @@
<input> <input>
<name>nav2-standby</name> <name>nav2-standby</name>
<x>300</x> <row>4</row>
<y>0</y> <col>4</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
@ -281,28 +300,25 @@
<input> <input>
<name>nav2-radial</name> <name>nav2-radial</name>
<x>450</x> <row>4</row>
<y>0</y> <col>6</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>deg</label> <label>deg</label>
<property>/instrumentation/nav[1]/radials/selected-deg</property> <property>/instrumentation/nav[1]/radials/selected-deg</property>
</input> </input>
</group>
<group>
<x>0</x>
<y>120</y>
<text> <text>
<row>5</row>
<col>0</col>
<halign>right</halign>
<label>ADF</label> <label>ADF</label>
</text> </text>
<input> <input>
<name>adf-selected</name> <name>adf-selected</name>
<x>75</x> <row>5</row>
<y>0</y> <col>1</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>kHz</label> <label>kHz</label>
@ -310,8 +326,8 @@
</input> </input>
<button> <button>
<x>220</x> <row>5</row>
<y>2</y> <col>3</col>
<width>35</width> <width>35</width>
<height>26</height> <height>26</height>
<border>1</border> <border>1</border>
@ -341,8 +357,8 @@
<input> <input>
<name>adf-standby</name> <name>adf-standby</name>
<x>300</x> <row>5</row>
<y>0</y> <col>4</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>kHz</label> <label>kHz</label>
@ -350,50 +366,48 @@
</input> </input>
<input> <input>
<name>nav2-radial</name> <name>adf-radial</name>
<x>450</x> <row>5</row>
<y>0</y> <col>6</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>deg</label> <label>deg</label>
<property>/instrumentation/adf/rotation-deg</property> <property>/instrumentation/adf/rotation-deg</property>
</input> </input>
</group>
<group>
<x>0</x>
<y>90</y>
<text> <text>
<row>6</row>
<col>0</col>
<halign>right</halign>
<label>DME</label> <label>DME</label>
</text> </text>
<input> <input>
<name>dme-selected</name> <name>dme-selected</name>
<x>75</x> <row>6</row>
<y>0</y> <col>1</col>
<width>75</width> <width>75</width>
<height>25</height> <height>25</height>
<label>MHz</label> <label>MHz</label>
<property>/instrumentation/dme/frequencies/selected-mhz</property> <property>/instrumentation/dme/frequencies/selected-mhz</property>
</input> </input>
</group>
<group> </group>
<x>0</x>
<y>60</y>
<text> <hrule/>
<group>
<layout>hbox</layout>
<text>
<label>TACAN</label> <label>TACAN</label>
</text> </text>
<combo> <combo>
<x>75</x> <pref-width>45</pref-width>
<y>0</y> <pref-height>25</pref-height>
<width>45</width>
<height>25</height>
<property>/instrumentation/tacan/frequencies/selected-channel[1]</property> <property>/instrumentation/tacan/frequencies/selected-channel[1]</property>
<value>0</value> <value>0</value>
<value>1</value> <value>1</value>
@ -408,10 +422,8 @@
</combo> </combo>
<!----> <!---->
<combo> <combo>
<x>120</x> <pref-width>45</pref-width>
<y>0</y> <pref-height>25</pref-height>
<width>45</width>
<height>25</height>
<property>/instrumentation/tacan/frequencies/selected-channel[2]</property> <property>/instrumentation/tacan/frequencies/selected-channel[2]</property>
<value>0</value> <value>0</value>
<value>1</value> <value>1</value>
@ -426,10 +438,8 @@
</combo> </combo>
<combo> <combo>
<x>165</x> <pref-width>45</pref-width>
<y>0</y> <pref-height>25</pref-height>
<width>45</width>
<height>25</height>
<property>/instrumentation/tacan/frequencies/selected-channel[3]</property> <property>/instrumentation/tacan/frequencies/selected-channel[3]</property>
<value>0</value> <value>0</value>
<value>1</value> <value>1</value>
@ -444,76 +454,77 @@
</combo> </combo>
<combo> <combo>
<x>210</x> <pref-width>45</pref-width>
<y>0</y> <pref-height>25</pref-height>
<width>47</width>
<height>25</height>
<property>/instrumentation/tacan/frequencies/selected-channel[4]</property> <property>/instrumentation/tacan/frequencies/selected-channel[4]</property>
<value>X</value> <value>X</value>
<value>Y</value> <value>Y</value>
</combo> </combo>
<empty>
<stretch>true</stretch>
</empty>
<!-- Disabled for v2.2.0, as ATC Frequency Search broken
<button>
<legend>ATC Services in range</legend>
<binding>
<command>ATC-freq-search</command>
</binding>
</button>
-->
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout>
<default-padding>6</default-padding>
<empty>
<stretch>true</stretch>
</empty>
<button> <button>
<x>105</x> <legend>OK</legend>
<y>10</y> <default>true</default>
<legend>OK</legend> <equal>true</equal>
<default>true</default> <binding>
<equal>true</equal> <command>dialog-apply</command>
<binding> </binding>
<command>dialog-apply</command> <binding>
</binding> <command>dialog-close</command>
<binding> </binding>
<command>dialog-close</command> </button>
</binding>
</button>
<button> <button>
<x>205</x> <legend>Apply</legend>
<y>10</y> <equal>true</equal>
<legend>Apply</legend> <binding>
<equal>true</equal> <command>dialog-apply</command>
<binding> </binding>
<command>dialog-apply</command> </button>
</binding>
</button>
<button> <button>
<x>305</x> <legend>Reset</legend>
<y>10</y> <equal>true</equal>
<legend>Reset</legend> <binding>
<equal>true</equal> <command>dialog-update</command>
<binding> </binding>
<command>dialog-update</command> </button>
</binding>
</button>
<button> <button>
<x>405</x> <legend>Cancel</legend>
<y>10</y> <equal>true</equal>
<legend>Cancel</legend> <key>Esc</key>
<equal>true</equal> <binding>
<key>Esc</key> <command>dialog-close</command>
<binding> </binding>
<command>dialog-close</command> </button>
</binding>
</button>
</group> <empty>
<group> <stretch>true</stretch>
<x>400</x> </empty>
<y>60</y>
<button>
<legend>ATC Services in range</legend>
<binding>
<command>ATC-freq-search</command>
</binding>
</button>
</group> </group>
</PropertyList> </PropertyList>

View file

@ -9,7 +9,7 @@
<nasal> <nasal>
<open> <open>
<![CDATA[ <![CDATA[
var groups = cmdarg().getChildren("group")[0].getChildren("group"); var groups = cmdarg().getChildren("group")[1].getChildren("group");
var mtbfNodes = groups[0].getChildren("radio"); var mtbfNodes = groups[0].getChildren("radio");
var mcbfNodes = groups[1].getChildren("radio"); var mcbfNodes = groups[1].getChildren("radio");
@ -40,13 +40,32 @@
</open> </open>
</nasal> </nasal>
<text> <group>
<label>Random Failures</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<hrule></hrule> <text>
<label>Random Failures</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/>
<text> <text>
<halign>left</halign>
<label>Configure MTBF/MCBF for all systems and instruments.</label> <label>Configure MTBF/MCBF for all systems and instruments.</label>
</text> </text>
@ -166,17 +185,17 @@
</group> </group>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
<vrule/> <vrule/>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
<halign>left</halign> <halign>left</halign>
<valign>top</valign> <valign>top</valign>
<stretch>true</stretch> <stretch>true</stretch>
<text> <text>
<halign>center</halign> <halign>center</halign>
<label>Mean Cycles Between Failures</label> <label>Mean Cycles Between Failures</label>
@ -332,7 +351,7 @@
</button> </button>
<button> <button>
<legend>Close</legend> <legend>Cancel</legend>
<equal>true</equal> <equal>true</equal>
<key>Esc</key> <key>Esc</key>
<binding> <binding>

View file

@ -9,18 +9,17 @@
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<text> <text>
<label>Rendering options</label> <label>Rendering options</label>
</text> </text>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<button> <button>
<pref-width>16</pref-width> <pref-width>16</pref-width>
<pref-height>16</pref-height> <pref-height>16</pref-height>
<legend></legend> <legend></legend>
<default>1</default>
<keynum>27</keynum> <keynum>27</keynum>
<border>2</border> <border>2</border>
<binding> <binding>
@ -28,16 +27,16 @@
</binding> </binding>
</button> </button>
</group> </group>
<hrule/> <hrule/>
<group> <group>
<halign>center</halign> <halign>center</halign>
<layout>hbox</layout> <layout>hbox</layout>
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
<text> <text>
<halign>left</halign> <halign>left</halign>
<label>"Material shaders" must be enabled for most options.</label> <label>"Material shaders" must be enabled for most options.</label>
@ -46,14 +45,31 @@
<halign>left</halign> <halign>left</halign>
<label>Snow is dependant on crop, landmass and urban shaders.</label> <label>Snow is dependant on crop, landmass and urban shaders.</label>
</text> </text>
<group> <group>
<layout>vbox</layout> <layout>hbox</layout>
<stretch>1</stretch> <text>
<label>General</label>
<halign>left</halign>
</text>
<hrule>
<stretch>true</stretch>
</hrule>
</group> </group>
<checkbox>
<halign>left</halign>
<label>Wireframe</label>
<name>wireframe</name>
<property>/sim/rendering/wireframe</property>
<binding>
<command>dialog-apply</command>
<object-name>wireframe</object-name>
</binding>
</checkbox>
<!-- <!--
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<text> <text>
@ -109,7 +125,7 @@
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</checkbox> </checkbox>
--> -->
<group> <group>
@ -144,9 +160,9 @@
<object-name>precipitation</object-name> <object-name>precipitation</object-name>
</binding> </binding>
</checkbox> </checkbox>
<!-- <!--
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Lightning</label> <label>Lightning</label>
@ -164,7 +180,7 @@
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</checkbox> </checkbox>
--> -->
<checkbox> <checkbox>
@ -180,7 +196,7 @@
<object-name>random-vegetation</object-name> <object-name>random-vegetation</object-name>
</binding> </binding>
</checkbox> </checkbox>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<text> <text>
@ -191,9 +207,9 @@
<stretch>true</stretch> <stretch>true</stretch>
</hrule> </hrule>
</group> </group>
<!-- <!--
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>2D clouds</label> <label>2D clouds</label>
@ -202,7 +218,7 @@
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</checkbox> </checkbox>
--> -->
<checkbox> <checkbox>
@ -218,7 +234,7 @@
<object-name>3d-clouds</object-name> <object-name>3d-clouds</object-name>
</binding> </binding>
</checkbox> </checkbox>
<!-- <!--
<group> <group>
@ -242,7 +258,7 @@
<property>/sim/rendering/clouds3d-density</property> <property>/sim/rendering/clouds3d-density</property>
</text> </text>
</group> </group>
--> -->
<group> <group>
@ -286,14 +302,14 @@
<property>/sim/rendering/clouds3d-vis-range</property> <property>/sim/rendering/clouds3d-vis-range</property>
</text> </text>
</group> </group>
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
<stretch>1</stretch> <stretch>1</stretch>
</group> </group>
</group> </group>
<vrule/> <vrule/>
<group> <group>
@ -380,7 +396,7 @@
<object-name>urban-effects</object-name> <object-name>urban-effects</object-name>
</binding> </binding>
</checkbox> </checkbox>
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Transition effects</label> <label>Transition effects</label>
@ -497,10 +513,21 @@
<property>/sim/rendering/quality-level</property> <property>/sim/rendering/quality-level</property>
</text> </text>
</group> </group>
</group> </group>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
<nasal> <nasal>
<open> <open>
gui.enable_widgets(cmdarg(), "shadows-debug", getprop("/sim/gui/devel-widgets")); gui.enable_widgets(cmdarg(), "shadows-debug", getprop("/sim/gui/devel-widgets"));

View file

@ -4,15 +4,34 @@
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout> <layout>vbox</layout>
<text> <group>
<label>Instant Replay</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<text>
<label>Instant Replay</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/> <hrule/>
<nasal> <nasal>
<open> <open>
# Populate the view combo box with a list of the available views # Populate the view combo box with a list of the available views
var combo = cmdarg().getNode("group").getNode("combo"); var combo = cmdarg().getChildren("group")[1].getNode("combo");
combo.removeChildren("value"); combo.removeChildren("value");
var current_view = getprop("/sim/current-view/view-number"); var current_view = getprop("/sim/current-view/view-number");
@ -29,7 +48,7 @@
if (v.getIndex() == current_view) { if (v.getIndex() == current_view) {
setprop("/sim/replay/view-name", name); setprop("/sim/replay/view-name", name);
} }
combo.getNode("value[" ~ i ~ "]", 1).setValue(name); combo.getNode("value[" ~ i ~ "]", 1).setValue(name);
i = i + 1; i = i + 1;
} }
@ -38,25 +57,25 @@
<group> <group>
<layout>table</layout> <layout>table</layout>
<text> <text>
<row>0</row><col>0</col> <row>0</row><col>0</col>
<halign>right</halign> <halign>right</halign>
<label>Duration:</label> <label>Duration:</label>
</text> </text>
<input> <input>
<row>0</row><col>1</col> <row>0</row><col>1</col>
<halign>left</halign> <halign>left</halign>
<property>/sim/replay/duration</property> <property>/sim/replay/duration</property>
</input> </input>
<text> <text>
<row>1</row><col>0</col> <row>1</row><col>0</col>
<halign>right</halign> <halign>right</halign>
<label>View:</label> <label>View:</label>
</text> </text>
<combo> <combo>
<row>1</row><col>1</col> <row>1</row><col>1</col>
<halign>left</halign> <halign>left</halign>
@ -65,8 +84,8 @@
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</combo> </combo>
<text> <text>
<row>2</row><col>0</col> <row>2</row><col>0</col>
<halign>right</halign> <halign>right</halign>
@ -81,7 +100,7 @@
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</checkbox> </checkbox>
</group> </group>
<hrule/> <hrule/>
@ -90,7 +109,7 @@
<halign>left</halign> <halign>left</halign>
<label>During replay:</label> <label>During replay:</label>
</text> </text>
<group> <group>
<layout>table</layout> <layout>table</layout>
@ -99,31 +118,31 @@
<halign>center</halign> <halign>center</halign>
<label>v/V</label> <label>v/V</label>
</text> </text>
<text> <text>
<row>1</row><col>1</col> <row>1</row><col>1</col>
<halign>left</halign> <halign>left</halign>
<label>Change view</label> <label>Change view</label>
</text> </text>
<text> <text>
<row>2</row><col>0</col> <row>2</row><col>0</col>
<halign>center</halign> <halign>center</halign>
<label>Ctrl-v</label> <label>Ctrl-v</label>
</text> </text>
<text> <text>
<row>2</row><col>1</col> <row>2</row><col>1</col>
<halign>left</halign> <halign>left</halign>
<label>Reset view</label> <label>Reset view</label>
</text> </text>
<text> <text>
<row>3</row><col>0</col> <row>3</row><col>0</col>
<halign>center</halign> <halign>center</halign>
<label>p p</label> <label>p p</label>
</text> </text>
<text> <text>
<row>3</row><col>1</col> <row>3</row><col>1</col>
<halign>left</halign> <halign>left</halign>
@ -132,7 +151,7 @@
</group> </group>
<hrule/> <hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
@ -141,7 +160,7 @@
<default>true</default> <default>true</default>
<equal>true</equal> <equal>true</equal>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
@ -151,10 +170,10 @@
</script> </script>
</binding> </binding>
<binding> <binding>
<command>replay</command> <command>replay</command>
</binding> </binding>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
@ -163,7 +182,7 @@
<equal>true</equal> <equal>true</equal>
<key>Esc</key> <key>Esc</key>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>

View file

@ -21,7 +21,7 @@ command interface /autopilot/route-manager/input:
var ft = getprop("/sim/startup/units") == "feet"; var ft = getprop("/sim/startup/units") == "feet";
var dlg = props.globals.getNode("/sim/gui/dialogs/route-manager", 1); var dlg = props.globals.getNode("/sim/gui/dialogs/route-manager", 1);
var selection = dlg.getNode("selection", 1); var selection = dlg.getNode("selection", 1);
var input = dlg.getNode("input", 1); var input = dlg.getNode("input", 1);
var routem = props.globals.getNode("/autopilot/route-manager", 1); var routem = props.globals.getNode("/autopilot/route-manager", 1);
selection.setIntValue(-1); selection.setIntValue(-1);
@ -32,7 +32,7 @@ command interface /autopilot/route-manager/input:
var route = routem.getNode("route", 1); var route = routem.getNode("route", 1);
var dep = routem.getNode("departure", 1); var dep = routem.getNode("departure", 1);
var dest = routem.getNode("destination", 1); var dest = routem.getNode("destination", 1);
var sel_index = func { var sel_index = func {
return int(selection.getValue()); return int(selection.getValue());
} }
@ -47,10 +47,10 @@ command interface /autopilot/route-manager/input:
# when selection index is valid, insert *after* the waypoint # when selection index is valid, insert *after* the waypoint
insertIndex = insertIndex + 1; insertIndex = insertIndex + 1;
} }
cmd.setValue("@insert" ~ insertIndex ~ ":" ~ input.getValue()); cmd.setValue("@insert" ~ insertIndex ~ ":" ~ input.getValue());
input.setValue(""); input.setValue("");
if (insertIndex >= 0) { if (insertIndex >= 0) {
selection.setValue(insertIndex); selection.setValue(insertIndex);
gui.dialog_update("route-manager"); gui.dialog_update("route-manager");
@ -60,15 +60,15 @@ command interface /autopilot/route-manager/input:
var remove = func { var remove = func {
cmd.setValue("@delete" ~ sel_index()); cmd.setValue("@delete" ~ sel_index());
} }
var route = func { var route = func {
cmd.setValue("@route" ~ sel_index()); cmd.setValue("@route" ~ sel_index());
} }
var jump_to = func { var jump_to = func {
cmd.setValue("@jump" ~ sel_index()); cmd.setValue("@jump" ~ sel_index());
} }
var load_route = func(path) { var load_route = func(path) {
routem.getNode("file-path", 1).setValue(path.getValue()); routem.getNode("file-path", 1).setValue(path.getValue());
cmd.setValue("@load"); cmd.setValue("@load");
@ -80,26 +80,26 @@ command interface /autopilot/route-manager/input:
cmd.setValue("@save"); cmd.setValue("@save");
gui.dialog_update("route-manager"); gui.dialog_update("route-manager");
} }
var file_selector = gui.FileSelector.new(load_route, "Load flight-plan", "Load"); var file_selector = gui.FileSelector.new(load_route, "Load flight-plan", "Load");
var save_selector = gui.FileSelector.new(save_route, "Save flight-plan", "Save"); var save_selector = gui.FileSelector.new(save_route, "Save flight-plan", "Save");
var activate_fp = func { var activate_fp = func {
cmd.setValue("@activate"); cmd.setValue("@activate");
} }
var departureRunways = dlg.getNode("departure-runways", 1); var departureRunways = dlg.getNode("departure-runways", 1);
var destRunways = dlg.getNode("destination-runways", 1); var destRunways = dlg.getNode("destination-runways", 1);
var sids = dlg.getNode("sids", 1); var sids = dlg.getNode("sids", 1);
var stars = dlg.getNode("stars", 1); var stars = dlg.getNode("stars", 1);
var updateRunways = func { var updateRunways = func {
var depIcao = dep.getNode("airport").getValue(); var depIcao = dep.getNode("airport").getValue();
departureRunways.removeChildren("value"); departureRunways.removeChildren("value");
var currentRunway = dep.getNode("runway").getValue(); var currentRunway = dep.getNode("runway").getValue();
var foundCurrent = 0; var foundCurrent = 0;
var apt = airportinfo(depIcao); var apt = airportinfo(depIcao);
if (apt != nil) { if (apt != nil) {
var i=0; var i=0;
@ -111,16 +111,16 @@ command interface /autopilot/route-manager/input:
} }
} }
} }
if (!foundCurrent) { if (!foundCurrent) {
dep.getNode("runway").clearValue(); dep.getNode("runway").clearValue();
} }
var destIcao = dest.getNode("airport").getValue(); var destIcao = dest.getNode("airport").getValue();
destRunways.removeChildren("value"); destRunways.removeChildren("value");
currentRunway = dest.getNode("runway").getValue(); currentRunway = dest.getNode("runway").getValue();
foundCurrent = 0; foundCurrent = 0;
var apt = airportinfo(destIcao); var apt = airportinfo(destIcao);
if (apt != nil) { if (apt != nil) {
var i=0; var i=0;
@ -132,15 +132,15 @@ command interface /autopilot/route-manager/input:
} }
} }
} }
if (!foundCurrent) { if (!foundCurrent) {
dest.getNode("runway").clearValue(); dest.getNode("runway").clearValue();
} }
print("updated runways"); print("updated runways");
gui.dialog_update("route-manager"); gui.dialog_update("route-manager");
} }
var updateSIDs = func { var updateSIDs = func {
sids.removeChildren("value"); sids.removeChildren("value");
var depIcao = dep.getNode("airport").getValue(); var depIcao = dep.getNode("airport").getValue();
@ -151,17 +151,17 @@ command interface /autopilot/route-manager/input:
gui.dialog_update("route-manager", "sid"); gui.dialog_update("route-manager", "sid");
return; return;
} }
sids.getNode("value[0]", 1).setValue("(none)"); sids.getNode("value[0]", 1).setValue("(none)");
var i=1; var i=1;
foreach (var s; apt.runways[rwy].sids) { foreach (var s; apt.runways[rwy].sids) {
sids.getNode("value[" ~ i ~ "]", 1).setValue(s); sids.getNode("value[" ~ i ~ "]", 1).setValue(s);
i += 1; i += 1;
} }
gui.dialog_update("route-manager", "sid"); gui.dialog_update("route-manager", "sid");
} }
var updateSTARs = func { var updateSTARs = func {
stars.removeChildren("value"); stars.removeChildren("value");
var icao = dest.getNode("airport").getValue(); var icao = dest.getNode("airport").getValue();
@ -172,20 +172,20 @@ command interface /autopilot/route-manager/input:
gui.dialog_update("route-manager", "star"); gui.dialog_update("route-manager", "star");
return; return;
} }
var i=1; var i=1;
stars.getNode("value[0]", 1).setValue("(none)"); stars.getNode("value[0]", 1).setValue("(none)");
foreach (var s; apt.runways[rwy].stars) { foreach (var s; apt.runways[rwy].stars) {
stars.getNode("value[" ~ i ~ "]", 1).setValue(s); stars.getNode("value[" ~ i ~ "]", 1).setValue(s);
i += 1; i += 1;
} }
gui.dialog_update("route-manager", "star"); gui.dialog_update("route-manager", "star");
} }
# initialise departure values based on current position # initialise departure values based on current position
cmd.setValue("@posinit"); cmd.setValue("@posinit");
updateRunways(); updateRunways();
updateSIDs(); updateSIDs();
updateSTARs(); updateSTARs();
@ -222,14 +222,19 @@ command interface /autopilot/route-manager/input:
</group> </group>
<hrule/> <hrule/>
<!-- departure / arrival airport information --> <!-- departure / arrival airport information -->
<group> <group>
<layout>hbox</layout> <layout>table</layout>
<text> <text>
<row>0</row>
<col>0</col>
<halign>right</halign>
<label>Departure:</label> <label>Departure:</label>
<pref-width>80</pref-width>
</text> </text>
<input> <input>
<row>0</row>
<col>1</col>
<halign>left</halign>
<name>departure-airport</name> <name>departure-airport</name>
<pref-width>60</pref-width> <pref-width>60</pref-width>
<property>/autopilot/route-manager/departure/airport</property> <property>/autopilot/route-manager/departure/airport</property>
@ -238,31 +243,38 @@ command interface /autopilot/route-manager/input:
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>departure-airport</object-name> <object-name>departure-airport</object-name>
</binding> </binding>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script>updateRunways();</script> <script>updateRunways();</script>
</binding> </binding>
</input> </input>
<text> <text>
<row>0</row>
<col>2</col>
<format>%s</format> <format>%s</format>
<property>/autopilot/route-manager/departure/name</property> <property>/autopilot/route-manager/departure/name</property>
<live>true</live> <live>true</live>
<stretch>true</stretch> <stretch>true</stretch>
<halign>fill</halign> <halign>fill</halign>
</text> </text>
<text> <text>
<row>0</row>
<col>3</col>
<halign>right</halign>
<label>Rwy:</label> <label>Rwy:</label>
</text> </text>
<combo> <combo>
<row>0</row>
<col>4</col>
<halign>left</halign>
<name>departure-runway</name> <name>departure-runway</name>
<pref-width>60</pref-width>
<property>/autopilot/route-manager/departure/runway</property> <property>/autopilot/route-manager/departure/runway</property>
<editable>false</editable> <editable>false</editable>
<properties>/sim/gui/dialogs/route-manager/departure-runways</properties> <properties>/sim/gui/dialogs/route-manager/departure-runways</properties>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>departure-runway</object-name> <object-name>departure-runway</object-name>
@ -272,33 +284,40 @@ command interface /autopilot/route-manager/input:
<script>updateSIDs();</script> <script>updateSIDs();</script>
</binding> </binding>
</combo> </combo>
<text> <text>
<row>0</row>
<col>5</col>
<halign>right</halign>
<label>SID:</label> <label>SID:</label>
</text> </text>
<combo> <combo>
<row>0</row>
<col>6</col>
<halign>left</halign>
<name>sid</name> <name>sid</name>
<pref-width>100</pref-width>
<property>/autopilot/route-manager/departure/sid</property> <property>/autopilot/route-manager/departure/sid</property>
<editable>false</editable> <editable>false</editable>
<properties>/sim/gui/dialogs/route-manager/sids</properties> <properties>/sim/gui/dialogs/route-manager/sids</properties>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>sid</object-name> <object-name>sid</object-name>
</binding> </binding>
</combo> </combo>
</group>
<group>
<layout>hbox</layout>
<text> <text>
<row>1</row>
<col>0</col>
<halign>right</halign>
<label>Arrival:</label> <label>Arrival:</label>
<pref-width>80</pref-width>
</text> </text>
<input> <input>
<name>destination-airport</name> <row>1</row>
<col>1</col>
<halign>left</halign>
<pref-width>60</pref-width> <pref-width>60</pref-width>
<name>destination-airport</name>
<property>/autopilot/route-manager/destination/airport</property> <property>/autopilot/route-manager/destination/airport</property>
<live>true</live> <live>true</live>
<binding> <binding>
@ -311,44 +330,57 @@ command interface /autopilot/route-manager/input:
</binding> </binding>
</input> </input>
<text> <text>
<row>1</row>
<col>2</col>
<stretch>true</stretch> <stretch>true</stretch>
<pref-width>200</pref-width>
<format>%s</format> <format>%s</format>
<property>/autopilot/route-manager/destination/name</property> <property>/autopilot/route-manager/destination/name</property>
<live>true</live> <live>true</live>
<halign>fill</halign> <halign>fill</halign>
</text> </text>
<text> <text>
<row>1</row>
<col>3</col>
<halign>right</halign>
<label>Rwy:</label> <label>Rwy:</label>
</text> </text>
<combo> <combo>
<row>1</row>
<col>4</col>
<halign>left</halign>
<name>destination-runway</name> <name>destination-runway</name>
<pref-width>60</pref-width>
<property>/autopilot/route-manager/destination/runway</property> <property>/autopilot/route-manager/destination/runway</property>
<editable>false</editable> <editable>false</editable>
<properties>/sim/gui/dialogs/route-manager/destination-runways</properties> <properties>/sim/gui/dialogs/route-manager/destination-runways</properties>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>destination-runway</object-name> <object-name>destination-runway</object-name>
</binding> </binding>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script>updateSTARs();</script> <script>updateSTARs();</script>
</binding> </binding>
</combo> </combo>
<text> <text>
<row>1</row>
<col>5</col>
<halign>right</halign>
<label>STAR:</label> <label>STAR:</label>
</text> </text>
<combo> <combo>
<row>1</row>
<col>6</col>
<halign>left</halign>
<name>star</name> <name>star</name>
<pref-width>100</pref-width>
<property>/autopilot/route-manager/destination/star</property> <property>/autopilot/route-manager/destination/star</property>
<editable>false</editable> <editable>false</editable>
<properties>/sim/gui/dialogs/route-manager/stars</properties> <properties>/sim/gui/dialogs/route-manager/stars</properties>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
<object-name>star</object-name> <object-name>star</object-name>
@ -369,38 +401,38 @@ command interface /autopilot/route-manager/input:
<pref-width>150</pref-width> <pref-width>150</pref-width>
<property>/autopilot/route-manager/alternate/airport</property> <property>/autopilot/route-manager/alternate/airport</property>
</input> </input>
</group> </group>
--> -->
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<text> <text>
<halign>right</halign>
<label>Cruise Speed (kts):</label> <label>Cruise Speed (kts):</label>
<pref-width>80</pref-width>
</text> </text>
<input> <input>
<name>cruise-speed</name> <name>cruise-speed</name>
<live>true</live> <live>true</live>
<halign>fill</halign> <halign>left</halign>
<stretch>true</stretch> <stretch>true</stretch>
<pref-width>150</pref-width> <pref-width>100</pref-width>
<property>/autopilot/route-manager/cruise/speed-kts</property> <property>/autopilot/route-manager/cruise/speed-kts</property>
</input> </input>
<text> <text>
<label>Cruise Altitude (ft/FL):</label> <label>Cruise Altitude (ft/FL):</label>
<pref-width>80</pref-width> <halign>right</halign>
</text> </text>
<input> <input>
<name>cruise-alt</name> <name>cruise-alt</name>
<live>true</live> <live>true</live>
<halign>fill</halign> <halign>left</halign>
<stretch>true</stretch> <stretch>true</stretch>
<pref-width>150</pref-width> <pref-width>100</pref-width>
<property>/autopilot/route-manager/cruise/altitude-ft</property> <property>/autopilot/route-manager/cruise/altitude-ft</property>
</input> </input>
</group> </group>
<hrule/> <hrule/>
<group> <group>
@ -560,7 +592,7 @@ command interface /autopilot/route-manager/input:
<script>activate_fp()</script> <script>activate_fp()</script>
</binding> </binding>
</button> </button>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
<button> <button>
@ -582,5 +614,12 @@ command interface /autopilot/route-manager/input:
<script>save_selector.open();</script> <script>save_selector.open();</script>
</binding> </binding>
</button> </button>
<button>
<legend>Close</legend>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group> </group>
</PropertyList> </PropertyList>

View file

@ -30,7 +30,7 @@
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
<text> <text>
<label>Choose active scenario(s) for the next program start</label> <label>AI Scenario Select</label>
</text> </text>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
@ -49,6 +49,13 @@
<hrule/> <hrule/>
<text>
<label>Choose active scenario(s) for the next program start</label>
</text>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
@ -64,6 +71,7 @@
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
@ -172,7 +180,7 @@
scnNode.setValue( src.getNode("name",1).getValue() ); scnNode.setValue( src.getNode("name",1).getValue() );
i+=1; i+=1;
} }
} }
} }
var path = getprop("/sim/fg-root") ~ "/AI"; var path = getprop("/sim/fg-root") ~ "/AI";

View file

@ -8,9 +8,27 @@
<width>400</width> <width>400</width>
<layout>vbox</layout> <layout>vbox</layout>
<text> <group>
<label>Sound Configuration</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<text>
<label>Sound Configuration</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/> <hrule/>
@ -49,7 +67,7 @@
<label>Channel</label> <label>Channel</label>
<padding>10</padding> <padding>10</padding>
</text> </text>
<text> <text>
<row>0</row> <row>0</row>
<col>1</col> <col>1</col>
@ -139,7 +157,7 @@
<property>/sim/sound/enabled</property> <property>/sim/sound/enabled</property>
</enable> </enable>
</text> </text>
<checkbox> <checkbox>
<row>3</row> <row>3</row>
<col>1</col> <col>1</col>
@ -173,7 +191,7 @@
<property>/sim/sound/enabled</property> <property>/sim/sound/enabled</property>
</enable> </enable>
</text> </text>
<checkbox> <checkbox>
<row>4</row> <row>4</row>
<col>1</col> <col>1</col>
@ -219,7 +237,7 @@
<property>/sim/sound/enabled</property> <property>/sim/sound/enabled</property>
</enable> </enable>
</text> </text>
<checkbox> <checkbox>
<row>5</row> <row>5</row>
<col>1</col> <col>1</col>
@ -262,7 +280,7 @@
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>10</default-padding> <default-padding>10</default-padding>
<button> <button>
<legend>Apply</legend> <legend>Apply</legend>
<key>Enter</key> <key>Enter</key>

36
gui/dialogs/static-lod.xml Executable file → Normal file
View file

@ -4,9 +4,27 @@
<name>static-lod</name> <name>static-lod</name>
<layout>vbox</layout> <layout>vbox</layout>
<text> <group>
<label>Static Scenery Level Of Detail</label> <layout>hbox</layout>
</text> <empty><stretch>1</stretch></empty>
<text>
<label>Static Scenery Level Of Detail</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/> <hrule/>
@ -57,6 +75,8 @@
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<default-padding>10</default-padding> <default-padding>10</default-padding>
@ -66,10 +86,10 @@
<default>true</default> <default>true</default>
<equal>true</equal> <equal>true</equal>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
@ -77,7 +97,7 @@
<legend>Apply</legend> <legend>Apply</legend>
<equal>true</equal> <equal>true</equal>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</button> </button>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
@ -85,7 +105,7 @@
<legend>Reset</legend> <legend>Reset</legend>
<equal>true</equal> <equal>true</equal>
<binding> <binding>
<command>dialog-update</command> <command>dialog-update</command>
</binding> </binding>
</button> </button>
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
@ -93,7 +113,7 @@
<legend>Cancel</legend> <legend>Cancel</legend>
<key>Esc</key> <key>Esc</key>
<binding> <binding>
<command>dialog-close</command> <command>dialog-close</command>
</binding> </binding>
</button> </button>
</group> </group>

View file

@ -105,4 +105,16 @@
</text> </text>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</PropertyList> </PropertyList>

View file

@ -10,12 +10,12 @@
<open> <open>
# Code to populate the engine entries. # Code to populate the engine entries.
var groups = cmdarg().getChildren("group"); var groups = cmdarg().getChildren("group");
var group = groups[3].getChildren("group")[2]; var group = groups[1].getChildren("group")[2];
var engines = props.globals.getNode("/engines"); var engines = props.globals.getNode("/engines");
var row = 4; var row = 4;
var engine = 0; var engine = 0;
var i = 0; var i = 0;
group.removeChildren("checkbox"); group.removeChildren("checkbox");
group.removeChildren("input"); group.removeChildren("input");
group.removeChildren("text"); group.removeChildren("text");
@ -28,66 +28,78 @@
target = group.getNode("text[" ~ i ~ "]", 1); target = group.getNode("text[" ~ i ~ "]", 1);
props.copy(group.getNode("mtbf-label"), target); props.copy(group.getNode("mtbf-label"), target);
i += 1; i += 1;
foreach (var e; engines.getChildren("engine")) { foreach (var e; engines.getChildren("engine")) {
if ((e.getChild("starter") != nil) or (e.getChild("running") != nil)) { if (((e.getChild("starter") != nil) and (e.getChild("starter") != "")) or
((e.getChild("running") != nil) and (e.getChild("running") != "")) ) {
row = row + 1; row = row + 1;
# Set up the label # Set up the label
target = group.getNode("text[" ~ i ~ "]", 1); target = group.getNode("text[" ~ i ~ "]", 1);
props.copy(group.getNode("text-template"), target); props.copy(group.getNode("text-template"), target);
target.getNode("row").setValue(row); target.getNode("row").setValue(row);
if (size(engines.getChildren("engine")) == 1) { if (size(engines.getChildren("engine")) == 1) {
target.getNode("label").setValue("Engine"); target.getNode("label").setValue("Engine");
} else { } else {
# Engines are indexed from 1 in the GUI. # Engines are indexed from 1 in the GUI.
target.getNode("label").setValue("Engine " ~ (engine + 1)); target.getNode("label").setValue("Engine " ~ (engine + 1));
} }
# Now the checkbox # Now the checkbox
target = group.getNode("checkbox[" ~ i ~ "]", 1); target = group.getNode("checkbox[" ~ i ~ "]", 1);
props.copy(group.getChild("checkbox-template"), target); props.copy(group.getChild("checkbox-template"), target);
target.getNode("row").setValue(row); target.getNode("row").setValue(row);
var failure = "/sim/failure-manager/engines/engine[" ~ engine ~ "]/serviceable"; var failure = "/sim/failure-manager/engines/engine[" ~ engine ~ "]/serviceable";
target.getNode("property").setValue(failure); target.getNode("property").setValue(failure);
# Finally the MTBF # Finally the MTBF
target = group.getNode("input[" ~ i ~ "]", 1); target = group.getNode("input[" ~ i ~ "]", 1);
props.copy(group.getChild("input-template"), target); props.copy(group.getChild("input-template"), target);
target.getNode("row").setValue(row); target.getNode("row").setValue(row);
i += 1; i += 1;
var mtbf = "/sim/failure-manager/engines/engine[" ~ engine ~ "]/mtbf"; var mtbf = "/sim/failure-manager/engines/engine[" ~ engine ~ "]/mtbf";
target.getNode("property").setValue(mtbf); target.getNode("property").setValue(mtbf);
engine += 1; engine += 1;
} }
} }
</open> </open>
</nasal> </nasal>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text> <text>
<label>System Failures</label> <label>System Failures</label>
</text> </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> </group>
<group> <hrule/>
<layout>hbox</layout>
<hrule/>
</group>
<group> <text>
<layout>hbox</layout>
<halign>left</halign> <halign>left</halign>
<text> <label>Uncheck a system to fail it, or set the Mean Time/Cycles Between Failures.</label>
<label>Uncheck a system to fail it, or set the Mean Time/Cycles Between Failures.</label> </text>
</text>
</group> <hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
@ -103,7 +115,7 @@
<col>0</col> <col>0</col>
<label>System</label> <label>System</label>
</text> </text>
<text> <text>
<row>0</row> <row>0</row>
<col>2</col> <col>2</col>
@ -192,57 +204,57 @@
<halign>right</halign> <halign>right</halign>
<label>Aileron</label> <label>Aileron</label>
</text> </text>
<checkbox> <checkbox>
<row>5</row> <row>5</row>
<col>1</col> <col>1</col>
<property>/sim/failure-manager/controls/flight/aileron/serviceable</property> <property>/sim/failure-manager/controls/flight/aileron/serviceable</property>
</checkbox> </checkbox>
<input> <input>
<row>5</row> <row>5</row>
<col>2</col> <col>2</col>
<property>/sim/failure-manager/controls/flight/aileron/mtbf</property> <property>/sim/failure-manager/controls/flight/aileron/mtbf</property>
</input> </input>
<text> <text>
<row>6</row> <row>6</row>
<col>0</col> <col>0</col>
<halign>right</halign> <halign>right</halign>
<label>Elevator</label> <label>Elevator</label>
</text> </text>
<checkbox> <checkbox>
<row>6</row> <row>6</row>
<col>1</col> <col>1</col>
<property>/sim/failure-manager/controls/flight/elevator/serviceable</property> <property>/sim/failure-manager/controls/flight/elevator/serviceable</property>
</checkbox> </checkbox>
<input> <input>
<row>6</row> <row>6</row>
<col>2</col> <col>2</col>
<property>/sim/failure-manager/controls/flight/elevator/mtbf</property> <property>/sim/failure-manager/controls/flight/elevator/mtbf</property>
</input> </input>
<text> <text>
<row>7</row> <row>7</row>
<col>0</col> <col>0</col>
<halign>right</halign> <halign>right</halign>
<label>Rudder</label> <label>Rudder</label>
</text> </text>
<checkbox> <checkbox>
<row>7</row> <row>7</row>
<col>1</col> <col>1</col>
<property>/sim/failure-manager/controls/flight/rudder/serviceable</property> <property>/sim/failure-manager/controls/flight/rudder/serviceable</property>
</checkbox> </checkbox>
<input> <input>
<row>7</row> <row>7</row>
<col>2</col> <col>2</col>
<property>/sim/failure-manager/controls/flight/rudder/mtbf</property> <property>/sim/failure-manager/controls/flight/rudder/mtbf</property>
</input> </input>
</group> </group>
@ -252,7 +264,7 @@
<layout>table</layout> <layout>table</layout>
<halign>center</halign> <halign>center</halign>
<valign>top</valign> <valign>top</valign>
<text> <text>
<row>0</row> <row>0</row>
<col>0</col> <col>0</col>
@ -264,58 +276,58 @@
<col>2</col> <col>2</col>
<label>MCBF</label> <label>MCBF</label>
</text> </text>
<text> <text>
<row>1</row> <row>1</row>
<col>0</col> <col>0</col>
<halign>right</halign> <halign>right</halign>
<label>Landing Gear</label> <label>Landing Gear</label>
</text> </text>
<checkbox> <checkbox>
<row>1</row> <row>1</row>
<col>1</col> <col>1</col>
<property>/gear/serviceable</property> <property>/gear/serviceable</property>
</checkbox> </checkbox>
<input> <input>
<row>1</row> <row>1</row>
<col>2</col> <col>2</col>
<property>/sim/failure-manager/controls/gear/gear-down/mcbf</property> <property>/sim/failure-manager/controls/gear/gear-down/mcbf</property>
</input> </input>
<text> <text>
<row>2</row> <row>2</row>
<col>0</col> <col>0</col>
<halign>right</halign> <halign>right</halign>
<label>Flaps</label> <label>Flaps</label>
</text> </text>
<checkbox> <checkbox>
<row>2</row> <row>2</row>
<col>1</col> <col>1</col>
<property>/sim/failure-manager/controls/flight/flaps/serviceable</property> <property>/sim/failure-manager/controls/flight/flaps/serviceable</property>
</checkbox> </checkbox>
<input> <input>
<row>2</row> <row>2</row>
<col>2</col> <col>2</col>
<property>/sim/failure-manager/controls/flight/flaps/mcbf</property> <property>/sim/failure-manager/controls/flight/flaps/mcbf</property>
</input> </input>
<text> <text>
<row>3</row> <row>3</row>
<col>0</col> <col>0</col>
<halign>right</halign> <halign>right</halign>
<label>Speedbrake</label> <label>Speedbrake</label>
</text> </text>
<checkbox> <checkbox>
<row>3</row> <row>3</row>
<col>1</col> <col>1</col>
<property>/sim/failure-manager/controls/flight/speedbrake/serviceable</property> <property>/sim/failure-manager/controls/flight/speedbrake/serviceable</property>
</checkbox> </checkbox>
<input> <input>
<row>3</row> <row>3</row>
<col>2</col> <col>2</col>
@ -324,46 +336,48 @@
</group> </group>
<vrule/> <vrule/>
<group> <group>
<layout>table</layout> <layout>table</layout>
<halign>center</halign> <halign>center</halign>
<valign>top</valign> <valign>top</valign>
<engine-label> <engine-label>
<row>0</row> <row>0</row>
<col>0</col> <col>0</col>
<label>Engine</label> <label>Engine</label>
</engine-label> </engine-label>
<mtbf-label> <mtbf-label>
<row>0</row> <row>0</row>
<col>2</col> <col>2</col>
<label>MTBF</label> <label>MTBF</label>
</mtbf-label> </mtbf-label>
<text-template> <text-template>
<row><!-- template value--></row> <row><!-- template value--></row>
<col>0</col> <col>0</col>
<halign>right</halign> <halign>right</halign>
<label><!-- template value--></label> <label><!-- template value--></label>
</text-template> </text-template>
<checkbox-template> <checkbox-template>
<row><!-- template value--></row> <row><!-- template value--></row>
<col>1</col> <col>1</col>
<property><!-- template value--></property> <property><!-- template value--></property>
</checkbox-template> </checkbox-template>
<input-template> <input-template>
<row><!-- template value--></row> <row><!-- template value--></row>
<col>2</col> <col>2</col>
<property><!-- template value--></property> <property><!-- template value--></property>
</input-template> </input-template>
</group> </group>
</group> </group>
<hrule/>
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>

View file

@ -9,18 +9,17 @@
<group> <group>
<layout>hbox</layout> <layout>hbox</layout>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<text> <text>
<label>Time Settings</label> <label>Time Settings</label>
</text> </text>
<empty><stretch>1</stretch></empty> <empty><stretch>1</stretch></empty>
<button> <button>
<pref-width>16</pref-width> <pref-width>16</pref-width>
<pref-height>16</pref-height> <pref-height>16</pref-height>
<legend></legend> <legend></legend>
<default>1</default>
<keynum>27</keynum> <keynum>27</keynum>
<border>2</border> <border>2</border>
<binding> <binding>
@ -158,14 +157,6 @@
</button> </button>
</group> </group>
<empty>
<pref-height>6</pref-height>
</empty>
<hrule/>
<empty>
<pref-height>6</pref-height>
</empty>
<empty> <empty>
<stretch>true</stretch> <stretch>true</stretch>
</empty> </empty>
@ -261,4 +252,15 @@
</group> </group>
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</PropertyList> </PropertyList>

View file

@ -5,15 +5,37 @@
<modal>false</modal> <modal>false</modal>
<layout>vbox</layout> <layout>vbox</layout>
<group>
<layout>hbox</layout>
<empty><stretch>1</stretch></empty>
<text>
<label>View Options</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/>
<text> <text>
<label>Choose Active Views</label> <label>Choose Active Views</label>
</text> </text>
<hrule/> <nasal>
<nasal>
<open> <open>
var group = cmdarg().getNode("group"); var group = cmdarg().getChildren("group")[1];
var ac = getprop("/sim/aircraft"); var ac = getprop("/sim/aircraft");
group.removeChildren("checkbox"); group.removeChildren("checkbox");
group.removeChildren("hrule"); group.removeChildren("hrule");
@ -64,6 +86,8 @@
</checkbox-template> </checkbox-template>
</group> </group>
<hrule/>
<button> <button>
<legend>Close</legend> <legend>Close</legend>
<default>true</default> <default>true</default>

View file

@ -37,6 +37,7 @@
</binding> </binding>
</button> </button>
</group> </group>
<hrule/> <hrule/>
<group> <group>
@ -55,7 +56,7 @@
<layout>hbox</layout> <layout>hbox</layout>
<text> <text>
<label>Cloud Layers (All Altitudes ft-AMSL)</label> <label>Cloud Layers (All Altitudes ft-AMSL)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -73,7 +74,7 @@
<label>Altitude (ft)</label> <label>Altitude (ft)</label>
<row>0</row> <row>0</row>
<col>1</col> <col>1</col>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -83,7 +84,7 @@
<row>0</row> <row>0</row>
<col>2</col> <col>2</col>
<width>80</width> <width>80</width>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -92,7 +93,7 @@
<label>Thickness (ft)</label> <label>Thickness (ft)</label>
<row>0</row> <row>0</row>
<col>3</col> <col>3</col>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -405,7 +406,7 @@
<layout>hbox</layout> <layout>hbox</layout>
<text> <text>
<label>Precipitation</label> <label>Precipitation</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -423,7 +424,7 @@
<row>0</row> <row>0</row>
<col>0</col> <col>0</col>
<label>Rain</label> <label>Rain</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -432,7 +433,7 @@
<row>0</row> <row>0</row>
<col>1</col> <col>1</col>
<label>Snow</label> <label>Snow</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -477,7 +478,7 @@
<row>0</row> <row>0</row>
<col>3</col> <col>3</col>
<label>QNH (inHg)</label> <label>QNH (inHg)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -526,7 +527,7 @@
<!-- Right Column --> <!-- Right Column -->
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
<!-- Aloft --> <!-- Aloft -->
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
@ -1140,7 +1141,7 @@
<layout>hbox</layout> <layout>hbox</layout>
<text> <text>
<label>Boundary (All Elevations ft-AGL)</label> <label>Boundary (All Elevations ft-AGL)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -1159,7 +1160,7 @@
<row>0</row> <row>0</row>
<col>0</col> <col>0</col>
<label>Elevation</label> <label>Elevation</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -1169,7 +1170,7 @@
<col>1</col> <col>1</col>
<colspan>2</colspan> <colspan>2</colspan>
<label>Wind (dir/kt)</label> <label>Wind (dir/kt)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -1178,7 +1179,7 @@
<row>0</row> <row>0</row>
<col>3</col> <col>3</col>
<label>Vis (m)</label> <label>Vis (m)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -1187,7 +1188,7 @@
<row>0</row> <row>0</row>
<col>4</col> <col>4</col>
<label>Temp (C)</label> <label>Temp (C)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -1196,7 +1197,7 @@
<row>0</row> <row>0</row>
<col>5</col> <col>5</col>
<label>Dewpt (C)</label> <label>Dewpt (C)</label>
<enable> <enable>
<property>/sim/gui/dialogs/weather-scenario/state</property> <property>/sim/gui/dialogs/weather-scenario/state</property>
</enable> </enable>
</text> </text>
@ -1436,7 +1437,7 @@
</group> </group>
<!-- Boundary End --> <!-- Boundary End -->
</group> </group>
<!-- Right Column --> <!-- Right Column -->
@ -1548,9 +1549,20 @@
</textbox> </textbox>
<!-- Automatic Weather --> <!-- Automatic Weather -->
</group> </group>
<hrule/>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
<nasal> <nasal>
<open><![CDATA[ <open><![CDATA[
var normalize_string = func(src) { var normalize_string = func(src) {

View file

@ -458,13 +458,6 @@
<menu> <menu>
<label>AI</label> <label>AI</label>
<item>
<label>Traffic Options</label>
<binding>
<command>dialog-show</command>
<dialog-name>ai</dialog-name>
</binding>
</item>
<!-- Not working at present <!-- Not working at present
<item> <item>
<label>ATC Services in range</label> <label>ATC Services in range</label>