Add canvas.display to access display from canvas.
authorGuo Rui <firemeteor@Adam.(none)>
Fri, 10 Jul 2009 15:49:03 +0000 (10 23:49 +0800)
committerGuo Rui <firemeteor@Adam.(none)>
Fri, 10 Jul 2009 15:49:03 +0000 (10 23:49 +0800)
src/lua.c

index 0dd0734..eedb10d 100644 (file)
--- a/src/lua.c
+++ b/src/lua.c
@@ -549,6 +549,7 @@ static const struct Xet_reg user_getters[] = {
 
 /** }}} */
 
+static int get_display(lua_State *L, void *v);
 /** Canvas {{{ */
 
 PUSH_TYPE(canvas, struct canvas)
@@ -638,6 +639,7 @@ static const struct Xet_reg canvas_getters[] = {
   {"xe", get_int, offsetof(struct canvas, c_xe)},
   {"ye", get_int, offsetof(struct canvas, c_ye)},
   {"window", 0, 0, canvas_get_window},
+  {"display", get_display, offsetof(struct canvas, c_display)},
   {0, 0}
 };
 
@@ -715,6 +717,13 @@ PUSH_TYPE(display, struct display)
 CHECK_TYPE(display, struct display)
 
 static int
+get_display(lua_State *L, void *v)
+{
+  push_display(L, (struct display **)v);
+  return 1;
+}
+
+static int
 display_get_canvases(lua_State *L)
 {
   struct display *d;