1
0
Fork 0
fgdata/gui/dialogs/view.xml
2007-12-13 13:57:23 +00:00

81 lines
1.9 KiB
XML

<?xml version="1.0"?>
<PropertyList>
<name>view</name>
<modal>false</modal>
<layout>vbox</layout>
<text>
<label>Configure Active Views</label>
</text>
<hrule/>
<nasal>
<open>
var group = cmdarg().getNode("group");
var ac = getprop("/sim/aircraft");
group.removeChildren("checkbox");
group.removeChildren("hrule");
group.removeChildren("text");
var mode = 0;
foreach (var v; view.views) {
if ((var hide = v.getNode("hide")) != nil and hide.getBoolValue())
continue;
var index = v.getIndex();
if (index >= 200) {
if (mode != 2) {
mode = 2;
group.getChild("hrule", 1, 1);
var t = group.getChild("text", 1, 1);
t.getNode("label", 1).setValue("Other Views");
}
} elsif (index >= 100) {
aircraft.data.add(v.getPath() ~ "/enabled");
if (mode != 1) {
mode = 1;
group.getChild("hrule", 0, 1);
var t = group.getChild("text", 0, 1);
t.getNode("label", 1).setValue("\"" ~ ac ~ "\" Specific Views");
}
}
if (v.getNode("enabled") == nil)
v.getNode("enabled", 1).setBoolValue(1);
var target = group.getChild("checkbox", index, 1);
props.copy(group.getNode("checkbox-template"), target);
var name = v.getNode("name");
target.getNode("label").setValue(name != nil ? name.getValue() : ("** unnamed view " ~ index ~ " **"));
target.getNode("property").setValue(v.getPath() ~ "/enabled");
}
</open>
</nasal>
<group>
<layout>vbox</layout>
<halign>center</halign>
<checkbox-template>
<halign>left</halign>
<label><!----></label>
<property><!----></property>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox-template>
</group>
<button>
<legend>Close</legend>
<default>true</default>
<key>Esc</key>
<binding>
<command>dialog-apply</command>
</binding>
<binding>
<command>dialog-close</command>
</binding>
</button>
</PropertyList>