mfranz [Tue, 19 Jun 2007 10:18:14 +0000 (10:18 +0000)]
fix bug that prevented /sim/sceneryloaded from ever becoming "true" if
/sim/screneryloaded-override was "true". At least one subsystem (od_gauge)
waits for /sim/sceneryloaded to bypass CPU intensive code until the scenery
is up. This broke e.g. the RTT-radar when using /sim/screneryloaded-override
--prop:sim/sceneryloaded-override=true has the effect that fgfs
doesn't show the splash screen until the scenery is loaded, but shows
the OTW view (scenery/aircraft) at the earliest possible moment. This is
useful for developers who often need to run fgfs only to check some minor
detail, while not caring about stuttering caused by scenery loading.
mfranz [Tue, 19 Jun 2007 10:10:00 +0000 (10:10 +0000)]
loadxml, savexml: don't pop up a GUI error message on error, but use a
simple SG_LOG instead. The user didn't call the fgcommand, so why should
s/he be bothered with that? And the actually caller of the command gets a
return value and can pop up a dialog if it thinks it's necessary.
mfranz [Sun, 17 Jun 2007 08:14:02 +0000 (08:14 +0000)]
256 Bytes ought to be enough for anybody ... hmm, better 512.
Why /sim/fg-current at all? Because we have a file selector dialog
(still unfinished), and one might like to start it from the current
directory, to find saved flights/screenshots/whatever.
mfranz [Sat, 16 Jun 2007 21:35:16 +0000 (21:35 +0000)]
set /sim/fg-current to current working directory; getcwd() is defined in
unistd.h (which was already included), and should be available in direct.h
under name _getcwd on MS Windows.
mfranz [Sat, 16 Jun 2007 09:39:56 +0000 (09:39 +0000)]
Tim MOORE:
FGManipulator.*:
"This patch works around a bug in OSG's handling of modifier keys. The
symptom of the bug is that modifier keys don't appear to be released."
fg_os_osgviewer.cxx:
"This patch fixes the test for support of cursor changes in OSG 2.0."
mfranz [Tue, 12 Jun 2007 16:13:21 +0000 (16:13 +0000)]
Make loadxml use an absolute path, like savexml (for consistency reasons, and
because this allows to load from FG_HOME. To reduce security risks, always
append an ".xml" extension if there was none. Makes it hard to read /etc/secret
and to overwrite ~/.bashrc. :-)
curt [Mon, 11 Jun 2007 19:13:08 +0000 (19:13 +0000)]
Add an option to estimate control surfaces deflections based on rotational
rates (not perfect, but lacking any data at all this is better than showing
them all hard over full stop.)
mfranz [Mon, 11 Jun 2007 19:02:01 +0000 (19:02 +0000)]
- make next_view()/pref_view() trigger listeners, otherwise the "view_cycle"
fgcommand doesn't activate Dynamic View, Fly-By View, etc.
- consistent indentation (broke that with my last commit :-)
andy [Thu, 7 Jun 2007 16:57:59 +0000 (16:57 +0000)]
Remove the GUI popup from the screen capture C++ code (a request via
IRC wanted this to be scritable) and add it back (as a tip popup) via
a little nasal in the keyboard handler. Also put the synthesis of
property nodes back into fgcommand(), because I got cold feet.
andy [Thu, 7 Jun 2007 16:17:48 +0000 (16:17 +0000)]
Allow the second (property node) argument to fgcommand() to be nil or
missing, for sanity. Note that this will pass the resulting NULL
pointer through into the underlying SGCommand handlers, some of which
may be unprepared for it. So basically this is now yet another way
you can use Nasal to exercise bugs and hose your sim; no biggie.
mfranz [Wed, 6 Jun 2007 21:18:25 +0000 (21:18 +0000)]
savexml: analog to loadxml, if no <sourcenode> is given, save file
contents from the argument tree's <data> node. That way one doesn't have
to plug a temporary branch into the main tree.
andy [Tue, 5 Jun 2007 16:01:43 +0000 (16:01 +0000)]
Maik: fix crash when using aircraft with hitches under the command
line solver. (He promises to get all the MP interaction out of the
FDM in a future patch.)
mfranz [Mon, 4 Jun 2007 10:07:31 +0000 (10:07 +0000)]
loadxml: if argument "targetnode" isn't defined, return the file data in
the argument tree under "data". This is useful in cases where the file
data are only needed temporarily and shouldn't remain in the main tree.
durk [Thu, 31 May 2007 19:53:53 +0000 (19:53 +0000)]
-Minor fix: Only read traffic from data/Traffic/fgtraffic.xml if that path really exists.
- Added a comment explaining why the first 1000 frames are skipped.
mfranz [Thu, 31 May 2007 18:08:12 +0000 (18:08 +0000)]
- add heading-deg, pitch-deg, roll-deg to impact/
- if no <impact-reports> node is defined for a particular submodel, then
write the path to /ai/models/model-impact instead
- don't tie() properties that are only ever set a single time, if at all!
- better variable names
frohlich [Wed, 30 May 2007 13:15:14 +0000 (13:15 +0000)]
Modified Files:
src/GUI/dialog.cxx src/GUI/menubar.cxx
src/Include/config.h-msvc8 src/Main/fg_os_osgviewer.cxx:
Olaf Flebbe: build fixes for osgviewer on win32.
frohlich [Sat, 26 May 2007 13:51:23 +0000 (13:51 +0000)]
Modified Files:
src/Scenery/tileentry.cxx: Jonathan Wagner:
Removes black dots by accounting for radius of nodes
when calculating visible nodes for traversal without removing the
optimization. Confirmed fix with a few people on IRC.
frohlich [Sat, 26 May 2007 11:39:13 +0000 (11:39 +0000)]
Modified Files:
src/GUI/gui.h src/GUI/gui_funcs.cxx src/Main/fg_commands.cxx
src/Main/renderer.cxx src/Main/renderer.hxx: Tim Moore:
These patches implement a command to dump the entire OSG scene graph as
a .osg text file. While large, this allows debuggers to really see
what's happening in the scene graph.
frohlich [Fri, 25 May 2007 18:08:37 +0000 (18:08 +0000)]
Modified Files:
src/Main/FGManipulator.cxx: Tim Moore:
This adds support for the keypad and the ever-important backspace and
delete (!) to the osgViewer code.
andy [Mon, 21 May 2007 20:22:18 +0000 (20:22 +0000)]
Yank the automake version test. The numerics break for the (two-digit
minor number) automake 1.10 shipped with Ubuntu Feisty, and in any
case version 1.4 (the last incompatible version) is now over 8 years
old.
mfranz [Fri, 11 May 2007 18:00:07 +0000 (18:00 +0000)]
- degrade electrical XML SG_ALERT to SG_WARN. The reason why this is output
at all is that this method is meant to be deprecated. But if it doesn't
say that, and there's no generic replacement at all, then it's rather
pointless.
- simplify parameter initialization (The old code copied from Instrumentation/
but has been simplified there in the same manner a few months ago
The new method is less picky about additional nodes ane outputs less
pointless alerts. If there shall really be a check for that, then
this should be a separate function. But it's nowhere else done in fgfs.
mfranz [Thu, 10 May 2007 14:28:17 +0000 (14:28 +0000)]
- don't abort just because of an unexpected "repeat period"! Complain and
recover instead
- it was apparently planned to run the updated loop only every 1000th
frame, but the counter isn't reset, so it runs every frame
- use SG_LOG instead of cerr
- don't add redundant slashes in SGPath::append()
mfranz [Thu, 10 May 2007 12:50:50 +0000 (12:50 +0000)]
- One of the most frequent bug reports is about "terminate called after
throwing an instance of 'sg_io_exception'\nAbandon". And this is caused
by compiling fgfs/sg without exception support (unlikely) or linking
against a libSDL/libglut that was compiled/linked without execption
support. While we can't fix that, we can tell the users who's to blame. :-)
- handle const char * exceptions
mfranz [Wed, 9 May 2007 20:36:43 +0000 (20:36 +0000)]
Maik JUSTUS:
"minor update for the rotor FDM. It results in a more realistic
calculation of the phase shift of rotor and therefor in a little bit
more realistic flight behavior.
(Additionally you can modify the initial position of the rotor and some
(not finished) modifications for the jet ranger rotor)."
mfranz [Mon, 7 May 2007 14:29:40 +0000 (14:29 +0000)]
property_list.cxx: in verbose mode (toggle with Ctrl-'.'-entry) also
show "secret" values, that is: values of nodes with children. These
can be used like all normal (leaf) properties, but their values were
until now only shown in writeProperties() dumps. Also show the
number of attached listeners. Example: foo = 'bar' (string, AU, L3).
dialog.cxx: add warning message for broken <format>s; cosmetics