浏览代码

* Added forgotten X11 set/hide cursor (non-working code)

tags/v0.99.beta14
Jean-Yves Lamoureux jylam 19 年前
父节点
当前提交
10bfc08d26
共有 2 个文件被更改,包括 24 次插入0 次删除
  1. +21
    -0
      caca/driver_x11.c
  2. +3
    -0
      test/demo.c

+ 21
- 0
caca/driver_x11.c 查看文件

@@ -53,6 +53,7 @@ struct driver_private
Font font; Font font;
XFontStruct *font_struct; XFontStruct *font_struct;
int font_offset; int font_offset;
Cursor pointer;
#if defined(HAVE_X11_XKBLIB_H) #if defined(HAVE_X11_XKBLIB_H)
Bool autorepeat; Bool autorepeat;
#endif #endif
@@ -209,6 +210,9 @@ static int x11_init_graphics(caca_t *kk)
DefaultDepth(kk->drv.p->dpy, DefaultDepth(kk->drv.p->dpy,
DefaultScreen(kk->drv.p->dpy))); DefaultScreen(kk->drv.p->dpy)));



kk->drv.p->pointer = None;

return 0; return 0;
} }


@@ -533,6 +537,21 @@ static int x11_get_event(caca_t *kk, struct caca_event *ev)
return 0; return 0;
} }


static void x11_show_cursor(caca_t *kk)
{

}

static void x11_hide_cursor(caca_t *kk)
{
XFreeCursor( kk->drv.p->dpy, kk->drv.p->pointer );
kk->drv.p->pointer = None;
XUndefineCursor( kk->drv.p->dpy, kk->drv.p->window );
XSync( kk->drv.p->dpy, False ); /* optional */

}


/* /*
* XXX: following functions are local * XXX: following functions are local
*/ */
@@ -564,6 +583,8 @@ int x11_install(caca_t *kk)
kk->drv.display = x11_display; kk->drv.display = x11_display;
kk->drv.handle_resize = x11_handle_resize; kk->drv.handle_resize = x11_handle_resize;
kk->drv.get_event = x11_get_event; kk->drv.get_event = x11_get_event;
kk->drv.show_cursor = x11_show_cursor;
kk->drv.hide_cursor = x11_hide_cursor;


return 0; return 0;
} }


+ 3
- 0
test/demo.c 查看文件

@@ -61,6 +61,9 @@ int main(int argc, char **argv)
if(!sprite) if(!sprite)
sprite = cucul_load_sprite(qq, "examples/caca.txt"); sprite = cucul_load_sprite(qq, "examples/caca.txt");


/* Disable cursor */
caca_hide_cursor(kk);

/* Main menu */ /* Main menu */
display_menu(); display_menu();
caca_display(kk); caca_display(kk);


||||||
x
 
000:0
正在加载...
取消
保存