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