1
0
Fork 0
Commit graph

8820 commits

Author SHA1 Message Date
James Turner
a46114da9a Fix typo, add Hudson Build-ID to reports. 2014-01-20 21:54:06 +00:00
James Turner
1b585fa415 Windows native file-dialog, menu-bar
By Gijs with additions by James. Menubar is disabled at present
since it's not usable and potentially inferior to other solutions,
but committing the code so it doesn't rot.
2014-01-20 18:43:02 +00:00
James Turner
ce3a7b20fe Crash-fix: mat-lib is now reference-counted.
Adapt to corresponding SG change to make SGMaterialLib be ref-counted,
and have the 'reload-materials' command notify the tile-manager of this,
so it can update the options struct it passes to new tiles.
2014-01-19 16:49:44 +00:00
James Turner
2df74c9b63 Silence some clang warnings.
(Unused private variables)
2014-01-19 16:49:43 +00:00
Erik Hofman
fe79be0702 Do not use the new JSBSim ground reactions code by default until there is a good way to identify Nasal scripts that do this themselves 2014-01-19 15:23:15 +01:00
James Turner
49a0398fc6 Make lifetime of CameraViewportListener explicit.
MSVC is warning on this usage, as is the Mac release build. Working
around the issue for the moment.
2014-01-18 18:49:03 +00:00
James Turner
2a460d8e86 Make CrashRpt link optional
(The variable contains -NOTFOUND, not the empty string, so we can't
just link against it regardless)
2014-01-18 15:36:20 +00:00
James Turner
590be3f8ff Initial integration of CrashRpt for Windows. 2014-01-18 14:51:19 +00:00
Erik Hofman
e3e44e49ee Sync. with JSBSim CVS: although it looks a large part it is mostly bug fixes and fixing compiler warnings 2014-01-18 10:56:15 +01:00
James Turner
f98af7eb35 Fix un-initialized memory read. 2014-01-17 17:17:47 +00:00
Clément de l'Hamaide
c0c8158ca1 FGCom: force 8.33KHz to be handled even if the frequency doesn't exist 2014-01-16 18:15:58 +01:00
James Turner
2a354e224c Make Traffic-via-terrasync conditional
GUI dialog already set the property, just need to pick it up.
2014-01-15 22:01:02 +00:00
James Turner
5e7574c9c2 Bug-fix: Cocoa menus work in aircraft with custom dialogs.
Restarting the GUI could cause Cocoa menus to misbehave, due to
destruction behaviour of SGBinding. Use new clear() helper in the
short term to work around this.
2014-01-15 22:00:09 +00:00
James Turner
2b55acd3eb Tweaks to fg-aircraft handling.
Warn (but do not require, since people would probably complain) when
added paths do not contain an Aircraft subdir. When people specify
a path which ends in /Aircraft, use the parent directory.
2014-01-15 17:10:12 +00:00
James Turner
d8a3f160ef Bugfix: guard against corrupted airport XML. 2014-01-14 13:42:11 +00:00
James Turner
1b9394fc37 Crashfix: move spatial, AI queries in map-widget
In threaded OSG drawing, MapWidget::draw runs in the render
thread context, but touches lots of main thread state. Move most of the
work to an update() helper run on the main thread instead, so draw()
mostly makes pure GL calls.

(This is a fix for 3.0, the real solution is to migrate to a
Canvas-based map and GUI)
2014-01-14 13:11:06 +00:00
James Turner
976f3115a9 GPS bug fix: restore startup mode.
- the 'default to current airport' behaviour got broken by the
changes to the scratch. 
- expose a 'valid' flag on WP1
2014-01-14 13:04:52 +00:00
James Turner
9993e0a588 Fix bug 1286 - mouse scroll-wheel+shift ignored
On Mac, the OS is mapping shift+wheel to horizontal scrolling for
those of us without a mighty-mouse or trackpad. Detect this case
and map back to vertical scrolling inside FlightGear for the moment.

https://code.google.com/p/flightgear-bugs/issues/detail?id=1286
2014-01-13 21:08:32 +00:00
James Turner
061154d7a6 Reset, fix Nasal timers added on shutdown. 2014-01-13 20:13:34 +00:00
James Turner
4d0eeb8184 Reset work, fix time-slew on OSG event handling. 2014-01-13 20:13:34 +00:00
Clément de l'Hamaide
606643a199 FGCom: update special_frq for built-in/standalone sync 2014-01-12 21:17:57 +01:00
James Turner
7316360421 Clear the custom OSG notify logger on shutdown.
Should avert crashes due to order of static destruction.
2014-01-12 17:18:35 +00:00
James Turner
7b8a64b614 Crash fix: thread-safe material conditions
When tiles are being loaded, re-evaluate the materials cache once
per update cycle. (This is probably too often, but no worse than the
previous approach).
2014-01-06 08:28:40 +00:00
James Turner
448539a6b9 Fix crash: Quit via Cmd-Q on Mac.
Tweak static-init order of some OSG objects, so they are valid when
fg_terminate runs, and hence orderly shutdown in possible.
2014-01-04 17:27:55 +00:00
James Turner
9e773e85f8 #1291, hang on exit with OSG threading.
Explicitly stop threading during shutdown, before destroying various
rendering / viewer related structures.
2014-01-04 16:10:42 +00:00
James Turner
580a7f07dd Fix METAR-download bug on Windows.
https://code.google.com/p/flightgear-bugs/issues/detail?id=1207

Use the new (in SimGear) sgGMTime helper when comparing METAR age.
This prevents users in time-zones 4 or more hours ahead of GMT from
being unable to use METAR reports.
2014-01-01 21:05:29 +00:00
James Turner
47e802e674 Fix for the fix: check for a viewer.
- avoid a crash if we bail out before creating the viewer (missing
data or bad aircraft)
2013-12-30 17:16:53 +00:00
James Turner
b0db2a764f Fix crash on exit (cancel the osgDB pager)
- borrow some code from the new reset codepath to cleanly stop the
OSG pager thread during normal shutdown. Avoids a race-condition 
destroying various structures the pager thread might be modifying.
2013-12-30 15:24:15 +00:00
Thomas Geymayer
5b537b6999 PID: ensure correct initialization with large sampling interval 2013-12-22 14:18:25 +01:00
James Turner
0940a33907 Use a real function to wrap isfinite differences.
Don't worry about compiler ability to inline the macro for the moment;
use a real function to ensure lookup is stable on different compilers.
2013-12-22 11:18:48 +00:00
James Turner
43358a2418 Fix a crash where we show a message-box on start.
Don't assume we got as far as creating a viewer when destroying
the renderer.
2013-12-21 15:31:27 +00:00
James Turner
c717b70231 Support non-C99 mode in MSVC. 2013-12-21 15:31:27 +00:00
James Turner
4c51ad0d87 Cocoa: fix warning about deprecated function.
SetFrontProcess is deprecated, use NSApplication instead now we
have the CocoaHelpers file.
2013-12-21 15:31:27 +00:00
James Turner
b3dbfe21fe Fix some warnings from new Xcode.
finite is deprecated, use C99 isfinite as recommended.
2013-12-20 12:42:12 +00:00
Rebecca Palmer
4427ee7406 Always make sure the Terrasync directory is set and exists
This was previously done only if Terrasync was on, but this made
it impossible to use the GUI dialog to turn it on for the first
time in a fresh install
2013-12-20 12:39:23 +00:00
James Turner
24c1129140 Bugfix: avoid sky colour errors when vis < 1000m
(needs the accompanying Simgear change in SGSky)
2013-12-19 17:18:09 +00:00
James Turner
5cf8157a66 Security: more conservative dir permission masks.
Use 0755 instead of 077 everywhere we create a directory.
2013-12-19 14:53:39 +00:00
James Turner
52f2f5ff78 Bugfix: remove the (totally broken) skyblend option 2013-12-19 14:53:39 +00:00
Torsten Dreyer
d1cae3ab4d autopilot: add the forgotten RateLimitFilter 2013-12-19 09:40:24 +01:00
Thomas Geymayer
67be73fdde Expose SGPath to Nasal 2013-12-18 10:30:19 +01:00
Torsten Dreyer
1ffa09cc49 Add new filters from Alan Teeder 2013-12-17 17:28:16 +01:00
James Turner
12ea6824eb Rembrandt: fix sky color at altitude.
Don't override global clear color in the Lighting stage. Should fix ugly 'circle' appearing due to sky sphere being clipped when above 32000 ft.

Fix suggested by Emilian H.
2013-12-17 13:56:26 +00:00
Rebecca Palmer
617e638242 Stop --native-ctrls option from breaking JSBSim
Remove unused instance of FGControls from FGNativeCtrls, as it was
binding to the property tree in place of the globals->get_controls
that JSBSim reads input from, blocking all input
2013-12-15 21:32:40 +00:00
Rebecca Palmer
bf1fe65bc5 Disable screensaver: initial Linux-only implementation
Add a function fgOSDisableScreensaver() that attempts to disable the
screensaver (currently only succeeding on Linux), and call it on startup.

CMake option USE_DBUS (on by default), requires libdbus-1

Motivation: most screensavers do not monitor the joystick
https://bugs.launchpad.net/ubuntu/+source/flightgear/+bug/793599

Discussion: http://sourceforge.net/p/flightgear/mailman/message/31717061/
2013-12-15 21:18:22 +00:00
James Turner
b3534ff8c2 Reset: use new copy-properties helper. 2013-12-15 20:46:34 +00:00
James Turner
f07042f7d7 Use binding-list fire helper. 2013-12-15 20:43:27 +00:00
James Turner
df3f842f8a Reset: Clear the pager queues, preserve properties. 2013-12-09 23:27:40 +00:00
James Turner
5d8fa03090 Shutdown: clear effects cleanly.
Avoids effects (and referenced properties / objects within) persisting
due to references in the effects cache, after globals are gone.
2013-12-09 23:27:40 +00:00
Thomas Geymayer
93dff17649 Set "/sim/fghome-readonly" to false also for Windows.
"/sim/fghome-readonly" is read with a default of false always,
but I think the code should set it explicitly to false for all
platforms.
2013-12-09 23:16:25 +01:00
Thomas Geymayer
13d94f240c Check return values if write and unlink. 2013-12-09 23:15:35 +01:00
Thomas Geymayer
5fb7b2e12c Canvas: Now only one global SystemAdapter is used... 2013-12-09 23:13:45 +01:00
James Turner
0dcfd361a4 Kill an obsolete static in the osgViewer wrapper. 2013-12-09 21:47:18 +00:00
James Turner
7719ad920d Bug 1289, crash on AP reload
- missed update for revised subsystem ownership in the AP code.

https://code.google.com/p/flightgear-bugs/issues/detail?id=1289
2013-12-09 21:46:34 +00:00
ThorstenB
01b824929c Route manager support to read flightplans in GPX format 2013-12-08 19:36:16 +01:00
Thomas Geymayer
3a170e1a39 Scripting: clean up a bit and user more of cppbind. 2013-12-08 19:24:45 +01:00
Thomas Geymayer
cac6407a8e Add positioned.diff for fast difference calculations on positioned lists. 2013-12-08 19:24:45 +01:00
James Turner
0bad1258a3 Reset: clear the viewer scene.
On renderer shutdown, clear the viewer scene completely.
2013-12-07 15:06:39 +00:00
Thomas Geymayer
39c41eaab9 FGLinuxEventInput: check return value of write. 2013-12-07 13:48:04 +01:00
Thomas Geymayer
fcc6d3edc2 Expose SGPropertyNode::removeAllChildren() to Nasal. 2013-12-07 13:47:10 +01:00
James Turner
5a1a1781e2 Reset: ensure FGODGuage shutsdown cleanly.
- remove ODGuage instances during shutdown phase (don't wait until
deletion)
2013-12-06 18:45:45 +00:00
James Turner
bb0aee4c02 Renderer: get rid of static scene references. 2013-12-06 17:38:23 +00:00
James Turner
6763d232cd Reset: clear the osg object cache 2013-12-06 17:38:23 +00:00
janodesbois
71fa329f27 velocities/uBody got a capitale B forgot this in mp tree, maybe it would be better to male it it lower case? 2013-12-04 21:13:09 +01:00
James Turner
7ff9792b96 Reset: listener cleanup 2013-12-04 09:11:26 +00:00
James Turner
8cd71ff1ef Reset: clear effects cache 2013-12-04 09:09:47 +00:00
James Turner
9c11dfd545 Reset: free nasal-module-listeners on shutdown. 2013-12-03 21:38:45 +00:00
Gijs de Rooy
4dbcdbcceb Output route manager ETA in seconds 2013-12-03 22:37:53 +01:00
James Turner
3e1af8248a Fix a copy-paste bug in the route-manager.
autopilot/route-manager/departure/field-elevation-ft was giving
destination field elevation, not departure. Thanks to Hyde Yamakawa for
noticing this.
2013-12-01 21:48:03 +00:00
James Turner
8aba04c3a2 Reset: change FDM ownership
- make the FDM owned via a SGSharedPtr
- drop some property references explicitly.
2013-12-01 21:37:17 +00:00
James Turner
8bcf597086 Remap JSB-sim debug levels from SG_LOG levels.
(Avoids the entire aircraft config being dumped to the console at
log-level info)
2013-12-01 21:37:16 +00:00
Clément de l'Hamaide
efdb488736 Fix accent bug in MapWidget 2013-12-01 18:50:54 +01:00
Thomas Geymayer
e8f4e25c8c CanvasWidget: get new GUI camera on reset. 2013-12-01 12:58:17 +01:00
Thomas Geymayer
bf477ba678 Canvas GUI: completely reset on reinit 2013-12-01 01:35:30 +01:00
bcoconni
b996eca299 Fix for bug #1238: the accelerations, velocities, etc. are now updated to a consistent set of values prior to exiting the trim routines. 2013-11-29 19:37:39 +01:00
James Turner
25bf3793bd Reset: fix a static in play-audio-sample
Had to add this to FGGlobals, since it needs to be cleaned up
alongside the sound manager (which ideally it would be owned by, 
but that's a change for another day)
2013-11-25 23:53:58 +00:00
James Turner
4dcd96c4af Remove dependency on command-mgr singleton
Use explicit instance (from globals)
2013-11-25 09:14:46 +00:00
bcoconni
69baf3a9d6 Synchronized with JSBSim/CVS 2013-11-24 20:12:17 +01:00
bcoconni
d3f6ab38c2 Fixed a race condition so that FG runs most of the time (instead of crashes most of the time) 2013-11-24 20:06:28 +01:00
James Turner
77075a2d66 Cocoa: more Function-key shortcuts in menus 2013-11-24 17:25:02 +00:00
James Turner
d99109c9e4 Reset: do re-init Ghost bindings. 2013-11-24 15:10:00 +00:00
James Turner
57c9ed1ae3 Cocoa menu fixes for reset 2013-11-24 15:10:00 +00:00
James Turner
2015016466 Break config init / aircraft loading apart.
Allows aircraft loading to proceed during reset without original
values over-writing the updated ones.
2013-11-24 15:10:00 +00:00
Thomas Geymayer
42ab4fd222 Canvas/GUI: add/remove placement factories on init/shutdown. 2013-11-24 15:50:44 +01:00
James Turner
af6095c5d1 Reset: do general init on reset path 2013-11-22 22:52:33 +00:00
James Turner
0fbc448af0 Nasal changes for reset
- reduce use of global context (will die soon)
- replace static wrappedNode ref which breaks reset
2013-11-22 22:52:33 +00:00
James Turner
c3c0f68f76 NavData: can refresh some in-place.
(Hacking to support faster scenery-path switching)
2013-11-22 22:52:33 +00:00
James Turner
1d8b080782 Reset: delete mat-lib, re-create on reset 2013-11-22 22:52:29 +00:00
James Turner
1f699984e9 One more Mac helper moved into CocoaHelpers.mm 2013-11-19 22:01:11 +00:00
James Turner
875227057c Structural work (init + shutdown) for new reset system.
The new approach is still work in progress (compile time option) and 
non-functional, existing reset still works.
2013-11-19 17:38:51 +00:00
James Turner
2331956539 One more Mac helper moved into CocoaHelpers.mm 2013-11-18 15:52:30 +00:00
James Turner
8b4b49cad2 Read-only mode fixes. 2013-11-18 15:40:14 +00:00
James Turner
2455d86d8b Fix a propObj -> node conversion bug.
Thanks to Bertrand Coconnier for spotting this.
2013-11-18 08:40:34 +00:00
Clément de l'Hamaide
2d145e072e FGCom built-in: restore speaker volume settings 2013-11-17 23:37:37 +01:00
janodesbois
6afc17a763 static.cxx msvc bug correction. 2013-11-17 17:26:56 +01:00
Eric van den Berg
8770e61d1b static port can be side-slip/alpha dependant, to add a part of total
pressure on the reported static pressure.
2013-11-16 23:21:11 +01:00
James Turner
2c4ac08895 Globals: delete/shutdown tweaks.
Avoid aircraft-model crash in accessing fx/sound
during shutdown.
2013-11-16 14:25:12 +00:00
James Turner
fe357ba2a9 Refactor aircraft-dir visiting.
Cap maximum depth to avoid bug 865
2013-11-16 14:24:37 +00:00
James Turner
d2962ffb2d Reset: refactor static CameraGroup ownership 2013-11-16 13:02:47 +00:00
James Turner
98078cdd55 Reset: make fgSetDefaults non-static. 2013-11-16 13:02:43 +00:00
James Turner
88aef8caf8 Reset: guard against picks during re-init 2013-11-16 12:28:56 +00:00
James Turner
0191b597e7 Environment manager: use aircraft_pos helper 2013-11-16 12:28:51 +00:00
James Turner
b4b0d635bd Reset: AIbase, drop references 2013-11-16 12:10:53 +00:00
James Turner
780393e2fe Release property refs on shutdown. 2013-11-16 11:56:42 +00:00
James Turner
fecb475145 Refactor Cocoa helpers.
Change away from using deprecated FSFindFolder.
2013-11-16 10:58:17 +00:00
James Turner
ea822a99e1 Fix some warnings identified by Clang
_ unused private members. Removed in most cases, commented
out in a couple of cases where it feels as if the code might be used in the future.
2013-11-16 09:41:33 +00:00
James Turner
2bff8d2220 Fix Linux build
Linux needs explicit includes for open() and flags.
2013-11-16 09:31:18 +00:00
James Turner
0cda3cbfb2 Multiple-instance support.
Write PID file to FG_HOME, use this to detect multiple launches.
When this situation is detected, set a marker property and place various
objects into read-only mode, such as the NavCache and TerraSync.

PID file is created using open+unlink semantics on POSIX, and 
DELETE_ON_CLOSE on Windows, so it will be removed when fgfs exits,
even if killed or crashes.
2013-11-15 21:04:15 +00:00
James Turner
13d5fd4c25 More tweaks for Linux.
(Needs explicit include of stdio, and stdarg in the header)
2013-11-14 23:32:02 +00:00
James Turner
ef55d175dd Linux needs stdarg.h for va_args 2013-11-14 23:14:51 +00:00
James Turner
1f7fdc3e07 Kill some archaic options. 2013-11-14 23:14:46 +00:00
bcoconni
139af0026f Synchronized FG with the removal of 'using std::*' in simgear's easyxml 2013-11-14 22:07:50 +00:00
James Turner
1db9d25f56 Translation helpers, add global functions.
These are designed for compact access to translations, including a
positional printf.
2013-11-14 22:03:00 +00:00
James Turner
136cd6ac51 Message box support.
This allows us to display a platform-native dialog for problems
which occur early in startup (before we can show a PUI/Canvas dialog).

In particular this improves feedback where FG_HOME, FG_DATA or
aircraft selection is wrong, all of which happen very early in startup.
2013-11-14 22:02:29 +00:00
Clément de l'Hamaide
7e90c8aa2b Force 32 bits depth on .ico - only for Windows 2013-11-14 21:24:56 +01:00
James Turner
e25aa4f004 Fix some static property references.
(These cause problems when replacing the property tree during reset)
2013-11-14 16:37:46 +00:00
Clément de l'Hamaide
1c49890bec Icons update 2013-11-13 22:49:07 +01:00
James Turner
4a3b8c5765 Reset: changes for SGSubsystem ownership.
Keep in sync with updated ownership model in subsystem groups.
2013-11-12 23:36:18 +00:00
James Turner
44246d7708 Reset: adjust for tweaked TerraSync API 2013-11-12 23:10:19 +00:00
James Turner
af40bcb60e Reset: explicit close-window function.
Allow orderly shutdown of OSG before cxa_finalize
2013-11-12 22:57:13 +00:00
James Turner
58fa30b24d Reset: uninstall deletion-manager 2013-11-12 22:55:50 +00:00
James Turner
72b85b28da Reset: route-manager guard against no plan. 2013-11-12 22:55:36 +00:00
James Turner
e008f610d1 Reset: ATIS shutdown fix 2013-11-12 22:51:23 +00:00
James Turner
41eaa58c13 Reset: panel-node cleans up listener.
Also get rid of the global FGPanelNode pointer.
2013-11-12 22:51:15 +00:00
James Turner
2322fca9c9 Reset: guard against NULL HUD / lighting 2013-11-12 22:51:10 +00:00
James Turner
6eb4e833ae Reset: sound manager can be shutdown cleanly 2013-11-12 22:50:18 +00:00
James Turner
9a77efacd9 Reset: drop FGLight prop refs on unbind() 2013-11-12 22:49:48 +00:00
James Turner
0751556aab Reset: remove commands 2013-11-12 22:47:46 +00:00
James Turner
069a098909 Reset: use simple properties for TimeManager 2013-11-12 22:47:45 +00:00
James Turner
881df711ba Reset: Nasal can be shutdown.
Also guard against duplicate init of cppbind wrapped classes.
2013-11-12 22:47:41 +00:00
Thomas Geymayer
accdf97785 Allow disabling embedded nasal (load/unload scripts). 2013-11-10 23:32:47 +01:00
James Turner
af6131b556 Bug 1246, Nasal repeating timers fire immediately.
Initial delay is passed separately to interval in the
API, oops.
2013-11-09 08:01:57 -08:00
James Turner
23fa13c76b Bug 1023, crash on replay.
Fix by Jeff Biggs, commit 7d80b30d28baccf80958d9db488364a9a5c3884b from osgearth branch.
2013-11-09 07:13:00 -08:00
Eric van den Berg
49131b5a7a pitot system stalls at high angles, using /system/pitot[x]/stall-deg 2013-11-08 20:18:27 +01:00
James Turner
8622661237 Further tuning of arg->num conversion. 2013-11-07 06:29:58 -08:00
James Turner
0d740bcfae Simpler Nasal for leg constraints.
Thanks to Philosopher for the suggestion.
2013-11-06 16:58:09 -08:00
James Turner
f0011bc759 Nasal: accept strings-containing-ints as
arguments to leg altitude/speed constraints.
2013-11-06 15:50:13 -08:00
Torsten Dreyer
6a09f01ca9 mag-compass: add deviation table and pitch property 2013-11-05 22:26:50 +01:00
Thomas Geymayer
4c9ab24b66 Keep ref_ptr in FGNasalModelData (should fix #1234) 2013-11-01 20:52:55 +01:00
janodesbois
636b6ca767 pitot adapted to /velocities/mach being the mach norm 2013-10-31 22:29:47 +01:00
janodesbois
d83bc90ca0 Revert "pitot tube using velocities/mach as mach norm, not the u componant"
pushed a testing patch, need to learn a good workflow ...
This reverts commit 05fa7130fc.
2013-10-31 22:27:29 +01:00
janodesbois
05fa7130fc pitot tube using velocities/mach as mach norm, not the u componant 2013-10-31 20:28:12 +01:00
janodesbois
78301e95b4 make YASim report /velocities/mach as the speed's norm 2013-10-31 20:25:08 +01:00
janodesbois
00aacd6442 Revert "JSBSim fix: /velocities/mach was reported as totale mach speed"
This reverts commit 4dde865cbc.
2013-10-31 20:21:13 +01:00
James Turner
02a5261797 Reset: GUI can be shutdown. 2013-10-29 23:02:46 +00:00
James Turner
e62a4f502a Reset: AI shutdown unbinds AIbase instances. 2013-10-29 23:02:22 +00:00
James Turner
71a8eac8bd Reset: view manager can be be shutdown. 2013-10-29 23:02:15 +00:00
James Turner
ad7a3e854d Reset: TimeManager can be unbound. 2013-10-29 23:01:58 +00:00
James Turner
06db85f42b Reset: given FGScenery a shutdown method.
Forces OSG branch references to be dropped.
2013-10-29 23:01:48 +00:00
James Turner
a488086d30 Reset: use a smart point for model-placement. 2013-10-29 23:01:38 +00:00
James Turner
75a01aa588 Reset: ensure Wx controller destroys cleanly. 2013-10-29 23:01:29 +00:00
Torsten Dreyer
35dad8c4c4 generic binary protocol: add 'word' datatype
this patch adds support for binary datatype word (aka int16)
now we have int (32bit), word (16bit) and byte (8bit) integer types
2013-10-28 22:57:22 +01:00
Clément de l'Hamaide
1970a8e0a8 FGCom: allow ulaw codec too 2013-10-28 21:56:27 +01:00
janodesbois
4dde865cbc JSBSim fix: /velocities/mach was reported as totale mach speed
should be the U axis component (machU)
2013-10-28 05:48:53 +01:00
Thomas Geymayer
ce09c320d3 HTTP: Rename urlretrieve/urlload to save/load. 2013-10-27 23:39:52 +01:00
Thomas Geymayer
cf270bde22 Expose HTTP module to Nasal. 2013-10-27 19:39:22 +01:00
Thomas Geymayer
8a582e6376 Update/refactor for simgear HTTP changes. 2013-10-27 19:39:22 +01:00
janodesbois
f08ea4a7bb velocities/u,v,wbody-fps are exposed in the property tree for the mp planes, extracted from motionInfo 2013-10-27 19:32:58 +01:00
janodesbois
a6030bc9ce forgot a .hxx modif in larcSim for bug 202 2013-10-27 14:51:19 +01:00
James Turner
4e7a22f589 Default to 32-bit color buffers.
Requesting 16-bit is probably doing more harm than good on modern
hardware. Command line switch to change works as before.

Also update the default window size, although this is actually
set by preferences.xml
2013-10-27 13:03:01 +00:00
James Turner
c72ac27098 Experimental sorter for airports.
Sort by size (cumulative runway length).
2013-10-27 13:03:01 +00:00
janodesbois
ef1ec369db gsdi correction, wind correction is not needed anymore, as wind composant was removed from u,v,wbody-fps 2013-10-27 13:24:57 +01:00
janodesbois
ecfdf354f1 considering u,v,wbody-fps are the ECEF velocity expressed in body axis, change in all functions/variables name dealing with them, wrongly named with wind, or even north, east, down. 2013-10-27 13:24:54 +01:00
James Turner
d127f7709f Remove confusing reference to SDL/GLUT 2013-10-26 21:12:57 +01:00
James Turner
3cdf948c8b SGI and Borland compilers are gone. 2013-10-26 21:11:02 +01:00
James Turner
6bd2acab78 Window console changes
- default to SUBSYSTEM:WINDOWS (we can still AllocConsole if needed)
- add --console option to get a console on Windows
- ensure --show-aircraft and --help modes show the console automatically.
2013-10-26 21:07:23 +01:00
James Turner
cc23e29ef0 Fix warning 'AI Aircraft without FlightPlan'
Remove the false warning when using AI Aircraft without a flightplan.
This is (it turns out) a supported use case.
2013-10-26 18:45:27 +01:00
James Turner
e93dc27153 Tweaks to startup configuration handling
- restore-defaults kills the nav cache, terra-sync cache
- new ignore-autosave option bypasses autosave.xml and leaves it
  untouched (does not over-write on exit)
2013-10-26 18:29:31 +01:00
Clément de l'Hamaide
d5b70e98e0 FGCom[-sa]: add IAX denoiser and auto gain + set silence threshold 2013-10-26 13:18:08 +02:00
Clément de l'Hamaide
3952ab6fe5 FGCom: remove unecessary assignation value 2013-10-26 01:48:31 +02:00
Clément de l'Hamaide
428f9031aa FGCom: make COM1 and COM2 switchable with Shift+Space 2013-10-26 01:28:05 +02:00
James Turner
5c97b7e713 Change tooltips to enable explicit.
Instead of using a negative delay to disable, make the setting
operate directly. This simplifies UI on top.
2013-10-25 09:18:59 +01:00
James Turner
81e86f5b20 Pause popup respects the preference. 2013-10-24 23:23:01 +01:00
Clément de l'Hamaide
6332693ae5 FGCom: use Speex codec instead of GSM codec 2013-10-24 12:14:31 +02:00
Thomas Geymayer
c4f02cc41e Fix for #1244 (Canvas placements with pick animation). 2013-10-24 01:30:54 +02:00
Thomas Geymayer
961905a6cf NasalCanvas: expose Element::getParent() to Nasal 2013-10-23 17:11:56 +02:00
James Turner
2f51052860 FGCom: initialise some variables.
Avoid a crash on re-init where _initialized member was never set.
2013-10-23 09:38:16 +01:00
Torsten Dreyer
60575c3b8c generic protocol: another attempt to make MSVC smile 2013-10-22 21:02:06 +02:00
Torsten Dreyer
6b75b23309 generic protocol: don't rely on GNU extension 2013-10-22 14:17:35 +02:00
James Turner
47ecc0ce29 Fix an MSVC debug crash.
Ensure the route-manger unregisters itself from the flightplan
on destruction, since it is a delegate.
2013-10-21 23:38:01 +01:00
James Turner
6845ff56f3 Fix download rate on splash screen. 2013-10-21 23:04:23 +01:00
Torsten Dreyer
baebc9b64c Add protocol wrappers to the generic protocol
This adds two wrappers to the generic protocol to help interfacing
small microcontrollers (arduino et. al.)
When receiving binary data over a sequential link, it's hard to tell where a packet
starts and where it ends. Two existing solutions gets implemented with this patch:
KISS (http://www.ka9q.net/papers/kiss.html) originally developed for ham radio
packet radio devices and STX/ETX byte stuffing.
This adds only the OUT direction, IN will be implemented over the next weeks.

For implementation details on the client (microcontroller's) side, check out
http://gitorious.org/flightgear-pmpt/cmpt/

This implementation is used in the c172fg project to be presented at FSweekend 2013.
2013-10-21 20:43:22 +02:00
James Turner
b30408b862 Fix bug 1227, cache thrash on Win.
Since we skip POI load on Windows, we also need to
omit the stat check. Apologies for the dumb mistake.

(Will back port to 2.12 branch)
2013-10-21 13:26:08 +01:00
James Turner
e3841fc9ef Fix typos. 2013-10-20 20:46:40 +01:00
James Turner
38193d7843 Support explicit aircraft interior models.
- allow multiple model files in the -set.xml specification
- allow each model to be tagged with a usage string
- put models tagged 'interior' into a LOD group.

This is experimental, the LOD ranges will be made configurable soon.
2013-10-20 20:46:33 +01:00
Thomas Geymayer
771586854b Make build information readonly and clean up debug output. 2013-10-20 12:59:44 +02:00
James Turner
46e8c65612 Expose OSG notify severity at runtime.
Define a new property /sim/rendering/osg-notify-level and listen
to it, so we can update the notification level at run time.
2013-10-20 09:44:38 +01:00
James Turner
80fb317eeb Don't speak < or > when using Festival.
Patch from HomerJ, avoid sending some additional special
characters to Festival, which renders then as 'greater than' /
'less than'.
2013-10-20 09:43:48 +01:00
Thomas Geymayer
e4b8e1ea07 Trigger segfault/stacktrace to trace memory corruption.
Catch OSG error message if osg::Reference derived class
is deleted with non-zero reference count and trigger a
segfault to get a stack trace.
2013-10-20 01:26:32 +02:00
Thomas Geymayer
6b88302037 Provide debug information on thread safety of osg::Referenced. 2013-10-19 01:20:28 +02:00
James Turner
1e746500dd Validate arg to Nasal airport.comms().
Thanks to HomerJ for the catch.
2013-10-18 15:54:44 +01:00
James Turner
f6fafffeb5 Initial hacking on terra-sync of traffic files. 2013-10-17 17:33:30 +01:00
Thomas Geymayer
b35119d408 FGNasalModelData: also log path of model. 2013-10-17 13:29:38 +02:00
Thomas Geymayer
d27919cd16 More logging for FGNasalModelData. 2013-10-17 11:48:01 +02:00
Thomas Geymayer
5c38395395 NasalSys: do not print invalid elements for error backtraces. 2013-10-16 23:41:38 +02:00
James Turner
f499913762 Map shows all airports when zoomed in.
Bug 1135, or part of it.

(Ignore the short-runway culling when zoomed in)
2013-10-15 22:28:10 +01:00
James Turner
a45e3d1d07 Bug 1217, crash on AI traffic data.
Guard against flight plans with missing airport
information.
2013-10-15 22:27:19 +01:00
James Turner
386d87e098 Cleanup exit handling.
Replace many lingering calls to exit() from the code,
replacing most with exception throws, which can be
caught by the existing mechanisms.

Update the option-parsing code to return an explicit
value indicating what to do (e.g., exit status to return
to the shell).
2013-10-15 22:16:50 +01:00
James Turner
78f2f2f142 Work-around for issue 1231.
Force sglog() to be initialised before at exit
handler is registered, so logging can be used from
inside our exit handler.
2013-10-15 22:02:36 +01:00
Thomas Geymayer
26a3573aea Update/simplify for SimGear changes. 2013-10-15 17:48:13 +02:00
Thomas Geymayer
5c42071fbb Scripting: get rid of gcHash and use new SimGear/Nasal functions. 2013-10-15 00:58:21 +02:00
ThorstenB
7ce2107336 Add support for IGC logging protocol.
Many light aircraft include GPS loggers capable of recording the flight
path using IGC records. Lots of third party utilities are available to
analyze, process and convert igc files.
Usage: "fgfs --igc=file,out,1,OutputFile.igc"
2013-10-14 22:13:31 +02:00
Thomas Geymayer
df7e56b049 Canvas: update for SimGear changes. 2013-10-12 00:43:30 +02:00
Dirk Dittmann
778cc8c6a0 GPS
- greatCircleCrossTrackError added to LegWayptCtl, DirectToController, OBSController
	- config overflight seqence
		config/over-flight-arm-angle-deg	90
		config/over-flight-arm-distance-nm	1
		config/over-flight-distance-nm		0
2013-10-03 18:08:02 +02:00
James Turner
761b4835f9 Make positioned queries more defensive.
Validate the filter type range, to avoid crashing on bad ranges.
Accept arbitrary type lists in the Nasal API for searching by distance
2013-10-02 22:28:19 +01:00
James Turner
b2759d018b Fix a crash with GPS dialog.
If an invalid filter type is supplied, don't run the queries.
This showed up with GPS dialog, since the PUI combo box defaults to
no entry selected, not the first entry.
2013-10-02 22:08:17 +01:00
James Turner
f5b352429c Bug 1176, crash loading malformed scenario.
http://code.google.com/p/flightgear-bugs/issues/detail?id=1176

Don't crash if a scenario specifies a missing or invalid flightplan
(check the flightplan is valid before setting it)
2013-10-01 19:57:07 +01:00
James Turner
cc37e31ac9 Move cache schema into its own file. 2013-09-30 21:55:43 +01:00
James Turner
ad4834c651 Splash-screen feedback on scenery download. 2013-09-30 16:36:13 +01:00
James Turner
cb087dc4de Tile-manager: kill off tile-refresh.
Now the manager waits on terrasync, we never need to do the 
'experimental' refresh feature, since we only load finished tiles.
2013-09-30 12:07:35 +01:00
James Turner
e03ebef99f Tile-Manager waits on TerraSync to load.
Using a new TerraSync API, make the tile manager wait on actively
syncing tiles before sending them to the SceneryPager. This resolves numerous
issues with missing tiles, including at startup.
2013-09-30 12:03:47 +01:00
James Turner
52e5a9abe8 Reduce amount of log output at level=debug. 2013-09-28 14:47:20 +01:00
James Turner
ff7c280d57 Fix portability issue with system sqlite 3.8 2013-09-28 14:34:01 +01:00
James Turner
97d89a0c47 Remove all references to libsvn from build. 2013-09-28 14:15:47 +01:00
James Turner
1a9e479e2a Terrasync tweaks.
- Enable the terrasync persistent cache
- Ensure terraysync scenery dirs exist before NavCache init, so the paths are stable
- Notify TerraSync on reposition, so we sync the full 3x3 set of tiles.
2013-09-28 14:07:45 +01:00
James Turner
dfa1353a8a Kill another BOM. 2013-09-27 18:06:18 +01:00
James Turner
c55849d644 Remove UTF-8 BOM.
Seems to be upsetting the compiler on Jenkins.
2013-09-27 17:08:36 +01:00
Clément de l'Hamaide
c022bb8d51 Move IAXClient library into 3rdparty directory
Remove ENABLE_IAX option
Add an improved FGCom standalone as part of FG in utils directory
2013-09-27 16:05:45 +02:00
Torsten Dreyer
8d415eafa3 make the metar command line tool case insensitive 2013-09-26 16:49:27 +02:00
James Turner
0206de2d2c Relocate Sqlite3 sources, upgrade to 3.8.0.2
Move sqlite source to a separate location, and build with
an intermediate library target. This permits us to set compile options
easier, including an important one, NDEBUG, which improves performance.

Sqlite 3.8.0.2 also includes an updated query planner which may improve
some queries, to be tested.
2013-09-26 09:52:41 +01:00
Anders Gidenstam
5a4b9c617c Restored JSBSim to a working state in FlightGear. 2013-09-23 22:33:23 +02:00
Anders Gidenstam
22d91528f8 Synchronized with JSBSim/CVS. 2013-09-23 22:30:44 +02:00
Clément de l'Hamaide
023c136d40 Fix spelling error by Markus Wanner 2013-09-23 01:02:10 +02:00
Clément de l'Hamaide
639c7b82ee remove unused #define 2013-09-22 17:42:24 +02:00
Clément de l'Hamaide
d948e34af8 Implement IAX callerID feature 2013-09-22 17:38:47 +02:00
James Turner
7454d4cc4d Tweak AI Traffic model loading.
Traffic with models in additional aircraft dirs or data dirs is
displayed correctly now.
2013-09-18 12:08:20 +01:00
James Turner
33425c671d Support for multiple data dirs. 2013-09-17 07:47:58 +01:00
James Turner
fda64d840e Use helper to validate printf formats.
Simgear contains a new helper to validate format
strings for potentially dangerous replacements, use
it to fix the issues raised by Debian bug trackers.
2013-09-15 19:17:54 +01:00
Christian Schmitt
9a7e32d4a9 fix uninitialized variable reported by valgrind 2013-09-15 15:09:43 +02:00
James Turner
9457ba024a Fix for #1117:
fix another issue similar to CVE-2012-2090
 In FGClouds::buildlayer(), prevent passing '%n' to snprintf().
From: Rebecca Palmer
2013-09-14 17:43:24 +01:00
James Turner
dab588c789 Fix for CVE-2012-2091:
add checks against buffer overruns
 CVE-2012-2091 mentions various buffer overruns in simgear and
 flightgear. This patch addresses this issue in Rotor::getValueforFGSet().
From: Tom Callaway
2013-09-14 17:39:49 +01:00
James Turner
38a373ba84 Display AI traffic route in map.
Add some helpers so MapWidget can show the
origin and destination of AIAircraft with a FlightPlan.
2013-09-14 12:17:33 +01:00
Thomas Geymayer
39c129cee6 Fix signed/unsigned missmatch. 2013-09-08 13:49:29 +02:00
Torsten Dreyer
7e117d2558 Fix #1186 moving average filter
fix incorrect behaviour of the moving average filter as reported
and patched by bmbroom.
2013-09-05 10:21:44 +02:00
James Turner
b24d8f2159 From Jano: fix HUD ladder aspect. 2013-09-05 08:29:20 +01:00
janodesbois
04764f8288 #901, yasim report the wrong sign in side-slip-deg and -rad. 2013-09-05 08:28:40 +01:00
James Turner
1862688d27 Pass terrasync dir through to osgDB options.
Half of fix for TerraSync Models not being found.
2013-08-29 22:12:34 +01:00
James Turner
0c8d84aad1 Fix crash on re-position with FGCom.
Don't assume valueChanged firing means the value has actually
changed; various operations (eg, copyProperties) can also 
cause the signals to fire.
2013-08-29 22:12:00 +01:00
Clément de l'Hamaide
0eef683af5 FGCom: implement a callback function and handle IAX text event 2013-08-28 18:09:22 +02:00
Clément de l'Hamaide
2bf62464cf FGCom: Add a different max range for ground and tower frequencies 2013-08-27 20:32:31 +02:00
James Turner
4052c45ea3 Fix Mac data dir finding.
Mostly affects release builds, ensure data dir located within
the bundle is found correctly.
2013-08-26 22:21:55 +01:00
Clément de l'Hamaide
467783bd45 Clean FGCom logging and fix IAX input level 2013-08-24 17:51:03 +02:00
Clément de l'Hamaide
a215bc0625 Fix segFault on reset by checking IAX has been initialized 2013-08-22 14:12:06 +02:00
Clément de l'Hamaide
0e5b794a4a FGCom: Should fix continous mic ON by checking state in main loop instead of listener 2013-08-21 20:24:07 +02:00
James Turner
206053722e Fix crash on exit when FGCom is not being used. 2013-08-19 18:21:51 +01:00
Clément de l'Hamaide
7827e28ff3 Fix range calculation for special frequencies
Range for special freq was computed with previous freq, now they are always in range
Use a global variable (_currentFreqKhz) in order to avoid a <static_cast> in main loop; now it's only on frequency change
Fix a .size() > 0 for !.empty()
2013-08-19 16:08:29 +02:00
Tom Paoletti
b27eb2571c Performance optimization: empty() instead of size()>0
empty() is guaranteed to be constant complexity for both vectors and lists, while size() has linear complexity for lists.
2013-08-19 09:02:15 +01:00
Tom Paoletti
1f88d1d11b Performance optimization: empty() instead of size()>0
empty() is guaranteed to be constant complexity for both vectors and lists, while size() has linear complexity for lists.
2013-08-19 09:02:06 +01:00
Tom Paoletti
81cd33e2fa Performance optimization: empty() instead of size()>0
empty() is guaranteed to be constant complexity for both vectors and lists, while size() has linear complexity for lists.
2013-08-19 09:01:59 +01:00
f-jjth
d03b44b662 FGCom integrated into FlightGear.
Disabled by default at build time.
2013-08-16 17:02:47 +01:00
James Turner
df4f574951 Fix horizon sunrise/sunset effect position.
Fix sun position in default renderer. (Committing fix
provided after discussion on IRC + forum, no bug ID)
2013-08-07 16:30:20 +01:00
James Turner
cff6b2034d Remove unnecessary includes/using
flight.hxx (FGInterface) was pulling in list, string and vector, and
'using' them, despite no actual need.
2013-07-29 22:59:45 +01:00
James Turner
77768e2698 Assume OSG version 3.0 as a minimum 2013-07-29 22:54:25 +01:00
James Turner
be44fa45eb Kill some defunct uses of side-slip property. 2013-07-29 22:15:23 +01:00
Thomas Geymayer
5b17a6c33f Canvas GUI: don't crash if enable decoration on window without content canvas 2013-07-27 22:16:00 +02:00
James Turner
0904017ec5 Couple more unused private vars killed off. 2013-07-27 14:49:27 +01:00
Thomas Geymayer
d2524d8fe6 Canvas window: separate handling of content-size and overall size. 2013-07-27 00:01:50 +02:00
Thomas Geymayer
e79e70062e Canvas window: increase drag accuracy. 2013-07-27 00:01:44 +02:00
Thomas Geymayer
02e66fd034 Canvas GUI: fix updating canvas on window with decoration. 2013-07-27 00:00:33 +02:00
Thomas Geymayer
c3a87f75cd Canvas GUI: check for window on handling mouse events. 2013-07-25 01:14:23 +02:00
Thomas Geymayer
a75b9e5de9 Expose canvas GUI "desktop" to Nasal.
- Restructure GUIMgr and move most parts to implementation class.
 - Expose new (simgear::canvas::Group based) DesktopGroup class
   to Nasal.
2013-07-25 00:59:59 +02:00
James Turner
ac8869cd62 Bug #1166, slow POI parsing.
Various tweaks and changes to make it easier to evaluate changes
to the rebuild code. No smoking gun found yet.
2013-07-24 08:53:55 +01:00
James Turner
6810809170 Bug #1166, tweaking POI.dat parsing.
(Doesn't fix the bug alas, but slightly cleaner)
2013-07-24 08:52:59 +01:00
James Turner
3e46c7998c Additional checks, for waypoint role setting.
Added these while investigating a defect, which unfortunately still
remains elusive. But the checks are wise anyway.
2013-07-24 08:51:35 +01:00
James Turner
a1451f592f Ignore SGGeod altitude when creating BasicWaypt.
This logic was only ever causing bad values, all callers which care
about an altitude restriction were setting one explicitly. Thanks to
Curt for spotting it.
2013-07-22 18:11:07 +01:00
James Turner
948aa70af7 Fix native protocol crashes.
As part of this, kill off the evil global FDM state, and avoid us
copying FGInterfaces (which is bad since it contains TiedProperties
and an FGGroundCache, neither of which are especially keen on being
copied). Will probably disable copy/assignment on TiedProperties in
a future commit.
2013-07-18 12:01:36 +01:00
Gijs de Rooy
78507bf22e Suggest NVIDIA Optimus to use the high-end GPU. 2013-07-18 08:51:43 +01:00
James Turner
74e60df295 Work-around for bug 1134, crash with flightplans.
When the active waypoint is deleted, and we can't offset the waypoint,
simply switch to the inactive waypoint. This is not ideal but avoids
the crash.
2013-07-17 20:26:48 +01:00
Thomas Geymayer
63f19db028 Expose String::ends_with to Nasal 2013-07-15 22:27:10 +02:00
Thomas Geymayer
ba088d9f1e Fix warnings identified by gcc. 2013-07-04 23:07:36 +02:00
James Turner
5d9faee463 More unused vars caught by Xcode. 2013-07-04 20:56:04 +01:00
James Turner
6acf1c12fc Fix unused private vars.
Xcode is warning about these, they're a mixture of
copy-pasted code, evolved use (e.g. using a property
node to store state), and so on.
2013-07-04 20:24:56 +01:00
Thomas Geymayer
eb53970768 FGSystemMgr: Do not quit on unknown system.
Showing a warning should be enough...
2013-07-04 14:32:56 +02:00
James Turner
b53b3be972 Remove a debug message. 2013-07-04 10:30:04 +01:00
James Turner
ebfe2ee6f5 Bug 1137, handle single-digit runways.
rwyprefs.xml sometimes specify runways without a leading '0', which
confuses the ident lookup. Print a message, and fix up such idents at
load time, so '8' -> '08', '3L' -> '03L' which matches our internal
scheme.
2013-07-04 10:30:04 +01:00
James Turner
a65f24c137 Bug 1153, guard against no current waypoint.
This is a work-around, probably indicates some glitch in the traffic
module flight-plans. Avoid a crash, also refine the exception logic
so individual AI objects can fail.
2013-07-04 10:30:04 +01:00
Thomas Geymayer
8ccc1c4d35 Canvas Event: expose currentTarget to Nasal. 2013-07-04 00:56:32 +02:00
James Turner
55d6d09524 Fix bug 864 - moving the 2D panel around.
Bounding box wasn't being dirtied when changing the transform,
breaking picking visitor for the panel. Add listeners to the relevant
props so we can tell OSG when the panel transform changes.
2013-07-03 08:57:48 +01:00
James Turner
05572cbb3e Speculative fix for bug 1149, AI traffic on helipads.
Avoid helipads when doing runway choice fallback.
http://code.google.com/p/flightgear-bugs/issues/detail?id=1149
2013-06-30 16:48:14 +01:00
James Turner
1924bdfd82 Bug 550 / 454 work (not yet fully fixed)
Adding a spherical projection mode which will work at the poles and
+180/-180 line correctly. Not yet enabled since it has other issues to
be addressed.
2013-06-30 16:41:05 +01:00
Thomas Geymayer
73456b05b4 Canvas GUI: send mouseleave after mouseup outside original window 2013-06-29 14:36:32 +02:00
James Turner
7de4cb5965 Kill off some unnecessary log messages. 2013-06-28 10:07:39 +01:00
James Turner
b1b6d2f6e2 Namespace fixes for std::string 2013-06-27 09:53:12 +01:00
James Turner
36896733d7 Kill off timestamp warning for the NavCache
This check is no longer needed, and causes console output when
using the joystick config editing GUI, which worries users.

http://code.google.com/p/flightgear-bugs/issues/detail?id=969
2013-06-25 21:53:26 +01:00
James Turner
e5bace53af Bug http://code.google.com/p/flightgear-bugs/issues/detail?id=1077
Fix rotation rate of UFO to compensate for large
dead-band value. (makes small rotational speeds
possible, yay). Patch by Jean Pellotier
2013-06-25 21:47:51 +01:00
James Turner
45ea8b5daa Bug 947, menu item state wrong after reset.
Mark the entire /sim/menubar tree as PRESERVED, so reset doesn't
mess up all the state.
2013-06-25 21:28:56 +01:00
Thomas Geymayer
07e9b48344 Preserve current view on reset/reinit/reposition 2013-06-22 17:07:11 +02:00
James Turner
b2d02c3970 Restrict sky-clouds group, avoids skydome picks. 2013-06-22 14:37:33 +01:00
James Turner
a94dce031c GUI picks only traverse nodes with PICK_BIT set.
(Which is all nodes except those which explicitly opt out,
such as lights, skydome, for the moment)
2013-06-22 14:36:11 +01:00
James Turner
312be5410a Object names for more scene-graph nodes. 2013-06-22 14:34:03 +01:00
Thomas Geymayer
0239e9c8c8 Fix cursor hide timeout if hovering on canvas windows 2013-06-21 22:00:09 +02:00
James Turner
2ec4b6ecc2 Fix warnings identified by updated XCode.
Mostly unused private vars, for various reasons.
2013-06-21 18:39:24 +01:00
Thomas Geymayer
9e2625d575 Canvas GUI: preserve window size on reinit 2013-06-21 17:42:16 +02:00
hooray
c61583de5d expose HLA/RTI availability to property tree - for use in about dialog 2013-06-21 12:14:40 +01:00
James Turner
081240c4da Issue #631, reset scenarios on sim-reset 2013-06-20 00:24:33 +01:00
James Turner
145148944f Kill off platformDesktopPath entirely 2013-06-20 00:20:12 +01:00
James Turner
b7bf3ee620 Simplify logic now SGPath::desktop works on Windows. 2013-06-20 00:03:36 +01:00
Thomas Geymayer
470a551176 Revert "Autopilot: Optionally write (internal) state to property tree"
This reverts commit 91ae41f9ef.

We do not need this as outputs already are written to the property
tree and most intermediate values can easily be calculated
manually.
2013-06-18 19:58:28 +02:00
Thomas Geymayer
91ae41f9ef Autopilot: Optionally write (internal) state to property tree
This can be useful eg. for plotting autopilot response
with the Canvas.
2013-06-17 23:21:36 +02:00
James Turner
5ac8bc01a1 Fix issues with explicit GPS instruments.
For 2.12, ensure all GPS instruments are backwards
compatible, however they were requested. Post release we can create a new instrument name with the compatibility code disabled.
2013-06-17 18:11:47 +01:00
James Turner
26a8ffb44e GPS: work around aircraft with missing power.
This restores compatibility with 2.10 and previous versions,
where even explicit (non default) GPS ignores power requirements.
2013-06-16 22:21:41 +01:00
James Turner
fb30e3609e Create FG_HOME if not found 2013-06-16 19:50:30 +01:00
Thomas Geymayer
4f129a283b Canvas GUI: refactor and simplify based on canvas::Group 2013-06-14 20:20:17 +02:00
James Turner
acddd0b0cf Fix JPEG-factory build 2013-06-12 22:12:31 +02:00
Anders Gidenstam
9c8d2e046d src/FDM/JSBSim/models/FGPropagate.{h,cpp}: Do not return reference to local. 2013-06-11 22:15:03 +02:00
Anders Gidenstam
f9689a561c Synchronized with JSBSim/CVS. 2013-06-11 22:14:51 +02:00
Thomas Geymayer
dfa583c014 Use SGPath helpers and unescape from simgear 2013-06-10 21:42:53 +02:00
James Turner
6d158e886c Abstraction for the user's desktop location. 2013-06-09 23:00:09 +01:00
James Turner
0d6cd11dd4 Work with revised NetChannel poll() API. 2013-06-09 22:57:45 +01:00
James Turner
931f4266fb TerraSync: fix dir creation.
Separate the default path logic, from the 'create if
not found' logic.
2013-06-09 22:57:45 +01:00
Thomas Geymayer
2dee846930 Base canvas::Window on simgear::canvas::Image 2013-06-08 11:33:53 +02:00
Thomas Geymayer
1c24acf41e canvas::Window: make shadow part of decoration canvas 2013-06-08 11:32:53 +02:00
Thomas Geymayer
326ee0c5cf Add window decoration support to Canvas GUI.
canvas::Window now optionally creates a second canvas for showing
window decoration. After setting its dimensions with the property
"decoration-border" a Nasal based window decorator should add the
required elements to the decoration canvas.

Using the properties "shadow-radius" and "shadow-inset" a drop
shadow can be added to the window.
2013-06-06 22:37:16 +02:00
Thomas Geymayer
53c3033135 Expose canvas::Window ghost to Nasal. 2013-06-03 23:46:34 +02:00
Thomas Geymayer
3d3475e965 Small cleanup. 2013-06-03 23:46:27 +02:00
James Turner
c242809a3c Fix for AIAircraft headings.
Nick Vatamaniuc: fix AI aircraft not updating waypoint headings when using custom flightplans.

(Commented out log-line following a non-parenthesised if() test causing problems)
2013-06-03 16:48:40 +01:00
James Turner
313b31ad9a Fix a couple of issues valgrind identified. 2013-06-02 19:59:18 +01:00
James Turner
def81b4de5 Restore GPS compatibility with 2.10
There's a sufficiently large installed base, that simply dropping this
API is not acceptable. A Nasal shim might be possible, but in the
interim, restore the C++ functionality.
2013-05-27 22:56:12 +01:00
James Turner
e2a05c64b5 Bug 1122, transponder ident.
Don't fall through to digit-decoding on ident button release.
2013-05-27 15:59:47 +01:00
James Turner
16d1c47664 Fix a FlightPlan lifetime issue.
Route-manager was explicitly deleting its FP, which was incorrect.
Switch to correct use of SGSharedPtr to refer to flight plans.

Thanks to Roland Haeder for catching this.
2013-05-26 22:11:25 +01:00
Thomas Geymayer
1ad9756a4b Fix jsbsim gear location in the property tree.
Need to convert from feet to inch.
2013-05-26 20:57:28 +02:00
Thomas Geymayer
bb7189eb18 Fix #1125. Correct overloads... 2013-05-20 18:37:23 +02:00
Thomas Geymayer
6a3354cb15 Do not crash if event has no graphics context assigned 2013-05-16 23:06:52 +02:00
Thomas Geymayer
351f1f4565 Canvas window: Update for SimGear MouseEvent changes. 2013-05-13 00:37:13 +02:00
James Turner
32834eb0b0 Make property-cycle usable with knobs/sliders.
Add optional non-wrapping mode, and respect the 'offset' argument 
which knobs and sliders set, to control direction of stepping.
2013-05-12 13:30:48 +01:00
James Turner
0422ea5672 Off-by-one spotted by Clement. 2013-05-12 11:36:33 +01:00
James Turner
915626afa7 Altimeter node tweaks.
Fix the default name based on whether a regular altimeter or
encoder was requested, and delay creating the node until bind(), ctor
is too early.
2013-05-11 18:35:54 +01:00
James Turner
06dd219a83 Transponder instrument replaces KT-70.
Generic transponder can emulate KT-70 props. These emulated props
will likely die in the future, based on feedback from aircraft devs.

See (upcoming) Wiki docs on the transponder for more info.
2013-05-11 16:15:36 +01:00
f-jjth
977cfb77b5 Improve transponder instrumentation: new version 2013-05-10 19:04:53 +01:00
Thomas Geymayer
64ab1e96ee Forward simulation time to osgViewer. 2013-05-10 01:13:59 +02:00
Thomas Geymayer
d9881aecf8 Allow Canvas placed on 3D objects receiving mouse events.
- Add option 'capture-events' to canvas aircraft and scenery
   placements to allow events being forwarded to the respective
   canvas.
 - Clean up and restructure parts of the mouse event/picking
   handling to support forwarding events to canvasses.
2013-05-09 21:38:40 +02:00
Hyde Yamakawa
98bfbb9560 Fix of Issue#1084. Input for this calculation should be actual GS deviation angle. Should not be scaled value. 2013-05-08 22:09:26 +01:00
Thomas Geymayer
952a61424a Allow Canvas to also read images with absolute paths (if allowed by IOrules) 2013-04-29 22:17:09 +02:00
Thomas Geymayer
222f2f71ef Startup check if IOrules/fgValidatePath are working properly 2013-04-29 22:16:51 +02:00
Thomas Geymayer
220f359d34 Fix crashing without support for GLSL/OpenGL 2.0 2013-04-24 00:19:37 +02:00
Thomas Geymayer
5146868bfb Extend Nasal property methods to support relative paths.
All methods exposed to the Nasal props module now accept an
optional first parameter refering to another node by a relative
path.

(Thanks to Philosopher for the initial patch)
2013-04-14 11:19:03 +02:00
James Turner
e89df85817 GPSs uses FlightPlans directly. 2013-04-09 10:20:02 +01:00
James Turner
a0cf59d8af Disable POI data on Windows for the moment.
Avoid horrible startup times for Windows users. It would be good
if someone with a Windows box, debug environment and some time could
investigate further.
2013-04-06 17:40:28 +01:00
James Turner
85bfd27af2 Non-sticky scenarios, simpler UX for everyone.
If you want a scenario in a particular session of the sim, ask for
it on the command line / config files, or enable in the GUI.

Note if you had previously 'sticky' scenarios in your autosave.xml, you
will still get them until you clean your autosave, or disable them in
the GUI.
2013-04-05 17:20:22 +01:00
James Turner
295ae6a650 Tweaks for run-time scenario toggling. 2013-04-02 18:00:31 +01:00
Thomas Geymayer
8f1df6c358 Helpers to clone SGModelData
This is needed for latest SimGear to fix scene model
unload not being called
2013-04-01 13:40:51 +02:00
Christian Schmitt
7795fa6ffa mk-viii: tweak some values (according to spec), improve bias calculation.
Should now give less unjustified "too low - terrain" messages.
2013-03-29 20:39:00 +01:00
James Turner
6bd8bbc25e Limit hover-picks to once per frame.
Hopefully fixes the observed issues on Linux when spamming
mouse-moves over a large pickable, but only testing will say for sure.
2013-03-28 17:52:08 +00:00
James Turner
4d144dfbf2 Allow scenarios to have load/unload scripts.
This makes it possible for the balloons scenario (for example) to
work correctly with dynamic loading and unloading.
2013-03-28 16:50:55 +00:00
James Turner
a7e4f2a971 std:: namespace fixes, AIBase cleanup.
Make data members in AIBase protected, and move FGAIModelData to be
a private helper in the .cxx file.
2013-03-28 16:49:52 +00:00
James Turner
c2546a431d Make units of a function explicit. 2013-03-27 23:31:22 +00:00
James Turner
1a4993f08b Minor cleanup of cloud commands. 2013-03-27 22:48:47 +00:00
James Turner
67f2147f3d Improved locale detection on Mac.
Respect the user's language selection in the system settings, and try those languages in turn. If a language is explicitly specified, try that first regardless.
2013-03-27 22:48:47 +00:00
Christian Schmitt
db5a39e305 Issue 1090: Adapt the mk-viii instrument code to the new internal runway scheme.
Clean up some unneeded functions as well and make use of standard simgear functions where possible.
This whole thing could need a rewrite...
2013-03-27 22:26:46 +01:00
Thomas Geymayer
913727239d Expose pose of scenery models to Nasal load/unload scripts.
This allows Nasal code attached to scenery models access their
world position and orientation by calling _model.getPose().

Also ensure models are attached to the scenegraph before Nasal
load scripts are called. This ensures that the world position
and orientation are available upon executing the load script.
2013-03-23 12:54:45 +01:00
Thomas Geymayer
eba03b5e46 Allow placing canvas on scenery objects. 2013-03-21 01:16:47 +01:00
James Turner
6f80df0b8d NasalTimerObject tweaks. 2013-03-20 18:10:27 +00:00
Thomas Geymayer
60bec150aa Reduce severity of warning for missing gui/dialogs directory 2013-03-20 18:02:11 +01:00
James Turner
9575783491 NasalPositioned-cppbind additions.
Expose searching by name, filtering by any type, and sorting by range.
2013-03-19 18:14:56 +00:00
Thomas Geymayer
1e4ba18284 Update/simplify property interpolation to latest SimGear changes 2013-03-17 23:49:15 +01:00
James Turner
eb53f3c919 Fix missing include for Linux. 2013-03-17 14:07:07 +00:00
James Turner
015732db33 Fix un-inited vars found by valgrind.
All benign, but good to get fixed.
2013-03-17 13:22:30 +00:00
James Turner
c6221b2c84 Fix max-metar-age, bug #1076.
Will merge to 2.10 branch once verified.
2013-03-17 13:14:08 +00:00
James Turner
96a40fe70c Commands to control scenarios / AI-objects.
New commands allow runtime scenario loading and unloading, and AI object creation and removal at runtime.
2013-03-16 16:53:12 +00:00
James Turner
4a84ea0bc4 AIManager scenario tweaking. 2013-03-16 16:53:12 +00:00
James Turner
d70e26d87b Don't duplicate userpos in in AIObjects. 2013-03-16 16:53:12 +00:00
Thomas Geymayer
4b21dc51ee Replace SGInterpolator with new advanced interpolation system.
Allow for advanced animations using easing functions and adapters
for interpolating specific property types (eg. CSS colors).
Old behavior should not have changed.
2013-03-16 16:45:03 +01:00
Eric van den Berg
2a2beec658 improved mechanical VSI model, it now lags and displays wrong at
altitude
2013-03-16 13:35:34 +00:00
James Turner
c487188bfc Show a message when pausing the sim. 2013-03-16 12:44:43 +00:00
James Turner
ab939ff772 A real Timer object in Nasal.
A persistent timer object which can be stopped, started and restarted. Gosh. Has both singleShot and repeating modes.
2013-03-16 12:44:27 +00:00
James Turner
0f26267647 Reduce a message severity. 2013-03-16 12:43:25 +00:00
Christian Schmitt
f11201d3d9 MapWidget: make partially use of the new colocated DME information.
Until a better way to draw proper symbols is implemented, this has to do.
2013-03-15 14:07:32 +01:00
Christian Schmitt
08bae40991 Parse nav.dat DMEs and assign them to appropriate navaid, if applicable.
We can now detect whether a DME is colocated at a VOR/ILS/VORTAC/TACAN/NDB
2013-03-15 14:07:31 +01:00
Anders Gidenstam
46eadabf3a Added support for tracking mouse movements with shift and control+shift pressed. 2013-03-13 21:20:17 +01:00
Thomas Geymayer
0bc5a813a8 Revert "Ensure immediate canvas update inside GUI windows."
This reverts commit 07f01bd734.

We don't need this anymore as there is now a proper fix
in SimGear.
2013-03-11 21:24:40 +01:00
James Turner
4786923838 Tweak hover logic.
Fixes tooltips vanishing on mouse-move.
2013-03-11 17:13:03 +00:00
Thomas Geymayer
07f01bd734 Ensure immediate canvas update inside GUI windows.
Ensure canvas displayed inside GUI windows are updated in the same
frame as the according window is made visible. This prevents
showing previous contents for the first frame.
2013-03-10 20:43:14 +01:00
James Turner
0718e2b0f7 Candidate fix for bug 1055. Needs validation however! 2013-03-10 15:14:13 +00:00
James Turner
67a0acb64a Live cursor updating during pick-drags.
This gives nice cursors when hovering and dragging slider and knob-animations, and the cursor is set correctly on mouse-up after the drag too. Makes directional knobs/sliders much easier to understand.
2013-03-10 12:06:20 +00:00
James Turner
ead479532b New cursor shapes.
Unfortunately OSG lacks the 'closed hand' (aka 'grab') cursor, really time to get platform cursor working reliably.
2013-03-10 12:05:14 +00:00
James Turner
0971ed1f2c Make tooltips independent of cursor auto-hide. 2013-03-10 10:17:27 +00:00
Christian Schmitt
461d89cb22 Fix some uninitialized variables (found by valgrind) 2013-03-10 01:24:57 +01:00
James Turner
b5a6812c95 Clean up mouse-input property handling.
Use a listener to avoid reading state each event/update. Support setting some values on the SGKnobAnimation configure global behaviour.
2013-03-08 16:34:21 +00:00
James Turner
b29470c129 Disable native cursor on Windows for now.
There's an unfortunate interaction with osgViewer on Windows that needs to be resolved, before the can switched on.
2013-03-07 19:33:46 +00:00
James Turner
30fcfd219e Pass key-mod state into pick-callbacks.
Allow pick-callbacks to get the current mod-state at all times. (Required for matching SG change)
2013-03-07 18:41:38 +00:00
Thomas Geymayer
3047c316dc Clean up/simplify NasalPositioned_cppbind
Ensure all FGPositioned related functions return SGSharedPtr
instead of raw pointers to allow automatic conversion to
nasal ghosts without custom helper functions.
2013-03-06 23:21:49 +01:00
James Turner
23a1d4338d Windows cursor implementation.
This does not (yet) support custom cursor images, but can be easily
extended to do so.
2013-03-06 18:22:37 +00:00
James Turner
7cad407843 Core data class for PolyLine handling.
This is all unused yet, but defines the simple model for polyLines.
2013-03-06 17:22:34 +00:00
James Turner
12bcea2861 Make Ctrl+axis bindings explicit (and work).
Thanks to Clement/F-JJTH for the fix.
2013-03-06 14:24:29 +00:00
Thomas Geymayer
8d56b4664a Port more airport/navaid methods to cppbind 2013-03-06 01:04:52 +01:00
Thomas Geymayer
1c905e5881 Typos, license headers... 2013-03-06 01:04:52 +01:00
James Turner
034140914c Windows cursor handling stubs. 2013-03-05 20:59:05 +00:00
James Turner
8dc936b44b Forgot GPL license on new files. 2013-03-05 20:53:43 +00:00
Christian Schmitt
658bda6e40 MapWidget: Show counties and towns as well, depending on the zoom.
Some colors added.
2013-03-05 18:26:01 +01:00
Thomas Geymayer
c7e846bd2a Parse geod/position and use it with new airportinfo. 2013-03-05 17:31:26 +01:00
James Turner
d5c382a780 Fix updating of mouse position props.
Some cockpits rely on mouse position props being updated even when using a dragged pick-callback. Thanks to Clement for noticing. Re-structured so however we process the mouse (PUI, pick-callback, normal motion), we always update the props.
2013-03-05 14:31:58 +00:00
James Turner
4c32b832ec Stray debug message, remove. 2013-03-05 14:29:14 +00:00
James Turner
fce2a53fc7 Fix crash starting at heliport.
Don't assume FGAirports have runways, they might only have helipads.
2013-03-05 13:19:10 +00:00
James Turner
50c70035b3 More explicit check for cursor feedback. 2013-03-05 08:40:17 +00:00
James Turner
f2c267f5d7 MouseInput changes to support hover.
This adds the framework for platform cursor implementations; Windows and X11 to be done.
It also extend the mouse-input code to generate hover events suitable for driving tooltips.

Note there should be no visible functionality change from this commit, since everything
is inactive until fgdata changes are made.
2013-03-04 23:35:30 +00:00
Thomas Geymayer
22a1c9b2af Finish porting airportinfo to cppbind 2013-03-04 23:14:26 +01:00
Thomas Geymayer
3579a4404a Report std::exception in main loop 2013-03-04 23:13:36 +01:00
Thomas Geymayer
4b573ebd13 Start porting NasalPositioned to cppbind.
For now it is available in the positioned Nasal
module. FGAirport is fully ported, but especially
procedures/navaids and free functions are still
missing.
2013-03-04 19:24:47 +01:00
Thomas Geymayer
45e3b7e2d1 Clean up/prepare for porting NasalPositioned to cppbind 2013-03-04 16:31:37 +01:00
Christian Schmitt
6bf47cd248 MapWidget: make use of the new POI system and display cities on the map.
This is meant as a preview.
2013-03-04 00:27:12 +01:00
Thomas Geymayer
664cb474e1 NasalCanvas: clean up 2013-03-03 20:57:08 +01:00