summaryrefslogtreecommitdiff
path: root/iup/srclua3/iuplua_olecontrol.c
diff options
context:
space:
mode:
Diffstat (limited to 'iup/srclua3/iuplua_olecontrol.c')
-rwxr-xr-xiup/srclua3/iuplua_olecontrol.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/iup/srclua3/iuplua_olecontrol.c b/iup/srclua3/iuplua_olecontrol.c
new file mode 100755
index 0000000..f302713
--- /dev/null
+++ b/iup/srclua3/iuplua_olecontrol.c
@@ -0,0 +1,34 @@
+/** \file
+ * \brief Bindig of iupole to Lua 3.
+ *
+ * See Copyright Notice in "iup.h"
+ */
+
+#include <stdlib.h>
+
+#include <lua.h>
+#include <lauxlib.h>
+
+#include "iup.h"
+#include "iupole.h"
+#include "iupluaole.h"
+
+static void createOleControl (void)
+{
+ int tag = (int)lua_getnumber(lua_getglobal("iuplua_tag"));
+ lua_pushusertag(IupOleControl(luaL_check_string(1)),tag);
+}
+
+int iupolelua_open (void)
+{
+ lua_register("iupCreateOleControl",createOleControl);
+
+ return lua_dostring("IUPOLECONTROL = {parent = WIDGET}\n"
+ "function IUPOLECONTROL:CreateIUPelement (obj)\n"
+ " return iupCreateOleControl (obj[1])\n"
+ "end\n"
+ "function iupolecontrol (o)\n"
+ " return IUPOLECONTROL:Constructor (o)\n"
+ "end\n"
+ "iup.olecontrol = iupolecontrol\n");
+}