James Turner [Sun, 10 Feb 2013 11:47:16 +0000 (11:47 +0000)]
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.
James Turner [Fri, 8 Feb 2013 19:39:41 +0000 (19:39 +0000)]
Support a log-list widget in PUI.
Add a puaListBox which can show the contents of a log-buffer. Currently only two buffer sources are supported more to follow (and the dialog XML updates).
Thomas Geymayer [Thu, 7 Feb 2013 22:08:36 +0000 (23:08 +0100)]
Improve mouse event capturing with Canvas windows.
- Don't capture mouse events if mouse mode has
pass-through disabled. This behaviour is
consistent with the PUI dialogs and allows
changing moving view and controls while above
any GUI dialog.
- Add option to canvas windows to ignore all
events and let them pass through
("capture-events").
James Turner [Sun, 3 Feb 2013 22:24:40 +0000 (22:24 +0000)]
Change the way the nav-cache is rebuilt.
Instead of deleting all table contents, actually remove the entire file on disk and re-create. This is fractionally more work, but removes any possibility of stale indices or missing deletes causing clutter after rebuilds. My suspicion is, this is cause the erratic performance some people have seen with the airports search dialog, so will back-port to 2.10.
James Turner [Thu, 31 Jan 2013 18:42:34 +0000 (18:42 +0000)]
Fix numeric keypad support on Mac.
Comments in the code imply osgViewer always sends 'num-lock'-off codes, but that is not the observed behaviour with Cocoa. So adding mappings for the num-locked codes on Mac, which is what people actually want at the moment.
James Turner [Mon, 28 Jan 2013 23:35:44 +0000 (23:35 +0000)]
Bug #385 - enable the Ati viewport hack on next.
Enabling this hack by default, to assess the impact for everyone. Should fix the issue for Ati Catalyst 11.5 users, and hopefully no impact for everyone else. All feedback appreciated. Set /sim/ati-viewport-hack to false if you think this option might be causing issues for you (and then tell James, ASAP)
calculate /systems/pitot/total-pressure on the bases of /velocities/mach
added measured-total-pressure property to account for a normal
shockwave in front of pitot tube at supersonic speeds. momentarily not
used
small unit conversion correction of inHg to hPa in altimeter
Base airspeed calculations on impact pressure in instrumentation
/airspeed_indicator
James Turner [Sun, 6 Jan 2013 20:34:34 +0000 (20:34 +0000)]
NavCache: fix an issue reloading ground-nets.
AndersG noticed an issue when a ground-net file is edited. The DROP commands prior to the reload were wrong, fixed now to delete all ground-net entries before the file is read.
James Turner [Tue, 1 Jan 2013 13:49:12 +0000 (13:49 +0000)]
Tweak normalisation of route-path segments.
KATL -> KLAX looks correct now. Great-circles that span the 180-meridian are still rendered wrong, but that's a map projection issues, which I will fix in the next few days.
James Turner [Mon, 31 Dec 2012 17:39:52 +0000 (17:39 +0000)]
Flightplan delegate hook for clearing the FP.
This allows delegates to take action when the flightlan is cleared, and especially, for the default delegate in the route-manager to deactivate itself, and hence the GPS LEG mode - which fixes bug 940 I hope.
James Turner [Mon, 31 Dec 2012 17:21:05 +0000 (17:21 +0000)]
Fix route-path display of long legs.
When leg spans more than a threshold (currently 0.5 degrees) of longitude, interpolate the actual path flown by the GPS/RM, which is a true great-circle. Previous we rendered a Rhumb line which does not agree at all. (Especially noticeable in the MapWidget and NavDisplay code, both of which use RoutePath to tesselate the route before rendering)
James Turner [Sun, 30 Dec 2012 17:01:48 +0000 (17:01 +0000)]
NavDisplay: time-bound the spatial query.
At large search ranges (320 or 640NM range on the 777), the search time can blow up, especially if distant airports are being loaded. Add a time-bounded spatial query, and use it, so performance stays tolerable.
James Turner [Sun, 30 Dec 2012 16:12:11 +0000 (16:12 +0000)]
Fix auto-routing by airways.
When the from and to points are not on the enroute structure, check the initial and final legs for large turns (more than 90-degrees) from the overall route course. If found, kill the leg, to generate more natural route and avoid very sharp turns in the terminal area.
James Turner [Sun, 30 Dec 2012 15:37:25 +0000 (15:37 +0000)]
Nicer default SID and approach procedures.
Note these are still generic and do NOT take local terrain into account. Don't come crying to me if you fly into nearby terrain because you weren't using a real procedure!
James Turner [Sat, 29 Dec 2012 13:45:27 +0000 (13:45 +0000)]
Bug 974, GPS exceptions at end-of-route.
One of the two route termination conditions was improperly handled, leading to bad leg/wpt indices and exceptions from the GPS code. Detect passing the final waypoint in a more robust way now.
Also fix the GPS code to avoid turn computation on the final leg.
James Turner [Sat, 29 Dec 2012 12:16:51 +0000 (12:16 +0000)]
Bug #923 : repeatable flag set on input reload.
Clean-up how axes and button bindings are destroyed are re-built on reinit of the FGJoystickInput subsystem, so we get new, cleanly initialised items each time.
James Turner [Mon, 24 Dec 2012 17:42:23 +0000 (17:42 +0000)]
Make PLAN mode in Boeing NDs possible.
Allow the location of the ND centre to be set from properties instead of always using the acct position.
(I thought I'd supported this option long ago, evidently not)
James Turner [Sun, 23 Dec 2012 23:32:53 +0000 (23:32 +0000)]
Revised cache transaction handling.
Use a RAII object to manage cache transactions, and reset queries immediately after they are done, to avoid auto-commit transactions lasting long periods of time. Re-write the commit and step logic to handle SQLITE_BUSY, with progressively increasing waits when there is DB contention (multiple processes accessing the DB).
James Turner [Tue, 18 Dec 2012 10:23:44 +0000 (10:23 +0000)]
Support partial all-within-range spatial queries.
As an opt-in API, allow clients to request partial results, with a time-bounded cutoff. Use this to keep the MapWidget responsive even when many airports are being added to the cache (e.g., zooming out or panning rapidly when zoomed out)
James Turner [Sat, 15 Dec 2012 15:25:45 +0000 (15:25 +0000)]
Restructure positional finalisation for sim-reset.
Make position finalisation happen in the same phase as scenery load, i.e as a task during the main loop, instead of during the init loop. This is compatible with the existing reset logic. Unfortunately more work is needed; the environment code doesn't update the local station quickly enough on reset. (Fixing that is next!)
Thomas Geymayer [Thu, 13 Dec 2012 12:52:53 +0000 (13:52 +0100)]
Allow Canvas Windows to be resized by dragging
- Setting 'resize' property to true on canvas::Window shows
resize icons and exposes requested size to the property
tree. This can be used eg. from Nasal to actually resize
the window and/or show a preview of the resized window
while resizing.
- Event handling now ignores events which have already
been handled. Before eg. clicking inside a window
also caused picking to be performed inside the
scene which is for sure not the expected behaviour.
- Also forwards scroll wheel events from canvas::Window.