projects
/
goodguy
/
history.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
merged hv7 mod
[goodguy/history.git]
/
cinelerra-5.1
/
guicast
/
bcwindowbase.h
diff --git
a/cinelerra-5.1/guicast/bcwindowbase.h
b/cinelerra-5.1/guicast/bcwindowbase.h
index 767427dc2a7a63c45d6eaeec75b0092f083d3071..2c25dc1feb0bdf9fe3a255eee4f9afdbf11ec7a5 100644
(file)
--- a/
cinelerra-5.1/guicast/bcwindowbase.h
+++ b/
cinelerra-5.1/guicast/bcwindowbase.h
@@
-194,6
+194,7
@@
public:
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; };
+ virtual int selection_clear_event() { 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; };
@@
-269,10
+270,10
@@
public:
void add_keyboard_listener(int(BC_WindowBase::*handler)(BC_WindowBase *));
void del_keyboard_listener(int(BC_WindowBase::*handler)(BC_WindowBase *));
// Dimensions
void add_keyboard_listener(int(BC_WindowBase::*handler)(BC_WindowBase *));
void del_keyboard_listener(int(BC_WindowBase::*handler)(BC_WindowBase *));
// Dimensions
- virtual int get_w()
;
- virtual int get_h()
;
- virtual int get_x()
;
- virtual int get_y()
;
+ virtual int get_w()
{ return w; }
+ virtual int get_h()
{ return h; }
+ virtual int get_x()
{ return x; }
+ virtual int get_y()
{ return y; }
int get_root_w(int lock_display);
int get_root_h(int lock_display);
XineramaScreenInfo *get_xinerama_info(int screen);
int get_root_w(int lock_display);
int get_root_h(int lock_display);
XineramaScreenInfo *get_xinerama_info(int screen);
@@
-397,8
+398,8
@@
public:
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);
@@
-449,9
+450,8
@@
public:
void set_background(VFrame *bitmap);
// Change the window title.
void put_title(const char *text);
void set_background(VFrame *bitmap);
// Change the window title.
void put_title(const char *text);
- void set_title(const char *text);
+ void set_title(const char *text
, int utf8=1
);
const char *get_title();
const char *get_title();
- void set_utf8title(const char *text);
// Change the window title. The title is translated internally.
void start_video();
void stop_video();
// Change the window title. The title is translated internally.
void start_video();
void stop_video();
@@
-514,8
+514,8
@@
public:
int unset_repeat(int64_t duration);
const char *get_tooltip();
int set_tooltip(const char *text);
int unset_repeat(int64_t duration);
const char *get_tooltip();
int set_tooltip(const char *text);
- v
oid set_tooltip_done(int v
);
- int show_tooltip(int w
= -1, int h = -1);
+ v
irtual int show_tooltip(const char *text, int x=-1, int y=-1, int w = -1, int h = -1
);
+ int show_tooltip(int w
=-1, int h=-1) { return show_tooltip(0, -1, -1, w, h); }
int hide_tooltip();
int set_icon(VFrame *data);
int load_defaults(BC_Hash *defaults);
int hide_tooltip();
int set_icon(VFrame *data);
int load_defaults(BC_Hash *defaults);
@@
-528,6
+528,9
@@
public:
void restore_vm();
#endif
void restore_vm();
#endif
+ 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);
int test_keypress;
char keys_return[KEYPRESSLEN];
int test_keypress;
char keys_return[KEYPRESSLEN];
@@
-557,6
+560,7
@@
private:
int create_private_colors();
int create_color(int color);
int create_shared_colors();
int create_private_colors();
int create_color(int color);
int create_shared_colors();
+ Cursor create_grab_cursor();
// Get width of a single line. Used by get_text_width
int get_single_text_width(int font, const char *text, int length);
int get_single_text_width(int font, const wchar_t *text, int length);
// Get width of a single line. Used by get_text_width
int get_single_text_width(int font, const char *text, int length);
int get_single_text_width(int font, const wchar_t *text, int length);
@@
-572,7
+576,6
@@
private:
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);
- int wcharpos(const wchar_t *text, XftFont *font, int length, int *charpos);
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);
@@
-583,7
+586,7
@@
private:
int trigger_tooltip();
int untrigger_tooltip();
int trigger_tooltip();
int untrigger_tooltip();
- void draw_tooltip();
+ void draw_tooltip(
const char *text=0
);
static XEvent *new_xevent();
// delete all repeater opjects for a close
int unset_all_repeaters();
static XEvent *new_xevent();
// delete all repeater opjects for a close
int unset_all_repeaters();
@@
-596,6
+599,8
@@
private:
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);
+// clear selection
+ int do_selection_clear(Atom selection);
// Recursive event dispatchers
int dispatch_resize_event(int w, int h);
// Recursive event dispatchers
int dispatch_resize_event(int w, int h);
@@
-616,6
+621,7
@@
private:
int dispatch_drag_motion();
int dispatch_drag_stop();
int dispatch_expose_event();
int dispatch_drag_motion();
int dispatch_drag_stop();
int dispatch_expose_event();
+ int dispatch_selection_clear();
// Get the port ID for a color model or return -1 for failure
int grab_port_id(int color_model);
// Get the port ID for a color model or return -1 for failure
int grab_port_id(int color_model);
@@
-668,6
+674,8
@@
private:
int video_on;
// Event handler completion
int done, done_set, window_running;
int video_on;
// Event handler completion
int done, done_set, window_running;
+// Enter/Leave notify state
+ int cursor_entered;
// Return value of event handler
int return_value;
// Motion event compression
// Return value of event handler
int return_value;
// Motion event compression
@@
-730,25
+738,22
@@
private:
// Popup window for tooltip
BC_Popup *tooltip_popup;
// If this subwindow has already shown a tooltip since the last EnterNotify
// Popup window for tooltip
BC_Popup *tooltip_popup;
// If this subwindow has already shown a tooltip since the last EnterNotify
- int tooltip_done;
int options;
int flash_enabled;
// Font sets
int options;
int flash_enabled;
// Font sets
-
XFontSet smallfontset, mediumfontset, largefontset, bigfontset, curr_
fontset;
-
+
XFontSet smallfontset, mediumfontset, largefontset, bigfontset, clock
fontset;
+ XFontSet curr_fontset;
// Fonts
int current_font;
// Fonts
int current_font;
- XFontStruct *smallfont, *mediumfont, *largefont, *bigfont;
-
+ XFontStruct *smallfont, *mediumfont, *largefont, *bigfont, *clockfont;
// Must be void so users don't need to include the wrong libpng version.
// Must be void so users don't need to include the wrong libpng version.
- void *smallfont_xft, *mediumfont_xft, *largefont_xft, *bigfont_xft;
-
+ void *smallfont_xft, *mediumfont_xft, *largefont_xft, *bigfont_xft
, *clockfont_xft
;
+ void *bold_smallfont_xft, *bold_mediumfont_xft, *bold_largefont_xft;
int line_width;
int line_dashes;
int line_width;
int line_dashes;
- void *bold_largefont_xft, *bold_mediumfont_xft, *bold_smallfont_xft;
int64_t current_color;
// Coordinate of drag start
int drag_x, drag_y;
int64_t current_color;
// Coordinate of drag start
int drag_x, drag_y;
@@
-765,6
+770,8
@@
private:
Window rootwin;
// windows previous events happened in
Window event_win, drag_win;
Window rootwin;
// windows previous events happened in
Window event_win, drag_win;
+// selection clear
+ Atom event_selection;
Visual *vis;
Colormap cmap;
// Name of display
Visual *vis;
Colormap cmap;
// Name of display