ehofman [Wed, 16 Nov 2005 15:23:18 +0000 (15:23 +0000)]
David Culp:
Here's a fix for a bug I introduced when I updated the AIStorm with
turbulence. The change I made to the FGAIEntity struct was overriding the
thermal <strength-fps> data.
curt [Tue, 15 Nov 2005 22:00:41 +0000 (22:00 +0000)]
Updates from Fred Bouvier:
You'll find attached the modified fgadmin that takes care of
'Objects' and 'Terrain' if they exist. I also implemented the
'Check all' / 'Check none' feature you suggested several months
ago.
mfranz [Mon, 14 Nov 2005 17:18:27 +0000 (17:18 +0000)]
Prevent download of thousands of METAR reports if all are for some reason
too old (wrong system time or broken proxy): stops after 10 stale reports
were fetched in a row. This should simply stop further fetching, but due
to a bug in the threading system(?) it does currently lead to abortion,
just like any other exception in the fetcher.
mfranz [Sat, 12 Nov 2005 10:51:58 +0000 (10:51 +0000)]
This is an ugly fix for an ugly problem. And no, the two uglies don't cancel
each other out. The problem is this: if we press, for example, "Ctrl-a", but
release the "Ctrl" modifier button *before* the "a" button (which nobody does
intentionally, but which happens all the time), then we don't get the RELEASE
signal on "Ctrl-a" (keycode 1), but on the "a" (79). But "a" hasn't been
pressed, so the signal is dropped. And who releases "Ctrl-a"? Nobody!
So the next PRESSED signal for "Ctrl-a" is ignored, too. It is still
"pressed" after all, isn't it? That's the reason for the occasional
non-functioning of keys.
Due to the nearing 0.9.9 release, I only commit a crude last-minute fix.
It's not as intrusive as it looks, and shouldn't be "dangerous" at all.
It only makes sure that when we get an unexpected RELEASE for one letter
key ("a") that the two twins "A" and "Ctrl-A" are released if they are
still in "pressed" state.
The proper fix will be to let fg_os{,_sdl}.cxx always report presses on the
same key ("a", "Shift-a", "Ctrl-a", "Alt-a", and other combinations of
modifiers) as the *same* key (97), only with modifiers appropriately set.
andy [Thu, 10 Nov 2005 20:26:37 +0000 (20:26 +0000)]
Fix stall widths for the "auxilliary" (reverse flow) stalls so they
are sharp, as intended. These were are never seen in practice; I
found the problem while looking at 360 degree lift curve graphs
looking for discontinuities.
andy [Wed, 9 Nov 2005 20:34:46 +0000 (20:34 +0000)]
Architectural fix allowing the "tip" popups (FOV, view name, etc...)
to pop themselves down while the simulator is paused.
The problem was with the "real time" queue in the event manager,
causing the third argument of Nasal's settimer() (a flag for "sim
time") to be ignored. Inverts the default sense of the argument, as
there are lots of uses of settimer() in the current code, almost none
of which want to use real time.
Note this fix introduces a header file incompatibility in SimGear --
be sure to update.
mfranz [Wed, 9 Nov 2005 18:23:55 +0000 (18:23 +0000)]
distinguish editable and non editable textboxes; the former will usually
be colored like input fields, while the others will be colored like normal
text
mfranz [Wed, 9 Nov 2005 17:59:53 +0000 (17:59 +0000)]
prepare for pending plib change: set combobox/selectbox input field colors
to other color than "Yeukky Pink"; #undef'ed for older plib versions; plib
patch will be made available in case fgfs 0.9.9 is released before plib 0.8.5
curt [Wed, 9 Nov 2005 17:08:04 +0000 (17:08 +0000)]
Mathias Fröhlich:
Take any arbitrary vector (not necessarily vertical) and intersect it with
the current set of loaded terrain tiles. Returns lon, lat, elev. This
could have a multitude of useful applications such as testing line of sight
between two objects, faking a terrain following lookahead radar system,
virtual georeferencing, etc.
mfranz [Tue, 8 Nov 2005 11:05:50 +0000 (11:05 +0000)]
Don't use the [] notation here to test for the existence of a map member,
because this creates an empty entry if it didn't exist. This made the
activation of the dialog mandatory before the next gui subsystem update()
happened. Otherwise fgfs segfaulted.
mfranz [Sun, 6 Nov 2005 23:53:30 +0000 (23:53 +0000)]
interpret negative dialog <x> and <y> coordinates as distance from the
right/upper screen edge (analogous to the --geometry spec), assuming
that we never want to draw outside the screen area; for this to work
we need to write the original x/y coords back to overwrite the absolute,
positive values that the layouter stored there
mfranz [Sun, 6 Nov 2005 14:27:17 +0000 (14:27 +0000)]
backing out all changes to non-depreciated symbols/functions: plib's cvs
isn't tagged, so we can't easily say what was added after the last stable
release
mfranz [Sun, 6 Nov 2005 14:22:02 +0000 (14:22 +0000)]
backing out all changes to non-depreciated symbols/functions: plib's cvs
isn't tagged, so we can't easily say what was added after the last stable
release
andy [Wed, 2 Nov 2005 18:34:06 +0000 (18:34 +0000)]
Vivian reported that the caster angle of the Hunter was experiencing
"jitter" when the aircraft was stopped. This is a fundamental
characteristic of the gear model, and can't be fixed without major
surgery (and not a small amount of blinding insight). But we can at
least clamp it so the value can't change unless the wheel is moving
with a nontrivial velocity (5cm/sec in this case).
mfranz [Wed, 2 Nov 2005 13:11:19 +0000 (13:11 +0000)]
allow to trigger widgets via accelerator key, which is defined via "keynum"
property (e.g. <keynum>49</keynum>). The numbers are the same as in
keyboard.xml. (Could later be replaced/enhanced with <key>Ctrl-a</key>
notation.) This does, of course, only work for widgets with assigned
bindings.
ehofman [Tue, 1 Nov 2005 13:41:49 +0000 (13:41 +0000)]
In the process of changing, adding and removing files the last few years
there was the situation where four directories contained jst two files,
of which three directories were aircraft related, and one directory contained
test code from Curt that might be better of in SimGear anyhow.
This is just a patch to move a bunch of files to new locations. In case of
local changes to any of them you can do the following:
move replay.[ch]xx from src/Replay to src/Aircraft
move control.[ch]xx from src/Control to src/Aircraft
move ssgEntityArray.[ch]xx from src/Objects to simgear/screen
In addition it has been decided only to use .[ch]xx files in all directories
unless it's contained within an FDM specific directory, in which case the
author is free to do whatever (s)he wants.
In this repspect the following files have been renamed in src/Multiplayer:
tiny_xdr.[ch]pp has become tiny_xdr.[ch]xx
multiplaymgr.[ch]pp has become multiplaymgr.[ch]xx
mfranz [Sun, 30 Oct 2005 10:50:36 +0000 (10:50 +0000)]
Harald JOHNSEN:
"the model is deref'd and deleted when the refcount is null *but* it is
still referenced in the ai model list, so next time you ask for it you will
have a reference on something deleted"
ehofman [Thu, 27 Oct 2005 08:40:12 +0000 (08:40 +0000)]
Jim Wilson: Adjusting the near clip plane to 0.10 units (approx 3 inches) is less ambitious, a bit more forgiving for the 3D modelers, and perfectly adequate.
mfranz [Wed, 26 Oct 2005 18:20:27 +0000 (18:20 +0000)]
Replace hard-coded dialogs with NewGUI/XML dialogs, where some widgets
and text strings are filled in before displaying. For testing: the new
dialogs are available under menu -> ATC -> Frequencies, and when
communicating with ATC (' key). This isn't completely finished yet, and
will probably profit from some feedback from the ATC folks.
tower.cxx: remove redundant "if (foo) delete foo".
ehofman [Wed, 26 Oct 2005 09:03:49 +0000 (09:03 +0000)]
Alex Romosan:
I tried to make sure accessor functions which return by reference act
on const objects. also replaced some iterators with const_iterator
and a few return/pass by reference that were missed the first time
around.
ehofman [Tue, 25 Oct 2005 13:49:55 +0000 (13:49 +0000)]
Alex Romosan:
* Use "const string&" rather than "string" in function calls when appropriate.
* Use "const Point3D&" instead of "Pint3D" in function calls when appropriate.
* Improved course calculation in calc_gc_course_dist()
* Safer thread handling code.
Vassilii Khachaturov:
Dont use "const Point3D&" for return types unless you're absolutely sure.
Erik Hofman:
* Use SGD_(2)PI(_[24]) as defined in simgear/constants.h rather than
calculating it by hand every time.
ehofman [Tue, 25 Oct 2005 08:57:33 +0000 (08:57 +0000)]
Vassilii Khachaturov:
this patch eliminates some cut-and-paste,
as well as makes some frequently used strings const static at the same
time. A couple of interfaces are decorated with 'const' on the parameters
that are such, in line with other such interfaces where const is used.
"NINE" changed to "NINER", to match ICAO practice and the current FGFS
voice data.
A fixed buffer, sprintf and a warning comment replaced w/ostringstream.
mfranz [Sun, 23 Oct 2005 16:10:32 +0000 (16:10 +0000)]
add support for removeChildren(): takes one name as optional argument
and removes all children with this name; if no name is given, removes
all children (OK'ed by Andy)
mfranz [Sun, 23 Oct 2005 10:19:05 +0000 (10:19 +0000)]
'keep' defaults to true (which is a bad choice -- we never really want
children saved away when removing a node). This caused gui bindings to
fail in some rare cases --> don't keep.
mfranz [Sat, 22 Oct 2005 16:51:27 +0000 (16:51 +0000)]
We never want to know if a dialog is there or not. If we ask for one and
it isn't there, this is a bug. Thus centralize the error message so that it
doesn't have to be repeated everywhere. Of course, the calling code should
still consider that a returned property node may be 0.
ehofman [Sat, 22 Oct 2005 13:37:13 +0000 (13:37 +0000)]
Vassilii Khachaturov:
I found that all the current users of the companion
function, findByFreq() actually did assume radians despite the misleading
comment in the .hxx and .cxx saying it's degrees. I've fixed the
comment now, and no longer change the Navaids code. The new Navaids user
in NewWaypoint() is now passing radians to the findByIdent().
Note that along with fixing the comments in the navlist.hxx, I removed
an obsolete method findByLoc() declaration (there is no definition
anywhere).
ehofman [Sat, 22 Oct 2005 11:22:05 +0000 (11:22 +0000)]
Ima Sudonim:
CygWin/gcc-3.4.4 updates.
I replaced my cygwin compiler with 3.4.4, did a make clean of plib, simgear,
and flightgear, then did a make install of all three. With the included changes,
everything builds fine, and runs fine.