aboutsummaryrefslogtreecommitdiff
path: root/src/lua_interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lua_interface.c')
-rw-r--r--src/lua_interface.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/lua_interface.c b/src/lua_interface.c
index 30dcc98f..3baef912 100644
--- a/src/lua_interface.c
+++ b/src/lua_interface.c
@@ -50,6 +50,7 @@ LF l_cf_ta_buffer_new(LS *lua),
l_cf_ta_gtkmenu(LS *lua),
l_cf_ta_popupmenu(LS *lua),
l_cf_ta_reset(LS *lua),
+ l_cf_ta_quit(LS *lua),
l_cf_pm_focus(LS *lua), l_cf_pm_clear(LS *lua), l_cf_pm_activate(LS *lua),
l_cf_find_focus(LS *lua),
l_cf_call_find_next(LS *lua), l_cf_call_find_prev(LS *lua),
@@ -116,6 +117,7 @@ bool l_init(int argc, char **argv, bool reinit) {
l_cfunc(lua, l_cf_ta_gtkmenu, "gtkmenu");
l_cfunc(lua, l_cf_ta_popupmenu, "popupmenu");
l_cfunc(lua, l_cf_ta_reset, "reset");
+ l_cfunc(lua, l_cf_ta_quit, "quit");
l_mt(lua, "_textadept_mt", l_ta_mt_index, l_ta_mt_newindex);
lua_setglobal(lua, "textadept");
@@ -1403,6 +1405,15 @@ LF l_cf_ta_reset(LS *lua) {
return 0;
}
+LF l_cf_ta_quit(LS *) {
+ GdkEventAny event;
+ event.type = GDK_DELETE;
+ event.window = window->window;
+ event.send_event = TRUE;
+ gdk_event_put(reinterpret_cast<GdkEvent*>(&event));
+ return 0;
+}
+
LF l_cf_pm_focus(LS *) {
pm_toggle_focus();
return 0;