david [Sat, 25 Jan 2003 21:49:57 +0000 (21:49 +0000)]
Kludge in a /systems/electrical/serviceable master property to kill
the whole electrical system. We will also need a mechanism to kill
individual suppliers (such as the alternator), but this is good enough
for most training.
curt [Sat, 25 Jan 2003 20:45:39 +0000 (20:45 +0000)]
Refactored some of the navlist code and removed the built in "fail to find"
if the station is too far away. Instead, simply return the closest station.
All the code that searches navaids does it's own range checking anyway.
This will make the navlist query functions a bit more useful for other
types of functionality where you may need to lookup a station without
consideration of range (i.e. presetting your position relative to a navaid.)
david [Sat, 25 Jan 2003 19:49:27 +0000 (19:49 +0000)]
Added a Gyro helper class to factor out some common code for managing
a spinning gyro.
Changed FGInstrumentMgr to inherit from FGSubsystemGroup, greatly
simplifying the (already simple) class. I should probably rename this
to FGInstrumentGroup or something similar, but not today.
Added the gyroscopic turn indicator (part of the TC).
curt [Wed, 22 Jan 2003 01:24:32 +0000 (01:24 +0000)]
Add a "signed" distance to the GS transmitter. When you are in the approach
hemisphere the distance is positive, if you are in the departure hemisphere
the distance is negature. (Possible use for graphing approach distance
vs. glide slope or cdi.)
david [Tue, 21 Jan 2003 02:09:27 +0000 (02:09 +0000)]
Added support for reinit(), to reload the configuration files without
having to restart FlightGear. This should speed up GUI design and
debugging quite a bit.
david [Sat, 18 Jan 2003 21:59:25 +0000 (21:59 +0000)]
Removed a couple of the deprecated dialogs, and removed the old
predefined bindings for F11 and F12. Instead, there is now a soft
binding from F11 to the autopilot dialog.
curt [Sat, 18 Jan 2003 19:40:28 +0000 (19:40 +0000)]
Make the destructor virtual.
(I thought I'd slip this in along with David's change to the default menu
configure option. I believe that will cause a new config.h to be generated
which will cause a near complete rebuild of FG (as will this globals.hxx
change) so it shouldn't cause additional grief to have these happen at the
same time.)
david [Sat, 18 Jan 2003 16:26:41 +0000 (16:26 +0000)]
Add in some temporary commands to get at the old, hard-coded dialogs.
Most of these will eventually be replaced with XML-configured dialogs,
and the rest will be turned into proper widgets or global commands.
david [Thu, 16 Jan 2003 18:06:27 +0000 (18:06 +0000)]
Started a new FGMenuBar class to handle a different XML-configurable
menubar. This one allows regular command bindings, with the
(temporary) condition that every menu item must have a unique text
label. The new menubar is disabled by default; to enable it,
configure --with-new-menubar.
curt [Sun, 12 Jan 2003 23:28:21 +0000 (23:28 +0000)]
Added a "mini fdm" output. This could (for example) be useful for an
external gui if it wanted to monitor some key sim position/orientation
varialbles without saturating the net with the full slate of fdm data
@60hz.
david [Sat, 11 Jan 2003 16:30:32 +0000 (16:30 +0000)]
Added simple proof-of-concept support for running PSL scripts from
input bindings. They will work only with the latest CVS; otherwise,
./configure will disable them. There is a new command, 'script',
which takes a single argument, also called 'script', containing PSL
code (currently PSL requires a main() function).
Erik Hofman has written some more elaborate code for triggering PSL
code from drop-down menus and scheduling events; I will look at
integrating that next.
david [Sat, 4 Jan 2003 18:47:25 +0000 (18:47 +0000)]
Patch from Julian Foad to fix wrapping behaviour for property-adjust
and property-multiply:
Firstly, change back to wrapping modulo the interval, with "min <= x <
max" semantics. I believe the previous implementation did that. The
inline function that Norman mentioned also does that.
Secondly, make it snap to the nearest value (min + N*resolution) when a
"resolution" tag is present, taking special care of floating-point
precision. Or perhaps specify "number of divisions in the interval" as
an integer, instead of "resolution" by which I meant a floating-point
"size of a division".
[also fixed]
While working on this file I noticed some potentially serious warnings:
fg_commands.cxx: In function `bool do_property_adjust(const
SGPropertyNode*)':
fg_commands.cxx:435: warning: control reaches end of non-void function
fg_commands.cxx: In function `bool do_property_multiply(const
SGPropertyNode*)':
fg_commands.cxx:465: warning: control reaches end of non-void function
/usr/local/include/simgear/misc/props.hxx: At top level:
fg_commands.cxx:600: warning: `bool do_presets_commit(const
SGPropertyNode*)' defined but not used