<?xml version="1.0"?> <PropertyList> <name>view</name> <modal>false</modal> <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> <label>Select Active Views</label> </text> <nasal> <open> var group = cmdarg().getChildren("group")[1]; var ac = getprop("/sim/aircraft"); group.removeChildren("checkbox"); group.removeChildren("hrule"); group.removeChildren("text"); var mode = 0; foreach (var v; view.views) { var index = v.getIndex(); var enabled = v.initNode("enabled", 1, "BOOL"); var name = v.getNode("name"); if (name != nil) { 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(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"); } } var target = group.getChild("checkbox", index, 1); props.copy(group.getNode("checkbox-template"), target); target.getNode("label").setValue(name != nil ? name.getValue() : ("** unnamed view " ~ index ~ " **")); target.getNode("property").setValue(enabled.getPath()); } } </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> <hrule/> <button> <legend>Close</legend> <default>true</default> <key>Esc</key> <binding> <command>dialog-apply</command> </binding> <binding> <command>dialog-close</command> </binding> </button> </PropertyList>