From: david Date: Sat, 26 Oct 2002 01:18:52 +0000 (+0000) Subject: Documentation on adding new built-in commands to FlightGear. X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=4497c6d9e996f9616c95844859d859237f1f2d42;p=flightgear.git Documentation on adding new built-in commands to FlightGear. --- diff --git a/docs-mini/README.commands b/docs-mini/README.commands new file mode 100644 index 000000000..25b1543ab --- /dev/null +++ b/docs-mini/README.commands @@ -0,0 +1,32 @@ +Binding New Commands in FlightGear +---------------------------------- + + +To add a new command to FlightGear, you first need to create a +function that takes a single SGPropertyNode const pointer as an +argument: + + void + do_something (SGPropertyNode * arg) + { + something(); + } + +Next, you need to register it with the command manager: + + globals->get_commands()->addCommand("something", do_something); + +Now, the command "something" is available to any mouse, joystick, +panel, or keyboard bindings. If the bindings pass any arguments, they +will be children of the SGPropertyNode passed in: + + void + do_something (const SGPropertyNode * arg) + { + something(arg->getStringValue("foo"), arg->getDoubleValue("bar")); + } + +That's pretty-much it. Apologies in advance for not making things any +more complicated. + +