virtual int drag_motion_event() { return 0; };
virtual int drag_stop_event() { return 0; };
virtual int uses_text() { return 0; };
virtual int drag_motion_event() { return 0; };
virtual int drag_stop_event() { return 0; };
virtual int uses_text() { return 0; };
// Only if opengl is enabled
virtual int expose_event() { return 0; };
virtual int grab_event(XEvent *event) { return 0; };
// Only if opengl is enabled
virtual int expose_event() { return 0; };
virtual int grab_event(XEvent *event) { return 0; };
BC_Pixmap *pixmap = 0, int is_utf8 = 0);
void draw_xft_text(int x, int y, const wchar_t *text,
int length, BC_Pixmap *pixmap);
BC_Pixmap *pixmap = 0, int is_utf8 = 0);
void draw_xft_text(int x, int y, const wchar_t *text,
int length, BC_Pixmap *pixmap);
- void draw_wtext(int x, int y, const wchar_t *text, int length = -1,
- BC_Pixmap *pixmap = 0, int *charpos = 0);
+ int draw_single_text(int draw, int font,
+ int x, int y, const wchar_t *text, int length = -1, BC_Pixmap *pixmap = 0);
// truncate the text to a ... version that fits in the width, using the current_font
void truncate_text(char *result, const char *text, int w);
void draw_center_text(int x, int y, const char *text, int length = -1);
// truncate the text to a ... version that fits in the width, using the current_font
void truncate_text(char *result, const char *text, int w);
void draw_center_text(int x, int y, const char *text, int length = -1);
+ Atom to_clipboard(const char *data, long len, int clipboard_num);
+ long from_clipboard(char *data, long maxlen, int clipboard_num);
+ long clipboard_len(int clipboard_num);
int64_t get_color_bgr24(int color);
XFontStruct* get_font_struct(int font);
XftFont* get_xft_struct(int font);
int64_t get_color_bgr24(int color);
XFontStruct* get_font_struct(int font);
XftFont* get_xft_struct(int font);
Cursor get_cursor_struct(int cursor);
XFontSet get_fontset(int font);
XFontSet get_curr_fontset(void);
Cursor get_cursor_struct(int cursor);
XFontSet get_fontset(int font);
XFontSet get_curr_fontset(void);
void put_event(XEvent *event);
// remove events queued for win
void dequeue_events(Window win);
void put_event(XEvent *event);
// remove events queued for win
void dequeue_events(Window win);
// Recursive event dispatchers
int dispatch_resize_event(int w, int h);
// Recursive event dispatchers
int dispatch_resize_event(int w, int h);
int dispatch_drag_motion();
int dispatch_drag_stop();
int dispatch_expose_event();
int dispatch_drag_motion();
int dispatch_drag_stop();
int dispatch_expose_event();
Window rootwin;
// windows previous events happened in
Window event_win, drag_win;
Window rootwin;
// windows previous events happened in
Window event_win, drag_win;