X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fbcwindowbase.h;h=ca73b39e61c696d37648cf3243243475ece56daa;hp=263fa657c864b978970fc57e1526f30d27e462a3;hb=a19a685a46ddc630010788707d9e5b9d2342af46;hpb=b5c58822be78c8820692c916e296a2230bb2b9e2;ds=sidebyside diff --git a/cinelerra-5.1/guicast/bcwindowbase.h b/cinelerra-5.1/guicast/bcwindowbase.h index 263fa657..ca73b39e 100644 --- a/cinelerra-5.1/guicast/bcwindowbase.h +++ b/cinelerra-5.1/guicast/bcwindowbase.h @@ -129,7 +129,7 @@ public: class BC_WindowBase : public trace_info { public: - BC_WindowBase(int opts=0); + BC_WindowBase(); virtual ~BC_WindowBase(); friend class BC_Bar; @@ -224,7 +224,6 @@ public: int get_deleting(); - //============================= OpenGL functions =============================== // OpenGL functions must be called from inside a BC_Synchronous command. // Create openGL context and bind it to the current window. @@ -269,6 +268,7 @@ public: virtual int keyboard_listener(BC_WindowBase *wp) { return 0; } void add_keyboard_listener(int(BC_WindowBase::*handler)(BC_WindowBase *)); void del_keyboard_listener(int(BC_WindowBase::*handler)(BC_WindowBase *)); + int resend_event(BC_WindowBase *window); // Dimensions virtual int get_w() { return w; } virtual int get_h() { return h; } @@ -277,18 +277,19 @@ public: int get_root_w(int lock_display); int get_root_h(int lock_display); XineramaScreenInfo *get_xinerama_info(int screen); + void get_fullscreen_geometry(int &wx, int &wy, int &ww, int &wh); int get_screen_w(int lock_display, int screen); int get_screen_h(int lock_display, int screen); int get_screen_x(int lock_display, int screen); int get_screen_y(int lock_display, int screen); // Get current position - void get_abs_cursor_xy(int &abs_x, int &abs_y, int lock_window=0); + void get_abs_cursor(int &abs_x, int &abs_y, int lock_window=0); int get_abs_cursor_x(int lock_window=0); int get_abs_cursor_y(int lock_window=0); - void get_pop_cursor_xy(int &px, int &py, int lock_window=0); + void get_pop_cursor(int &px, int &py, int lock_window=0); int get_pop_cursor_x(int lock_window=0); int get_pop_cursor_y(int lock_window=0); - void get_relative_cursor_xy(int &x, int &y, int lock_window=0); + void get_relative_cursor(int &x, int &y, int lock_window=0); int get_relative_cursor_x(int lock_window=0); int get_relative_cursor_y(int lock_window=0); void get_root_coordinates(int x, int y, int *abs_x, int *abs_y); @@ -461,6 +462,7 @@ public: // Reroute toplevel events int grab(BC_WindowBase *window); int ungrab(BC_WindowBase *window); + int grab_event_count(); // Grab button events int grab_buttons(); void ungrab_buttons(); @@ -495,6 +497,7 @@ public: void slide_up(int distance); void slide_down(int distance); void flicker(int n=3, int ms=66); + void focus(); int cycle_textboxes(int amount); @@ -550,8 +553,8 @@ private: int get_screen(); virtual int initialize(); int get_atoms(); -// Function to overload to recieve customly defined atoms - virtual int recieve_custom_xatoms(xatom_event *event); +// Function to overload to receive customly defined atoms + virtual int receive_custom_xatoms(xatom_event *event); void init_cursors(); int init_colors(); @@ -657,6 +660,8 @@ private: BC_PopupMenu* active_popup_menu; // pointer to the active subwindow BC_WindowBase* active_subwindow; +// pointer to the window to which to put the current event + BC_WindowBase* resend_event_window; // thread id of display locker pthread_t display_lock_owner; @@ -738,24 +743,21 @@ private: // Popup window for tooltip BC_Popup *tooltip_popup; // If this subwindow has already shown a tooltip since the last EnterNotify - int options; int flash_enabled; // Font sets - XFontSet smallfontset, mediumfontset, largefontset, bigfontset, curr_fontset; - + XFontSet smallfontset, mediumfontset, largefontset, bigfontset, clockfontset; + XFontSet curr_fontset; // 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. - 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; - void *bold_largefont_xft, *bold_mediumfont_xft, *bold_smallfont_xft; int64_t current_color; // Coordinate of drag start int drag_x, drag_y;