1
0
Fork 0
Commit graph

8486 commits

Author SHA1 Message Date
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
Thomas Geymayer
0587db3b1e Update for nasal::Ghost changes 2013-03-03 19:30:16 +01:00
Christian Schmitt
7236541833 Add points of interest (POI) database to FGPositioned. Useful for maps and GPS instruments.
Can display country, city, towns and villages names worldwide.
2013-03-03 14:47:12 +01:00
James Turner
68c71d5787 Positioned/Cache tweaks to support PoIs.
In preparation for adding POI data, extend the FGPositioned type enum, and the cache code to handle arbitrary POI types. (Adding more in the future is straightforward now)

Also support removing user waypoints, which was requested by the Garmin G196 developers.
2013-03-02 13:44:20 +00:00
Christian Schmitt
ee1c8a8d66 Expose more runway methods to Nasal 2013-03-01 12:53:25 +01:00
Christian Schmitt
4f4f099ad5 Fix missing includes 2013-02-28 20:16:26 +01:00
James Turner
88a4435cef Remove isReciprocal from FGRunway.
This was a bogus concept, either runways have a reciprocal or not (if singled-ended), really this was simply exposing an artefact of the apt.dat encoding. Change to an API which gives what is actually wanted - the ability to extract an airport's runways without any reciprocals included.
2013-02-28 18:21:29 +00:00
Christian Schmitt
715c48e2d7 Convert runway parser and all internals to metric units and 2 runway ends.
This eliminates many conversations between ft and m and gives us runway start/end
points that are needed for many calculations. Also, this prepares the internals for
the upcoming apt.dat 850+ format that uses the metric system as well as start/end points.
2013-02-28 13:38:04 +01:00
Christian Schmitt
d9026d776c update gitignore 2013-02-28 13:37:49 +01:00
Thomas Geymayer
1b49f5cc78 Canvas Window: use new CanvasImage method to handle events 2013-02-28 01:15:59 +01:00
Christian Schmitt
8588eb2e4b Expose heliports to Nasal for future use in maps 2013-02-26 18:20:10 +01:00
Thomas Geymayer
3ea69785d9 CanvasWidget: automatically set auto-viewport.
If no viewport dimensions are given the viewport
will now automatically resize, otherwise it stays
unchanged.
2013-02-25 15:39:30 +01:00
Thomas Geymayer
045fc5b4ae CanvasWidget: add auto-viewport property.
The auto-viewport property allows to disable automatic
update of the canvas viewport update upon resizing
the PUI canvas widget.
2013-02-25 15:32:07 +01:00
Christian Schmitt
3a1709b31a apt_loader.cxx: 810 helipads are now treated as such internally 2013-02-24 22:18:49 +01:00
Christian Schmitt
6ffdb1bc54 apt_loader.cxx: update version parsing to 4-digit versions,
some tweaks according to the spec.
2013-02-24 22:03:29 +01:00
James Turner
b71e703d75 Fix for bug, ILS not visible in map on first run.
When calling setILS, in-memory runways did not get updated. This showed up in the map, but also affecting a few other places. Will port this to 2.10.1 when that process starts.
2013-02-23 14:51:00 +00:00
James Turner
e6297959d9 Version the navache filename.
Be friendly to people switching between 2.10 and dev (2.11), don't force a rebuild each time.
2013-02-21 17:42:06 +00:00
James Turner
1eb8ae1fbf Give the FGAirport class a sane filename.
simple.[cxx|hxx] -> airport.[cxx|hxx]
2013-02-21 11:32:02 +00:00
Christian Schmitt
11c00afaec Add support for helipads from apt.dat 850+ 2013-02-21 00:01:36 +01:00
Christian Schmitt
2319948b95 airport traffic routes from apt.dat 1000 are unknown to FG, so ignore them for now 2013-02-20 23:49:48 +01:00
Yves Sablonier
9ac1e82c82 Adding directive for osx sdk 10.5 in ClipBoardCocoa.mm 2013-02-18 09:18:48 +00:00
hooray
7fa1b9062e fg mingw fixes part #1
Conflicts:
	src/Main/bootstrap.cxx
2013-02-18 09:18:23 +00:00
Thomas Geymayer
38ca30cbd5 Ignore events if canvas::Window is not visible 2013-02-13 12:10:25 +01:00
Thomas Geymayer
6c10f99573 Make compiling of all utils/tools optional 2013-02-12 17:38:46 +01:00
James Turner
b0a879a5b1 Fix ADA compilation.
Patch by Roland Haeder
2013-02-11 22:16:02 +00:00
James Turner
37f783e92d File mode fixes.
Contributed by Roland Haeder
2013-02-11 22:15:23 +00:00
James Turner
cedc3bb5c3 Typo fix, pointed out by Emillian. 2013-02-11 12:51:54 +00:00
James Turner
fdae459948 Allow HOME to be undefined, as on Windows. 2013-02-10 13:35:58 +00:00
James Turner
67ca0689c9 Work-around a clang glitch with 10.6 2013-02-10 11:53:42 +00:00
James Turner
d9159e719d FlightRecorder: smarter log warning.
When using the default (generic) config, which references many props which may not exist in a particular aircraft, suppress the 'recording non-existent' property warning.
2013-02-10 11:47:16 +00:00
James Turner
808f42e86a Linux fix.
One day I'm going to figure out why I get all the standard-library includes automatically on Mac, but not on Linux. Today is not that day.
2013-02-09 17:11:55 +00:00
Frederic Bouvier
aa19b2a77e Include file only needed by MSVC 2013-02-09 17:40:37 +01:00
James Turner
8551b010e9 Fix another compile fail.
No idea why I don't need this on Mac, hmm.
2013-02-09 16:38:34 +00:00
Frederic Bouvier
87b43057e1 Fix windows build 2013-02-09 17:24:44 +01:00
James Turner
8ca7632845 Fix a GCC warning. 2013-02-09 15:33:13 +00:00