Bindings: Difference between revisions
(looks like property-set has been replaced with property-assign) |
No edit summary |
||
Line 9: | Line 9: | ||
== Commands == | == Commands == | ||
=== dialog-close === | |||
Closes the active dialog. | |||
<binding> | |||
<command>dialog-close</command> | |||
</binding> | |||
=== dialog-show === | === dialog-show === | ||
Shows a dialog, which should be present in <tt>[[$FG ROOT]]/gui/Dialogs</tt>. | Shows a dialog, which should be present in <tt>[[$FG ROOT]]/gui/Dialogs</tt>. | ||
Line 32: | Line 38: | ||
<min>0</min> | <min>0</min> | ||
<max>1</max> | <max>1</max> | ||
</binding> | |||
=== property-assign === | |||
One of the most important commands. It sets a property to a predefined value. | |||
<binding> | |||
<command>property-assign</command> | |||
<property>/autopilot/settings/target-speed-kt</property> | |||
<value>0</value> | |||
</binding> | </binding> | ||
Line 43: | Line 57: | ||
<value type="string">OFF</value> | <value type="string">OFF</value> | ||
</binding> | </binding> | ||
=== property-multiply === | |||
Multiply the value of a property by a given factor. | |||
<binding> | |||
<command>property-multiply</command> | |||
<property>/controls/flight/aileron</property> | |||
<factor>0.5</factor> | |||
<min>-1</min> | |||
<max>1</max> | |||
<mask>all</mask> | |||
<wrap>true</wrap> | |||
</binding> | |||
*'''factor:''' the amount to multiply by. | |||
*'''min:''' minimum value. | |||
*'''max:''' maximum value. | |||
*'''mask:''' | |||
** '''integer:''' mutiply only left of the decimal point. | |||
** '''decimal:''' multiply only the right of the decimal point. | |||
** '''all:''' multiply the entire value. | |||
*'''wrap:''' true if the value should be wrapped if it passes min/max. It is required to set both min and max in that case. | |||
=== property-randomize === | === property-randomize === | ||
Line 53: | Line 87: | ||
</binding> | </binding> | ||
=== property- | === property-scale === | ||
Sett the value of a property based on an axis, often used in [[joystick]] configuration files. | |||
<binding> | <binding> | ||
<command>property- | <command>property-scale</command> | ||
<property>/ | <property>/controls/flight/aileron</property> | ||
< | <offset>0.001</offset> | ||
<factor>-1</factor> | |||
<power>3</power> | |||
</binding> | </binding> | ||
= | * '''offset:''' the offset to shift by, before applying the factor. | ||
* '''factor:''' the factor to multiply by (use negative to reverse). | |||
* '''squared:''' if true will square the resulting value (same as power=2). | |||
* '''power:''' the resulting value will be taken to the power of this integer value (overrides squared). | |||
Remember: <tt>((property+offset)*factor)^power=result</tt> | |||
=== property-swap === | === property-swap === | ||
Swaps the values of two properties. | Swaps the values of two properties, useful for radio panels. | ||
<binding> | <binding> | ||
<command>property-swap</command> | <command>property-swap</command> | ||
Line 87: | Line 118: | ||
<property>/controls/gear/gear-down</property> | <property>/controls/gear/gear-down</property> | ||
</binding> | </binding> | ||
Or if defined it toggles between two values. | Or - if defined - it toggles between two custom values. | ||
<binding> | <binding> | ||
<command>property-toggle</command> | <command>property-toggle</command> | ||
Line 94: | Line 125: | ||
<value>3</value> | <value>3</value> | ||
</binding> | </binding> | ||
== Related content == | |||
* <tt>[[$FG_ROOT]]/Docs/README.commands</tt> [https://gitorious.org/fg/fgdata/blobs/master/Docs/README.commands view online] | |||
* [[Howto: Make a clickable panel]] |
Revision as of 10:03, 10 June 2011
Bindings define what happens when a user:
- clicks an object in the scenery or an aircraft
- press a key on the keyboard or joystick
- clicks a menu item
- click a buttons or fields in a dialog
You can assign multiple bindings to one object/button/key.
All give codes are examples, found on various places in the FlightGear package.
Commands
dialog-close
Closes the active dialog.
<binding> <command>dialog-close</command> </binding>
dialog-show
Shows a dialog, which should be present in $FG ROOT/gui/Dialogs.
<binding> <command>dialog-show</command> <dialog-name>location-in-air</dialog-name> </binding>
- dialog-name: the name of the dialog, as designated in its .xml file.
nasal
Nasal is frequently used for complicated systems.
<binding> <command>nasal</command> <script>b777.afds.input(0,1);</script> </binding>
property-adjust
Increases or decreases a property's value with a given step. Maximum and minimum values are optional.
<binding> <command>property-adjust</command> <property>/controls/lighting/panel-norm</property> <step>-0.05</step> <min>0</min> <max>1</max> </binding>
property-assign
One of the most important commands. It sets a property to a predefined value.
<binding> <command>property-assign</command> <property>/autopilot/settings/target-speed-kt</property> <value>0</value> </binding>
property-cycle
Cycles between a list of values and assigns one to a property. The value-list can vary in length.
<binding> <command>property-cycle</command> <property>/autopilot/autobrake/setting</property> <value type="string">ARM</value> <value type="string">DISARM</value> <value type="string">OFF</value> </binding>
property-multiply
Multiply the value of a property by a given factor.
<binding> <command>property-multiply</command> <property>/controls/flight/aileron</property> <factor>0.5</factor> <min>-1</min> <max>1</max> <mask>all</mask> <wrap>true</wrap> </binding>
- factor: the amount to multiply by.
- min: minimum value.
- max: maximum value.
- mask:
- integer: mutiply only left of the decimal point.
- decimal: multiply only the right of the decimal point.
- all: multiply the entire value.
- wrap: true if the value should be wrapped if it passes min/max. It is required to set both min and max in that case.
property-randomize
Assigns a random value (between min and max) to a property.
<binding> <command>property-randomize</command> <property>/orientation/pitch-deg</property> <min>0</min> <max>360</max> </binding>
property-scale
Sett the value of a property based on an axis, often used in joystick configuration files.
<binding> <command>property-scale</command> <property>/controls/flight/aileron</property> <offset>0.001</offset> <factor>-1</factor> <power>3</power> </binding>
- offset: the offset to shift by, before applying the factor.
- factor: the factor to multiply by (use negative to reverse).
- squared: if true will square the resulting value (same as power=2).
- power: the resulting value will be taken to the power of this integer value (overrides squared).
Remember: ((property+offset)*factor)^power=result
property-swap
Swaps the values of two properties, useful for radio panels.
<binding> <command>property-swap</command> <property>/instrumentation/comm/frequencies/selected-mhz</property> <property>/instrumentation/comm/frequencies/standby-mhz</property> </binding>
property-toggle
Toggles the value of a property on each click, between true (1) and false (0).
<binding> <command>property-toggle</command> <property>/controls/gear/gear-down</property> </binding>
Or - if defined - it toggles between two custom values.
<binding> <command>property-toggle</command> <property>/controls/gear/gear-down</property> <value>2</value> <value>3</value> </binding>
Related content
- $FG_ROOT/Docs/README.commands view online
- Howto: Make a clickable panel