1
0
Fork 0
Commit graph

8848 commits

Author SHA1 Message Date
Thomas Geymayer
c5c0a7dcf3 AIShip: remove duplicate property tie. 2014-07-12 11:54:47 +02:00
Thomas Geymayer
0f14a2d73b subsystemFactor: name fixing (use same as in fg_init.cxx) and cleanup. 2014-07-12 01:17:35 +02:00
Thomas Geymayer
a52c0882a1 Fix subsystemFactory name fdm -> flight (Thanks to Hooray). 2014-07-11 19:25:26 +02:00
Thomas Geymayer
486ef5b06c pkg: retrieve existing install (or register callback). 2014-06-30 18:15:31 +02:00
James Turner
3f433e2c35 Fix polar rendering of map. (Bug #55)
Use an azimuth-equidistant projection, which handles high latitudes and
polar regions correctly. Written by Gijs de Rooy.
2014-06-29 21:45:18 +01:00
Thomas Geymayer
a94ad46dc0 Nasal: expose missing Canvas::setLayout 2014-06-26 18:26:43 +02:00
Thomas Geymayer
a66e30aa04 Nasal: Limit SGPath::create_dir access rights to 0755 2014-06-26 16:03:10 +02:00
Thomas Geymayer
c65b2eb6b0 Draw Canvas GUI on top of PUI (to conform with event order). 2014-06-24 11:57:33 +02:00
Thomas Geymayer
694df4b337 Fix compiler warning (naRuntimeError does not return...) 2014-06-23 00:42:17 +02:00
Thomas Geymayer
1b55ab5f40 Nasal: expose SGCondition using nasal::Ghost and improved error checking. 2014-06-22 15:37:48 +02:00
Thomas Geymayer
f7f7be77e5 Remove unused value, formatting. 2014-06-22 15:36:25 +02:00
Thomas Geymayer
821af95e0d Keep (PUI) menubar visibility on gui-redraw. (Fix #1251)
For aircraft using fgcommand("gui-redraw"), which is for example
also used by gui.menuBind, the menubar was always hidden and
not shown again.
2014-06-21 14:51:34 +02:00
Thomas Geymayer
1d5f229653 Nasal: set CustomEvent::bubbles. 2014-06-21 00:24:57 +02:00
Gijs de Rooy
8c99d5d9d6 Remove unused --control option 2014-06-19 14:28:14 +02:00
Thomas Geymayer
f4b7ae5da3 Nasal: md5 is now in simgear. 2014-06-18 15:59:41 +02:00
Thomas Geymayer
cfbf9e7e4e Nasal: expose md5 function. 2014-06-17 22:33:53 +02:00
Thomas Geymayer
da2bb6353e Nasal: expose canvas::Text::maxWidth. 2014-06-17 17:02:10 +02:00
Thomas Geymayer
c13612b1fa GUIMgr: prevent double init/shutdown 2014-06-16 23:47:05 +02:00
James Turner
7e8d713b28 Pkg: initial support for Variants
- aircraft init code can deal with a variant ID
- Nasal API can return a hash with variant IDs and names
2014-06-15 20:10:24 +02:00
Thomas Geymayer
26a4948642 NasalSys: process nasal::Ghost deletion queue. 2014-06-15 16:36:35 +02:00
Thomas Geymayer
33d23026c4 pkg: allow 'installed' as filter criterion. 2014-06-15 16:36:02 +02:00
Thomas Geymayer
52a4ded502 Nasal: expose canvas::Layout::clear() 2014-06-14 13:22:22 +02:00
bcoconni
d830430e61 Kévin Seroux: C++11 fixes for MSVC++ 2014-06-14 00:29:39 +02:00
Thomas Geymayer
4409c8cca6 Expose parse_markdown to Nasal. 2014-06-13 19:16:26 +02:00
Thomas Geymayer
e1eb9e4418 Enable package system API 2014-06-13 16:08:26 +02:00
Thomas Geymayer
b53b1a3a25 Nasal: expose canvas height-for-width layouting methods. 2014-06-13 00:09:33 +02:00
James Turner
8f754a1673 Type-correct decoding of JSON to props. 2014-06-12 19:58:13 +01:00
James Turner
d1a477324e Websocket get/set props and exec commands. 2014-06-12 17:57:25 +01:00
James Turner
ee627b8652 Expose package file size to Nasal. 2014-06-12 17:51:19 +01:00
Thomas Geymayer
9604142d09 Fix crash (use iterator of same container for loop) 2014-06-12 16:38:21 +02:00
James Turner
63427fc589 Pkg: Fix loading of non-installed aircraft.
Fallback to the normal code path when a packaged aircraft is
found, but not installed.
2014-06-12 13:06:01 +01:00
James Turner
7a5b729052 Pkg: nicer Nasal syntax for tags in queries. 2014-06-12 08:17:05 +01:00
James Turner
32f57d0dc1 Aircraft switching command and formal support.
- /sim/aircraft can be set to package ID, including qualified
package ID. If not matching package is found, falls back to
traditional search of fg-aircraft for -set.xml files
2014-06-12 08:17:05 +01:00
Thomas Geymayer
0fb94ba596 Nasal: expose canvas::Layout item remove and get methods. 2014-06-12 00:44:26 +02:00
Thomas Geymayer
53c0454931 Package: warn for unknown filter term and use Hash::iterator. 2014-06-11 18:19:13 +02:00
Thomas Geymayer
0e286717a6 pkg: Expose install callbacks to Nasal. 2014-06-10 23:53:57 +02:00
James Turner
afa45240b0 Packages: search from Nasal
- also allow direct uninstallation.
2014-06-10 22:12:27 +01:00
Thomas Geymayer
c0eda4a47c Nasal: expose more methods to Nasal. 2014-06-10 18:44:38 +02:00
Thomas Geymayer
9c0b5a5c54 Nasal: Expose BoxLayout methods for spacer and stretch. 2014-06-08 23:34:37 +02:00
Thomas Geymayer
371b71dd6c Nasal: expose vbox layout and allow setting item stretch. 2014-06-04 17:50:52 +02:00
Thomas Geymayer
1af3ad2525 Nasal: extend pkg API. 2014-06-04 17:50:25 +02:00
Thomas Geymayer
75f5eba002 Update includes (required by simgear changes) 2014-06-04 02:58:14 +02:00
Thomas Geymayer
3c0b7f88b8 Updates for simgear nasal::Ghost changes. 2014-06-03 19:00:25 +02:00
Thomas Geymayer
06a9958689 Canvas: expose more methods to Nasal 2014-06-01 12:15:02 +02:00
James Turner
d1fd5756f6 Initial package-system integration.
- disabled by default
- incomplete, adding so Thomas can see the API
2014-05-31 18:04:56 +01:00
Thomas Geymayer
3b4bb10e4f Canvas: expose layouting to Nasal. 2014-05-31 02:43:03 +02:00
Thomas Geymayer
7c31654b3a Canvas: store data inside canvas and elements.
- jQuery/HTML5 like .data() method on Canvas and Elements to store
   custom data in the property tree.
 - CustomEvent takes additional parameter hash with 'detail' data
   stored in event.
2014-05-29 16:47:32 +02:00
James Turner
fea8e96fe9 Fix for airport search on some platforms.
Ensure the std::string passed to sqlite lives for the duration
of the query.
2014-05-29 09:42:21 +01:00
James Turner
fd248e9391 Respect tile expiry time when cache is disabled.
Tiles added via the visible mechanism always have an
expiry time of 0.0, so this only affects tiles added by elevation queries, from the AI or FDM.
2014-05-24 14:23:59 +01:00
Torsten Dreyer
2e76a2c72a Update of the httpd implementation
- Add a screenshot uri handler
- Enable persistent http connections
- Simple CORS implementatation for the
  JSON property uri handler

many changes for the httpd
2014-05-22 10:28:54 +02:00
Torsten Dreyer
a5c39e3009 Final log-class cleanup (httpd comes in another commit)
yes, I will use grep next time :-/
2014-05-20 23:12:34 +02:00
Torsten Dreyer
c187dab625 More log class fixes 2014-05-20 23:06:02 +02:00
Torsten Dreyer
29990c40bf No JSBSim debug msg without having SG_FLIGHT class 2014-05-20 22:58:38 +02:00
Torsten Dreyer
3e47fc0c11 set corret logging class for A/P messages 2014-05-20 22:36:43 +02:00
Thomas Geymayer
5b74a72506 Canvas: support for custom events and event dispatching. 2014-05-19 00:28:40 +02:00
Thomas Geymayer
b3946f08f9 NasalCanvas: Update for simgear changes. 2014-05-18 20:21:56 +02:00
Thomas Geymayer
741c3c892c NasalPositioned: Update for nasal::Ghost changes in SimGear 2014-05-18 17:48:46 +02:00
bcoconni
105cba0bda JSBSim sync 2014-05-18 13:39:31 +02:00
James Turner
431a3eaa1b Tune osgDB::MaxPagedLODs parameter 2014-05-17 09:05:34 +01:00
James Turner
f19da413bb Initial mode to disable caching of tiles. 2014-05-16 14:52:24 +01:00
Torsten Dreyer
ffe6c39a1d More AtisSpeaker variations
Also hide the voice installation path from the user of
the VoiceSynthesizer
2014-05-13 11:20:11 +02:00
Colin Douglas Howell
54f954fd02 Fix for issue 1463 (YASim underestimates off-axis aerodynamic forces on fuselages)
Change the drag coefficient for fuselages along the Y and Z axes
(i.e. perpendicular to the fuselage's main axis) to use a fixed
value of 0.5. (The value can still be adjusted using the fuselage's
"cy" and "cz" XML attributes.)

For the Y-axis and Z-axis drag on fuselages, YASim originally used
a drag coefficient equal to:

	(solver drag factor) * (fuselage length/width ratio)

This value turns out to be way too small for well-streamlined
aircraft, even those with long, narrow fuselages, and especially
so for those with short, stubby fuselages. Such fuselages are
streamlined in the X direction, but not along Y or Z.

0.5 is only a ballpark estimate, but it's reasonably close for the
common case of a fairly long fuselage with a round cross section. For
flat-sided fuselages, a larger value should be used, up to a maximum
of 2 for a slab-sided block. For short fuselages, the value should be
reduced to account for end effects. The fuselage's "cy" and "cz" XML
attributes can be modified to make such adjustments.

This fix won't affect straight flight much, but it should have a strong
impact on some maneuvers. For example, it will make slips more
effective and may make knife-edge flight easier on aerobatic aircraft
which should be capable of it.

Only aircraft which specify version="YASIM_VERSION_32" or newer are
affected.
2014-05-12 19:07:10 -07:00
Colin Douglas Howell
907209746f Separate fuselage drag adjustment from that for landing gear and external weights.
This commit is in prepartion for the following commit, which is a bug fix for
Issue 1463 (YASim underestimates off-axis forces on fuselages).

Previously the solver would adjust the drag factor for all of an Airplane's
non-Wing Surfaces in one pass, with no attempt to distinguish Fuselage Surfaces
from the Surfaces for Gear and Weights. This makes it difficult to modify how
fuselage drag is calculated while leaving unaffected the drag for landing gear
and external weights.

Now the solver adjusts the drag for an Airplane's fuselages, landing gear, and
external weights in three separate passes. To do this, each Fuselage now has a
list of its Surfaces. The fuselage pass simply iterates through the list of
Fuselages, running through each Fuselage's list of Surfaces.

The Airplane's list of non-Wing Surfaces, "_surfs", is no longer used here, but
there may still be uses of it elsewhere.
2014-05-12 14:29:48 -07:00
Torsten Dreyer
98c053792e Try to fix build error for msvc 2014-05-10 15:49:50 +02:00
Thomas Geymayer
0fc2d57211 Scripting: expose flight history as aircraft.history()
var hist = aircraft.history();
 debug.dump(hist.pathForHistory(50));
2014-05-10 10:56:09 +02:00
Thomas Geymayer
bd29974683 Canvas: move Window class to simgear. 2014-05-09 16:42:54 +02:00
Torsten Dreyer
b80b010ef1 Use FLITE voices in FGVoiceMgr
This patch enables spoken words without the need for external
festival using the existing FGVoiceMgr subsystem and the
properties under /sim/sound/voices
To hear the generated voices, set /sim/sound/voices/enabled=true
at startup

- use FLITEVoiceSynthesizer if a voice has <festival>false</festival>
- use FLITEVoiceSynthesizer if the festival server is unreachable
- decouple FGFLITEVoice from FGVoiceThread
2014-05-07 22:12:23 +02:00
Torsten Dreyer
d8c5e394cf Render voice to memory, no more temp files.
Thanks you James
2014-05-07 20:09:15 +02:00
Torsten Dreyer
1c8c74fc76 Compile without ENABLE_FLITE 2014-05-07 19:07:29 +02:00
Torsten Dreyer
4cdb5ed1f3 AtisSpeaker: prepare for individual voices 2014-05-07 17:08:02 +02:00
Torsten Dreyer
36fc9790ed atis voice: add some variation in pitch and speed 2014-05-07 10:34:04 +02:00
Thomas Geymayer
c6371c4152 Canvas: update for SimGear changes. 2014-05-06 18:15:29 +02:00
Colin Douglas Howell
4d1aebad79 Fix for issue 1394 (YASim's geometry for non-cylindrical fuselages is wrong)
Correct handling of fuselage's "midpoint" XML attribute so that the midpoint's
location matches the point assumed by all aircraft developers and YASim docs.
This means the fuselage won't be generated "back-to-front".
Also correct the variation of diameter for tapered fuselages so that both ends
of the fuselage narrow from the midpoint to the endpoints.
Before this, one end was narrowing from the endpoint to the midpoint, the
opposite of what was expected.
These changes affect both weight distribution and the distribution of lateral
aerodynamic forces.
2014-05-06 10:38:48 +02:00
Torsten Dreyer
19aedd4523 Add GPL header 2014-05-06 10:33:50 +02:00
Torsten Dreyer
dd127de32b Changes to voice + atis
- Add a very simple line-of-sight propagation model for the radio
  range computation.
- Remove some no longer used debug log messages
- Some code cleanup
- add-noise is now on by default
2014-05-06 10:23:04 +02:00
Torsten Dreyer
59db0534ff Fix a warning, no functional change 2014-05-05 22:24:47 +02:00
Torsten Dreyer
99dd8c08b5 commradio: typo: cuttoff --> cutoff 2014-05-05 13:22:39 +02:00
Torsten Dreyer
7dc2ee46a2 commradio: add squelch
adding property cuttoff-signal-quality to the comm radio
If signal-quality goes below this value, atis sound is muted.

Also: initialize property power-btn if not defined by the
aircraft or instrument designer
2014-05-05 13:20:03 +02:00
Torsten Dreyer
86b3469fbf JSBSim: fix zero agl above scenery discontinuity
see http://osdir.com/ml/flightgear-sim/2014-04/msg00145.html
2014-04-30 16:41:27 +02:00
Torsten Dreyer
46584bfc92 commradio: no spoken atis if sound disabled 2014-04-30 10:50:57 +02:00
Torsten Dreyer
88e5dc873f Cleanup part2. Forgotton file. 2014-04-30 10:45:52 +02:00
Torsten Dreyer
d2c000699f Cleanup of ATCDCL
- move FGATCAlignedProjection class as AlignedProjection
  to dclgps, the only place where it's currently used
- remove now obsolete files in ATCDCL
2014-04-30 10:22:51 +02:00
Torsten Dreyer
14c918a7ef commradio: improvements for atis speech
- use individual SampleGroup refnames for each radio
- enable volume control for atis speech
- (optionally) add noise based on signal quality
2014-04-28 23:50:45 +02:00
Torsten Dreyer
d5d88f2850 commradio: refactor MetarSpeaker to AtisSpeaker 2014-04-28 22:02:48 +02:00
Torsten Dreyer
6ee2fcdd9e Allow using the system version of flite and the HTS engine
By default, if the system version exists and can be used,
then it will be used. Otherwise, the local version will be used

Original patch by  Saikrishna Arcot via
https://gitorious.org/fg/flightgear/merge_requests/1582
slightly modified
2014-04-28 21:33:48 +02:00
Torsten Dreyer
4d4e1a2371 VoiceSynthesizer: add some test/debug properties
/sim/sound/voice-synthesizer/volume to set the volume of the generated wav (in dB)
/sim/sound/voice-synthesizer/keep-scratch-file do not remove the scratch file if true
2014-04-27 22:53:59 +02:00
Torsten Dreyer
38e2b8b11c Temporary fix for crash in FGVoiceMgr on reset 2014-04-27 21:38:24 +02:00
Torsten Dreyer
cadb77b18d use flite+hts for metar 2014-04-24 20:59:08 +02:00
Torsten Dreyer
f6b6cfc645 voice system: all doors in FLITE
Prepare for festival lite generated voices
2014-04-23 17:09:00 +02:00
Torsten Dreyer
19dd46c5b0 ATISEncoder: minor tweak
no trailing blank at runway designator
2014-04-23 17:07:00 +02:00
Torsten Dreyer
15525aab58 add atmosphere layer 8 for space exploration
as provided by Ron Jensen
2014-04-22 09:20:25 +02:00
Torsten Dreyer
4e89d05fb4 YASim: implement a versioning system
user attribute "version" of the airplane element of the YASim config file
to define the version this config uses.
Example:
<airplane mass="1344" version="YASIM_VERSION_CURRENT">

Initially, the following can be used:
YASIM_VERSION_ORIGINAL - The original version of YASim as implemented up to
                         FlightGear 3.0.0
YASIM_VERSION_32 - The version of YASim implemented in FlightGear 3.2.x
                   (and the development version 3.1.x)
YASIM_VERSION_CURRENT - The current and latest version of YASim.
2014-04-20 20:58:12 +02:00
James Turner
b3c7cb7c15 Fix crash with Nasal bindings.
naBindFunction doesn't save the function code to the global
hash, so pass an explicit context to various 'call' overloads so
the function can't be GC-ed in between parsing and calling.

(Patch by Nicholas Scheel)

https://code.google.com/p/flightgear-bugs/issues/detail?id=1397
2014-04-15 14:13:46 +01:00
Colin Douglas Howell
ef2898f25c Corrected fix for issue 1423 (YASim miscomputes incidence rotation of force vector)
I got the sign wrong in my previous fix, causing the vector to be rotated the
wrong way. See my latest comments in issue 1423. Sorry about that.
2014-04-05 11:58:16 +02:00
James Turner
5002814554 FreeBSD fixes
From Ganael Laplanche.
2014-04-04 15:33:27 +01:00
James Turner
01dca5e541 Fix link order of HTS / flite for GCC ld
- Clang, gold etc don't care but GCC ld still does.
2014-04-04 11:25:12 +01:00
Torsten Dreyer
ec2baa1a41 Merge commit 'refs/merge-requests/1579' of git://gitorious.org/fg/flightgear into yasimfixes 2014-04-04 08:57:16 +02:00
Torsten Dreyer
efc5c32633 Merge commit 'refs/merge-requests/1578' of git://gitorious.org/fg/flightgear into yasimfixes 2014-04-04 08:57:12 +02:00
Torsten Dreyer
5ba36b282f Merge commit 'refs/merge-requests/1577' of git://gitorious.org/fg/flightgear into yasimfixes 2014-04-04 08:57:05 +02:00
Thomas Geymayer
7f43a09fc5 Canvas: update for new bounding box getters. 2014-03-31 13:29:14 +02:00
Torsten Dreyer
44ba076720 allow binding of httpd to an address, not just a port
support --httpd=127.0.0.1:8080
2014-03-29 22:07:12 +01:00
Torsten Dreyer
390f6dd32d fix wrong computation of delta-t in jpg-httpd
this lead to a screenshot taken on each frame instead of
the defined interval
2014-03-29 11:22:34 +01:00
Torsten Dreyer
4be1aba62e Autopilot: enable debug output for logic elements 2014-03-28 17:48:35 +01:00
Colin Douglas Howell
8cca0adc58 Fix for issue 1427 (YASim fuselage's "cx" affects drag on all axes)
Correct Airplane::compileFuselage() so that a Fuselage's "cx"
only affects drag on the X axis.
2014-03-27 02:12:11 -07:00
James Turner
ca3cc03fac Ignore not-found 'config file' arguments.
Fixes confusing startup behaviour with malformed args, when
an argument accidentally contains a space (e.g. a park-pos or
protocol desc). In this case we treat the parts after the space as an XML config file name. When we can't find this file, we
completely abandon options setup, which causes many downstream
errors.

Change the behaviour so we warn in this case, but carry on with normal startup.
2014-03-27 08:05:02 +00:00
James Turner
19528fab8c Fix duplicated FGIO channels on reset.
Thanks to Nicholas Scheel for spotting this.
2014-03-26 19:24:00 +00:00
Torsten Dreyer
75f9d7e66e add nChildren to json properties 2014-03-26 15:06:24 +01:00
Torsten Dreyer
0dcc8aa34d Add a timestamp to JSON properties
add special attribute 'ts' to a JSON property reflecting
/sim/time/elapsed-sec

always add timestamp for listener properties
add timestamp for json requests if req param t=y is set
2014-03-26 08:51:15 +01:00
Torsten Dreyer
f68ae55068 Don't return invalid JSON if node not found 2014-03-25 21:43:08 +01:00
Colin Douglas Howell
aa27b38666 Fix for issue 1423 (YASim miscomputes force vector on Surfaces with nonzero incidence)
Surface::calcForce() now does reverse incidence rotation of force vector properly.
2014-03-25 01:50:21 -07:00
Torsten Dreyer
e7dec994b8 httpd: provide more airport information in geojson
- provide runways as polygon geometry
- provide longest runway lenght, heading and surface type
- some code cleanup
2014-03-23 21:19:04 +01:00
Torsten Dreyer
2c3d779459 Add virtual destructor 2014-03-23 21:17:54 +01:00
James Turner
9847bf3d13 Fix for bug 1419, nav.dat runway binding
Clean runway names to standard structure (0-prefix) before looking up
in the cache, when binding ILS navs to runways.

https://code.google.com/p/flightgear-bugs/issues/detail?id=1419
2014-03-23 09:53:00 +00:00
Colin Douglas Howell
8a9ce0ccf7 Fix for issue 1400 (YASim slats always give full stall enhancement)
Surface::stallFunc() now scales _slatAlpha by _slatPos when adjusting stallAlpha.
2014-03-22 12:11:39 -07:00
Torsten Dreyer
527eb9d444 httpd navdb: report ils/loc as geojson multilinestring 2014-03-21 13:00:59 +01:00
Thomas Geymayer
58c01b112e Canvas: update for 'file'->'src' rename 2014-03-20 11:43:12 +01:00
Torsten Dreyer
d59c57717e Don't allow call with no Filter set. Leads to crash. 2014-03-19 17:24:52 +01:00
Torsten Dreyer
3d33aff7bc Add a http handler to access the nav database
see the browsermap for an example
2014-03-19 17:23:53 +01:00
Thomas Geymayer
f0ef2b9576 Expose HTTP client to Canvas. 2014-03-18 18:35:35 +01:00
Torsten Dreyer
efcc89480d httpd: don't spam the console with debug messages 2014-03-17 16:38:53 +01:00
Torsten Dreyer
1867ccb4a8 httpd: better handling of first-time notifications
ensure new listeners get notified on first update loop
also cleanup the PropertyChangeObserver on reset
2014-03-17 16:22:42 +01:00
James Turner
070dba29f9 Close dialogs on GUI shutdown
- avoids orphaned dialogs on reset
- requires some guards in NasalSys since Nasal is shutdown first, but
  dialogs can have Nasal modules.
2014-03-16 22:52:55 +00:00
James Turner
849c6ccc6e GPS fixes
- fix corrupted ident on Mac (libc++ issue)
- don't clear scratch when activating DTO mode
- use the real navaid/airport for the waypt where possible
- expose active waypt name
2014-03-16 16:20:03 +00:00
Thomas Geymayer
764fbd519c CanvasWidget (PUI): make button index consistent with Canvas windows 2014-03-15 15:01:09 +01:00
Torsten Dreyer
a830708252 PropertyChangeWebsocket: fire change after subscribe 2014-03-14 21:36:29 +01:00
Torsten Dreyer
95d4c5898d httpd: handle url-rewrites 2014-03-14 16:39:16 +01:00
Torsten Dreyer
75933d3e1e add min/max freq to the frequencyformatter 2014-03-14 15:19:23 +01:00
James Turner
7041ed9078 Fix compilation with SYSTEM_SQLITE 2014-03-13 18:19:13 +00:00
James Turner
487546c848 Fix some leaks on reset
- tilecache 'clear_cache' is poorly named, ensure the destructor
  really deletes all outstanding entries.
2014-03-13 18:19:13 +00:00
Torsten Dreyer
aaa7fca621 NasalSys: arg is never null 2014-03-12 22:42:51 +01:00
Torsten Dreyer
7132947d16 httpd: update mongoose and websockets
* mongoose updated to 5.3
* first stab at implementing websockets, here a property change listener
  websocket. This websocket is at ws://yourhost:yourport/PropertyListener
  see FGDATA/Docs/gui/radio.html for an example
2014-03-12 22:39:37 +01:00
Torsten Dreyer
275d2dc7fa Partial fix #1408 2014-03-12 21:21:56 +01:00
James Turner
c7f2992904 Add 'set-scenery-paths' command. 2014-03-12 18:56:19 +00:00
James Turner
56ca1fe93b Don't rebuild navcache for scenery changes
- Cache can drop all ground-nets.
2014-03-12 18:56:18 +00:00
James Turner
c00ab21fad ICAO.ils.xml data works read-only. 2014-03-12 18:56:18 +00:00
James Turner
ffa7854ed9 ICAO.threshold.xml works read-only. 2014-03-12 18:56:18 +00:00
James Turner
5f9c17bd69 ICAO.twr.xml works in read-only mode. 2014-03-12 09:50:39 +00:00
James Turner
afe02b9b36 Reset: tweak property PRESERVE
- ensure options are re-processed before restoring PRESERVEd
properties, so that sessions changes survive a reset.
2014-03-11 22:43:25 +00:00
James Turner
f2a3090384 Fix some Clang warnings. 2014-03-11 16:46:00 +00:00
James Turner
1edffd1d10 Reset: fix OSG stats handling 2014-03-11 16:45:47 +00:00
James Turner
f04d5f8758 Reset: work with threaded OSG modes 2014-03-11 16:45:31 +00:00
Torsten Dreyer
64c393d022 http property browser: don't crash on invalid nodes
Don't expect users to always pass valid node names
or paths
2014-03-10 23:40:42 +01:00
Torsten Dreyer
7c2ce9acf7 allow binding of arguments for fg-commands thru run.cgi
to run a fg-command with args, POST run.cgi?value=my-command
and post the args node as JSON content like this:
{
   name: '',
   children: [
     {
       name: 'property',
       index: 0,
       value: 'first-value is here'
     },
     {
       name: 'property',
       index: 1,
       value: 'first-value is here'
     }
   ]
}
or whatever arguments the requested command takes
2014-03-10 22:58:52 +01:00
James Turner
f07771f3d5 Fix a crash after reset. 2014-03-10 17:43:15 +00:00
James Turner
cc607ae7e4 Save/restore initial state removed. 2014-03-10 17:29:28 +00:00
James Turner
9489009570 Fix fg-aircraft, fg-scenery props after reset.
- restore fg-aircraft properties, and PRESERVE fg-scenery ones,
across reset.
2014-03-10 17:24:42 +00:00
James Turner
03aa642155 Old reset code-path is removed. 2014-03-10 17:24:37 +00:00
James Turner
5e6c2b8e82 Reset the Autopilot on reposition.
- previously we restored AP state to initial; let's
actually re-init it after re-position.
2014-03-10 12:02:10 +00:00
James Turner
a8fe586e48 Revert wiping of /fdm on reposition.
This is too destructive for many established things, so revert it.
Instead, make the FDM shell save /fdm state on postinit(), and
restore it on re-init (which reposition invokes).
2014-03-10 12:00:51 +00:00
James Turner
7b2d710cd0 Add hts_engine 1.08 and flite_hts 1.05 code.
- Not compiled by default, nor hooked up to anything yet.
- Both libraries licensed under modified BSD license.
- Added top-level CMake file for both, to create a plain static
  library for each.
2014-03-10 09:32:43 +00:00
Torsten Dreyer
dac3b45892 Some fixes for the httpd
- Set encoding of the property browser to utf-8
- add the properties index to the json
2014-03-08 14:47:13 +01:00
Torsten Dreyer
ed8ec8f092 JSON: make the response configurable, set encoding
add request parameter 'i' and 'd'
if i=y, indent the output to make it human readable
if i is missing or anything else, send the output unformatted to save bandwith

'd' defines recursion depth with a default of 1 to show the requested node
and the immediate childs (if it has any)

call /json/?i=y&d=999 for a complete property tree backup (use with caution!)

Also set the encoding to UTF-8 as required per RFC 4627
2014-03-07 21:58:33 +01:00
Thomas Geymayer
ef3f0a2738 Canvas.MouseEvent: fix specific modifier states (ctrl, alt,...) 2014-03-07 16:19:40 +01:00
James Turner
86ba2a1628 Throw the reset switch.
- fix up CanvasMgr so canvas works after new reset.
2014-03-07 12:40:14 +00:00
James Turner
5ce2a067ca Fix JSBsim trimming on reposition.
- remove the entire /fdm tree on reposition
- force the initial NED wind values to 0.0 in JSBsim,
pending advice from people who know better.
2014-03-06 22:33:42 +00:00
Torsten Dreyer
b84026ce84 httpd: fix ignored port on --httpd=nnnn
also fix unconditional startup of the daemon
2014-03-06 21:19:49 +01:00
Torsten Dreyer
7602089460 Use the short xml name for properties in JSON 2014-03-06 18:00:11 +01:00
Torsten Dreyer
63e9cbed40 Initial commit for mongoose httpd 2014-03-06 13:19:15 +01:00
James Turner
2beb0f29af Fix starting on carrier.
- scenery intersection needs to check the whole scene since carriers
are outside it. (could possibly be optimised further)
2014-03-06 09:21:04 +00:00
Thomas Geymayer
88b7d4f530 Update for SGPropertyNode changes. 2014-03-06 00:41:41 +01:00
Anders Gidenstam
4a5dce9f48 Added support for shared JSBSim engine and system configurations in fgdata.
Adds $FG_ROOT/Aircraft/Generic/JSBSim/{Engines,Systems} to the JSBSim
engines and system search paths. Internally JSBSim already searches
$aircraft_dir/Engines and $aircraft_dir/Systems.
A file in $aircraft_dir/{Engines,Systems} have higher priority than one
in the shared directories.
2014-03-05 22:41:34 +01:00
James Turner
6493975913 Remove reference to 'old ATIS' from reposition. 2014-03-05 15:16:07 +00:00
James Turner
41567d8fc8 Toggle cloud drawing on/off 2014-03-05 14:22:27 +00:00
Torsten Dreyer
ea13c0f2de Cleanup, no functional change 2014-03-05 14:09:40 +01:00
Torsten Dreyer
c068049d84 NewAtis: handle varying winds 2014-03-05 13:52:43 +01:00
Philosopher
6870a88696 Fix for issue #999
Introduces delay-sec and release-delay-sec properties. The former is how
long to wait to run the binding(s) after pressing the button, the latter
is how long to wait after releasing the button. interval-sec now
specifies the delay before a repeat event occurs.
2014-03-05 00:33:45 +01:00
Thomas Geymayer
36f7ef93aa Canvas.MouseEvent: expose button/modifier state. 2014-03-04 18:00:57 +01:00
Thomas Geymayer
c7c9fd67aa TACAN: fix distance calculations and some other problems.
- Calculate line of sight distance instead of distance over
   ground
 - Do a nav cache update if carrier_nav.dat.gz timestamp has
   changed
 - Allow comments in carrier_nav.dat.gz
 - "Fix" range calculations (still does not take terrain/weather
   and other influences into account)
2014-03-02 16:52:00 +01:00
Thomas Geymayer
5151f7f5e0 TACAN improvements.
- Make search interval for new mobile tacan larger.
 - Continuous update of mobile tacan position.
2014-03-02 01:34:04 +01:00
Thomas Geymayer
234e2bdf09 TACAN/mobile navaid cleanup and improvements. 2014-03-01 20:19:06 +01:00
Torsten Dreyer
090207155e ATIS: say wind direction as three digits 2014-03-01 20:15:52 +01:00
Torsten Dreyer
0c7f21a259 New ATIS System: Fallback for no-realwx and some fixes
Added the fallback for realweather fetch disabled, creating
ATIS from present weather
Fixed some formatting errors, mainly missing spaces
Some code cleanup
2014-03-01 12:44:01 +01:00
Torsten Dreyer
5e080c1e37 Fix wrong metar assignment in commradio 2014-02-28 22:36:29 +01:00
Thomas Geymayer
e34d97796c TACAN: fix receiving mobile TACAN. 2014-02-28 20:01:09 +01:00
Thomas Geymayer
de38157916 FGPUIDialog: fix reading from already free'd memory.
Calls to updateValues can cause nested calls invalidating
the char* passed as argument, if retrieved from a
SGPropertyNode.
Probably SGPropertyNode should also be modified to return
a std::string instead of a pointer to an internal buffer.
2014-02-28 17:34:41 +01:00
Torsten Dreyer
dd6cccdda1 A new comm radio and atis implementation 2014-02-28 11:45:49 +01:00
Torsten Dreyer
c519b9262d Add simple breadcrumb navigation to the httpd 2014-02-27 22:21:45 +01:00
Thomas Geymayer
831f75a030 Autopilot: fix wrong warning for unknown node 2014-02-27 00:20:06 +01:00
Torsten Dreyer
c152e7f118 Bind the CAVOK flag to metarproperties 2014-02-25 09:42:00 +01:00
Thomas Geymayer
f1e0206f30 Autopilot: fix configuration to prevent false warnings. 2014-02-24 23:19:50 +01:00
James Turner
99fd9513d9 Metar: finalise-position fast if Metar fails
- when METAR lookup fails (as opposed to timing out), report
this immediately so finalise-position doesn't wait.
2014-02-24 19:43:21 +00:00
James Turner
bd8e43c007 Initial work on 'reposition' command
- use old-style reset as the basis for a lightweight 'reposition' command. This does not restore state, or reset
time management, but does reset the FDM and re-finalize position.
2014-02-24 19:43:21 +00:00
James Turner
072adde9a6 Remove all references to an alpha-buffer
- Current 3D clouds rendering does not use the alpha buffer,
so don't request one at launch, since it consumes valuable GPU memory.

- Remove any references to alpha testing or alpha func in the renderer setup.
2014-02-24 19:43:21 +00:00
James Turner
a6219dab76 use an osg::Switch to control scenery rendering
- restores functionality of 'draw-otw' property

- adds new /sim/rendering/draw-mask branch to allow control
over rendering each branch inside FGScenery
2014-02-24 19:43:21 +00:00
James Turner
874a923096 Remove legacy reference to draw-otw 2014-02-24 19:43:20 +00:00
James Turner
d035fdf3a9 Optimise NavCache airport query
- makes initial showing of 'Select Airport' dialog faster
2014-02-24 19:43:20 +00:00
James Turner
876e81edbd AIModels use PagedLOD
- allows AIModels to be unloaded by the Pager
- move AI models into the 'models' sub-branch of FGScenery
2014-02-24 19:43:20 +00:00
James Turner
33b7e3e32e Fix an (unlikely) startup crash
Encountered this by accidentally clicking during startup
2014-02-24 11:41:04 +00:00
James Turner
130f581b18 Tile-manager can request VBOs.
Monitor /sim/rendering/use-vbos and pass the value into
our SGReaderWriterOptions.
2014-02-21 08:52:07 -08:00
James Turner
b76d255d82 Remove pre-OSG 'enable/disable-textures' option.
These have been non-functional for a long time, remove
to avoid further confusion.
2014-02-21 07:57:35 -08:00
James Turner
b0dcb657e7 Fix for bug 1304 - crash loading XML route
If the XML is malformed (missing <route> section), don't crash.

https://code.google.com/p/flightgear-bugs/issues/detail?id=1304
2014-02-21 07:57:35 -08:00
Torsten Dreyer
16869d0362 publish the metar date/time to metarproperties 2014-02-21 16:23:10 +01:00
James Turner
0473607731 Tweak tile-manager SGBucket API
* FG builds with 'NO_DEPRECATED_API' in SGBucket
2014-02-19 14:02:09 -08:00
James Turner
39d1b6db38 Re-factor the FPE handling code
* make --enable-fpe work on Linux and MSVC
* standardise the code paths for different platforms
* add an argument finding helper to Options

(This is a basic cleanup, contributions from people with
more experience in this area are welcome)
2014-02-19 13:53:52 -08:00
James Turner
34ed79e5f8 getprop/setprop allows integer indices.
As suggested by a long-standing enhancement idea,
extend getprop/setprop to accept multiple args,
including integer arguments. This removes the need
for string concatenation (and hence, allocation)
on the Nasal side.

Patch by Nicholas 'Philosopher' Scheel
2014-02-18 20:07:29 -08:00
Christian Schmitt
9d995907db Support helipad names in the --runway startup option
also give better user feedback if runway/helipad ID is unknown
2014-02-14 20:05:11 +01:00
James Turner
7bc7197f6a Use Cmake to generate app-bundle on Mac
- build the .plist using CMake features
- update the nightly Mac packaging script for the new layout
2014-02-14 18:58:36 +00:00
James Turner
826ea8139f Re-apply the Clang/C+11 fix for JSBSim
Hopefully an equivalent change will occur upstream before the next
JSBsim sync.
2014-02-14 17:42:50 +00:00
James Turner
239a000763 Use new SGBucket API in tile-manager
- check for invalid tiles / buckets, which occurs at the poles
- use .sibling() method to offset
- no longer need to store view lat/lon in the manager.
2014-02-13 18:52:52 +00:00
Thomas Geymayer
e600cd3d00 Autopilot: add interface properties and property-root.
- Support interface properties as with JSBSim for easy reuse
   and parametrization of autopilot components.
 - Add property-root property to allow changing property root
   for all relative paths. This allows easy use of multiple
   instances of the same autopilot component at the same time
   by specifiying different property root nodes.
2014-02-09 18:51:09 +01:00