david [Thu, 16 Feb 2006 01:30:28 +0000 (01:30 +0000)]
The "constrained" property for a mouse mode now actually constrains
the mouse rather than wrapping it. Wrapping around to the other side
of the screen has very bad consequences when using the mouse for
flying or viewing -- it can result in sudden jumps in the controls or
the viewpoint when the mouse jumps to another side of the screen.
Right now, the mouse is constrained to stay between 25% and 75% of the
screen on both the X and Y axis -- whenever it hits an edge, it jumps
back to the centre of the screen again (which causes no control or
view jump).
mfranz [Mon, 13 Feb 2006 20:08:04 +0000 (20:08 +0000)]
screenPrint() is obsolete. Use screen.log.write() for the same purpose,
or write to the color properties in /sim/screen/. If this Nasal/GUI
implementation turns out to be too slow, we'll write a generic OpenGL/plib
version simliar to the ATCdisplay code. (OK'ed by Andy and Stuart)
mfranz [Mon, 13 Feb 2006 19:59:07 +0000 (19:59 +0000)]
screenPrint() is obsolete. Use screen.log.write() for the same purpose,
or write to the color properties in /sim/screen/. If this Nasal/GUI
implementation turns out to be too slow, we'll write a generic OpenGL/plib
version simliar to the ATCdisplay code. (OK'ed by Andy and Stuart)
mfranz [Mon, 13 Feb 2006 19:46:03 +0000 (19:46 +0000)]
screenPrint() is obsolete. Use screen.log.write() for the same purpose,
or write to the color properties in /sim/screen/. If this Nasal/GUI
implementation turns out to be too slow, we'll write a generic OpenGL/plib
version simliar to the ATCdisplay code. (OK'ed by Andy and Stuart)
mfranz [Mon, 13 Feb 2006 16:49:18 +0000 (16:49 +0000)]
set /sim/fg-home in analogy to /sim/fg-root. This is useful for various
scripts that load/write user specific data that shouldn't go to PWD, and
can't go to $FG_ROOT (due to permissions and clean separation of 'official'
data and local modifications)
mfranz [Sun, 12 Feb 2006 20:37:57 +0000 (20:37 +0000)]
Just a gimmick: make background color configurable. Maybe some dark color
might look nicer for certain aircraft specific splash screens. Test with:
$ fgfs --prop:/sim/gui/colors/splash-screen/blue=0.35
mfranz [Sun, 12 Feb 2006 19:43:53 +0000 (19:43 +0000)]
only user specified negative coords are interpreted as relative to the upper
right corner, not those that are result of centering a dialog if no x/y are
given. This centers screen.log messages correctly. But maybe we have to
rethink that special meaning of negative coords altogether.
ehofman [Sat, 11 Feb 2006 13:16:56 +0000 (13:16 +0000)]
Mathias Froehlich:
This patch removes some useless indirection when creating AIModels. It
obsolets AIScenario*.
AIEntities are just an intermediate copy of an other intermediate copy of an
xml file on the way from the ai scenario configuration file to the AIModels.
As such the AImodels can now be created directly from the property tree read
from the scenario file.
This reduces the amount of work needed to add an other AIModel and reduces the
amount of copy operations done during initialization.
It also moves internal knowledge of special AI models into these special AI
models class instead of spreading that into the whole AIModel subdirectory
which in turn enables to use carrier internal data structures for carrier
internal data ...
Also some unused variables are removed from the AIModel classes.
I believe that there are still more of them, but that is what I stumbled
accross ...
Tested, like the other splitouts these days in a seperate tree and using the
autopilot for some time, and in this case with a carrier start ...
mfranz [Sat, 11 Feb 2006 11:51:20 +0000 (11:51 +0000)]
rename user `preferences.xml' to `autosave.xml'. The former name lead to
problems because a lot of people already have their *real* preferences
set in ~/.fgfs/preferences.xml (and don't want fgfs to stomp over them),
because the name doesn't tell people that their data aren't save there
(comments!), and because this is inconsistent with the global preferences.xml
file, where user changes *are* respected.
daveluff [Fri, 10 Feb 2006 23:19:45 +0000 (23:19 +0000)]
Implement some of the inner-knob-out scan functionality. The waypoints of the active flightplan can now be scanned on the NAV4 page, and will become the default direct-to waypoint if dto is pressed whilst scan in on on the NAV4 page. Scan functionality on the waypoint pages is still TODO.
mfranz [Fri, 10 Feb 2006 20:15:01 +0000 (20:15 +0000)]
preliminary fix for the "golf foxtrot sierra follow the golf foxtrott sierra"
problem; Of course, this needs to respect the /sim/user/callsign settings
as a next step.
ehofman [Thu, 9 Feb 2006 12:29:05 +0000 (12:29 +0000)]
Vivian Meazza:
This patch is a combined effort by Gregor Richards, Oliver Schroeder, and
Vivian Meazza (and code cleanups and improvements by Erik Hofman). It corrects
the bug in which a Multiplayer model responds to local inputs, and the view
number bug which caused certain aircraft to appear as cockpit only models. It
passes remote properties over the net, and all major control surfaces and gear
are now animated correctly, providing that the local ~model.xml file contains
no leading "/" in the <property></property> data entries. MP objects
are now extrapolated using 1st and 2nd derivatives to make their movement
appear more smooth. The sim is now halted while a new client joins the net.
Known problems with MP are non-display of the remote client under certain
circumstances of starting/resetting, and a freeze on starting. These bugs are
long standing, and are not addressed by this patch.
Special thanks must go to AJ Macleod for his patient testing of this patch over many evenings.
We have also moved part of multiplayer into AIModels as part of the ongoing
development of MP.
mfranz [Wed, 8 Feb 2006 17:18:24 +0000 (17:18 +0000)]
make sure the index is in the array, which isn't necessarily the case,
because a dialog button can get pressed when its callback isn't available
any more. Ideally, we would close the dialog or update its buttons when
this happens. But this requires bigger changes.
mfranz [Tue, 7 Feb 2006 22:35:22 +0000 (22:35 +0000)]
emit to different message properties:
/sim/messages/{atc,pilot,ai-plane,ground,approach}
These can the be used for differenct screen.log colors and for different
voices. (Aircraft & tutoruals may want to write to /sim/messages/copilot)
mfranz [Sat, 4 Feb 2006 16:37:25 +0000 (16:37 +0000)]
store garbage collector id (again) in the listener class, and free the
handler on destruction. There's no explicit Nasal command for removing
a listener, but deleting the node should fully remove them.
ehofman [Thu, 2 Feb 2006 09:57:33 +0000 (09:57 +0000)]
Vassilii Khachaturov:
Fix the current buggy rain orientation behaviour for the views attached to the
aircraft (while still inheriting bugs with the views attached to anything else).
mfranz [Wed, 1 Feb 2006 23:52:36 +0000 (23:52 +0000)]
panel_io.cxx: if an action doesn't have a button, fire its bindings
immediately and then throw it away; this is useful for initialization
purposes (see dme.xml)
ehofman [Mon, 30 Jan 2006 13:29:49 +0000 (13:29 +0000)]
Durk Talsma:
- Feet to meter conversion mistake (in AI getGround elev)
- Improved ground following code (not yet perfect, but for now no one will
notice it within the marginal altitiude differences at the taxitrack or
runway)
- Exclusion of the "AI" directory witihin data/Aircraft in
main/init/fgSearchAircraft, to prevent AI aircraft to be picked up by the
aircraft search function
ehofman [Mon, 30 Jan 2006 10:54:10 +0000 (10:54 +0000)]
Mathias Fröhlich:
Jon Stockill wrote:
> I've just discovered that when using the null fdm I'm not getting
> updates to /position/ground-elev-m any more. So I can't actually
> retrieve the terrain elevation. Is there somewhere else in the property
> tree I could read this from?
ehofman [Mon, 30 Jan 2006 10:50:28 +0000 (10:50 +0000)]
Mathias Fröhlich:
This patch limits the maximum simtime we do simulation computations for.
That is highly sensible if you run flightgear in valgrind or some realy slow
debug build. In such a case it is possible that flightgear gets totally
unresponsible, because simulation time might increase slower than real time.
That patch introduces a maximum simulation time per rendered frame to limit
that effect.
If the property /sim/max-simtime-per-frame is set to something strictly
positive, the simulation time is limited to that value.
The default is unchanged - no limit.
Anyway, from the point of view of gui responsiveness and responsiveness to
realtime controls like joystick inputs it might be a good idea to limit that
by default to say 1 second. If you have less than 1fps, flightgear is
unplayable anyway and I believe we do not longer need to care for realtime
correctness for that case ...
mfranz [Sun, 29 Jan 2006 16:20:31 +0000 (16:20 +0000)]
set the /sim/signals/reinit property on reinit, so that aircraft code can
attach listeners. Other relevant stuff should go here, too. (/sim/crashed
could be one.)
mfranz [Sat, 28 Jan 2006 16:06:03 +0000 (16:06 +0000)]
restore the uglyness: call the resize callback every frame again, even
though the window wasn't resized. I'm just not adventurous enough for
a cleaner solution in the light of the upcoming release. At least the
xsize/ysize properties aren't set each frame any more, so listeners
work now properly.
mfranz [Sat, 28 Jan 2006 10:40:47 +0000 (10:40 +0000)]
write to /sim/startup/xsize only if the size really changed; likewise for
ysize. This is useful for listeners, e.g. the one that will re-position the
FPS dialog.
mfranz [Sat, 28 Jan 2006 00:10:39 +0000 (00:10 +0000)]
Resizing is done when fg_os{,_sdl}.cxx says so, not in every single frame.
(This defeats the purpose of the resize callback and makes "listening" to
the xsize useless.)
ehofman [Tue, 24 Jan 2006 14:45:13 +0000 (14:45 +0000)]
Mathias Fröhlich:
Incorporating the shared ptr code:
- All scenegraph references from SimGear
- SGMaterial which already had a reference counter uses now that common
infrastructure.
- SGMatModel is now counted.
- SGSoundSample from SimGear
- And the corresponding change for the sound samples in flightgear which fixes
a latent crash if FGBeacon would evern be deleted.
ehofman [Sat, 21 Jan 2006 10:06:09 +0000 (10:06 +0000)]
Jim Wilson:
This patch fixes configure.ac so that when an alternate prefix location for simgear is specified, configure tests for the header file jpegfactory.hxx in that specific location only.
ehofman [Fri, 20 Jan 2006 17:19:01 +0000 (17:19 +0000)]
Integrate a large part of John Wojnaroski's 747 cockpit project.
Erik Hofman:
This patch contains an update to net_ctrls.hxx that adds an extra 100 bytes
(or an equivalent of 25 (u)int32_t types) of reserved space. This could be
used to make the protocol forward and backward compatibel within a certain
scope. Be sure to read the instructions at the begining of the header file
when addinf new variables.