#include <simgear/canvas/Canvas.hxx>
#include <simgear/canvas/elements/CanvasElement.hxx>
+#include <simgear/canvas/elements/CanvasText.hxx>
#include <simgear/canvas/MouseEvent.hxx>
#include <simgear/nasal/cppbind/from_nasal.hxx>
typedef nasal::Ghost<sc::CanvasPtr> NasalCanvas;
typedef nasal::Ghost<sc::ElementPtr> NasalElement;
typedef nasal::Ghost<sc::GroupPtr> NasalGroup;
+typedef nasal::Ghost<sc::TextPtr> NasalText;
SGPropertyNode* from_nasal_helper(naContext c, naRef ref, SGPropertyNode**)
{
);
}
+naRef f_textGetNearestCursor(sc::Text& text, const nasal::CallContext& ctx)
+{
+ return nasal::to_nasal
+ (
+ ctx.c,
+ text.getNearestCursor( ctx.requireArg<osg::Vec2>(0) )
+ );
+}
+
naRef f_eventGetTarget(naContext c, sc::Event& event)
{
return NasalElement::create(c, event.getTarget().lock());
.method_func<&f_groupCreateChild>("_createChild")
.method_func<&f_groupGetChild>("_getChild")
.method_func<&f_groupGetElementById>("_getElementById");
+ NasalText::init("canvas.Text")
+ .bases<NasalElement>()
+ .method_func<&f_textGetNearestCursor>("getNearestCursor");
nasal::Hash globals_module(globals, c),
canvas_module = globals_module.createHash("canvas");