1
0
Fork 0
Commit graph

357 commits

Author SHA1 Message Date
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
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
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
Thomas Geymayer
7f43a09fc5 Canvas: update for new bounding box getters. 2014-03-31 13:29:14 +02:00
Thomas Geymayer
f0ef2b9576 Expose HTTP client to Canvas. 2014-03-18 18:35:35 +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
Torsten Dreyer
aaa7fca621 NasalSys: arg is never null 2014-03-12 22:42:51 +01:00
Thomas Geymayer
ef3f0a2738 Canvas.MouseEvent: fix specific modifier states (ctrl, alt,...) 2014-03-07 16:19:40 +01:00
Thomas Geymayer
88b7d4f530 Update for SGPropertyNode changes. 2014-03-06 00:41:41 +01:00
Thomas Geymayer
36f7ef93aa Canvas.MouseEvent: expose button/modifier state. 2014-03-04 18:00:57 +01: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
Thomas Geymayer
3b23892ccf Canvas: also apply matrix of element to getTransformedBounds.
Part of the fix for #1333.
2014-02-08 00:28:24 +01:00
Thomas Geymayer
61da998e02 Expose SGPath::standardLocation to Nasal. 2014-01-28 01:08:06 +01:00
Thomas Geymayer
67be73fdde Expose SGPath to Nasal 2013-12-18 10:30:19 +01:00
Thomas Geymayer
3a170e1a39 Scripting: clean up a bit and user more of cppbind. 2013-12-08 19:24:45 +01:00
Thomas Geymayer
cac6407a8e Add positioned.diff for fast difference calculations on positioned lists. 2013-12-08 19:24:45 +01:00
Thomas Geymayer
fcc6d3edc2 Expose SGPropertyNode::removeAllChildren() to Nasal. 2013-12-07 13:47:10 +01:00
James Turner
9c11dfd545 Reset: free nasal-module-listeners on shutdown. 2013-12-03 21:38:45 +00:00
James Turner
d99109c9e4 Reset: do re-init Ghost bindings. 2013-11-24 15:10:00 +00:00
James Turner
0fbc448af0 Nasal changes for reset
- reduce use of global context (will die soon)
- replace static wrappedNode ref which breaks reset
2013-11-22 22:52:33 +00:00
James Turner
fecb475145 Refactor Cocoa helpers.
Change away from using deprecated FSFindFolder.
2013-11-16 10:58:17 +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
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
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
Thomas Geymayer
4c9ab24b66 Keep ref_ptr in FGNasalModelData (should fix #1234) 2013-11-01 20:52:55 +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
961905a6cf NasalCanvas: expose Element::getParent() to Nasal 2013-10-23 17:11:56 +02:00
Thomas Geymayer
771586854b Make build information readonly and clean up debug output. 2013-10-20 12:59:44 +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
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
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
Thomas Geymayer
df7e56b049 Canvas: update for SimGear changes. 2013-10-12 00:43:30 +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
52e5a9abe8 Reduce amount of log output at level=debug. 2013-09-28 14:47:20 +01:00
James Turner
33425c671d Support for multiple data dirs. 2013-09-17 07:47:58 +01: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
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