]> git.mxchange.org Git - flightgear.git/commitdiff
Canvas: expose more methods to Nasal
authorThomas Geymayer <tomgey@gmail.com>
Sun, 1 Jun 2014 10:08:13 +0000 (12:08 +0200)
committerThomas Geymayer <tomgey@gmail.com>
Sun, 1 Jun 2014 10:15:02 +0000 (12:15 +0200)
src/Scripting/NasalCanvas.cxx

index dea2430bebdb24b86e1cb0fd14fab1e9757f5de4..b3dae9671c938dbfa9c2a85d5f1d3c956a87ac16 100644 (file)
@@ -391,6 +391,8 @@ naRef initNasalCanvas(naRef globals, naContext c)
   nasal::Hash globals_module(globals, c),
               canvas_module = globals_module.createHash("canvas");
 
+  nasal::Object::setupGhost();
+
   //----------------------------------------------------------------------------
   // Events
 
@@ -437,6 +439,7 @@ naRef initNasalCanvas(naRef globals, naContext c)
     .method("data", &f_propElementData);
   NasalCanvas::init("Canvas")
     .bases<NasalPropertyBasedElement>()
+    .bases<nasal::ObjectRef>()
     .member("_node_ghost", &elementGetNode<sc::Canvas>)
     .member("size_x", &sc::Canvas::getSizeX)
     .member("size_y", &sc::Canvas::getSizeY)
@@ -470,7 +473,9 @@ naRef initNasalCanvas(naRef globals, naContext c)
   // Layouting
 
   NasalLayoutItem::init("canvas.LayoutItem")
-    .method("setCanvas", &sc::LayoutItem::setCanvas);
+    .method("getCanvas", &sc::LayoutItem::getCanvas)
+    .method("setCanvas", &sc::LayoutItem::setCanvas)
+    .method("getParent", &sc::LayoutItem::getParent);
   sc::NasalWidget::setupGhost(canvas_module);
 
   NasalLayout::init("canvas.Layout")