#include "bcpopupmenu.inc"
#include "bcpot.inc"
#include "bcprogress.inc"
-#include "bcrelocatablewidget.h"
#include "bcrepeater.inc"
#include "bcresources.inc"
#include "bcscrollbar.inc"
#include "bctitle.inc"
#include "bctoggle.inc"
#include "bctumble.inc"
-#include "bcwidgetgrid.inc"
#include "bcwindow.inc"
#include "bcwindowbase.inc"
#include "bcwindowevents.inc"
// Windows, subwindows, popupwindows inherit from this
-class BC_WindowBase : public BC_RelocatableWidget
+class BC_WindowBase
{
public:
BC_WindowBase(int opts=0);
int get_color(int64_t color);
// return the currently selected color
int64_t get_color();
- int show_window(int flush = 1);
- int hide_window(int flush = 1);
+ virtual int show_window(int flush = 1);
+ virtual int hide_window(int flush = 1);
int get_hidden();
int get_video_on();
// Shouldn't deference a pointer to delete a window if a parent is
BC_MenuBar* add_menubar(BC_MenuBar *menu_bar);
BC_WindowBase* add_subwindow(BC_WindowBase *subwindow);
BC_WindowBase* add_tool(BC_WindowBase *subwindow);
- BC_WidgetGrid* add_widgetgrid(BC_WidgetGrid *widgetgrid);
// Use this to get events for the popup window.
// Events are not propagated to the popup window.
virtual int get_h();
virtual int get_x();
virtual int get_y();
- virtual int reposition_widgets(){ printf("foo1"); return 0; }
int get_root_w(int lock_display);
int get_root_h(int lock_display);
XineramaScreenInfo *get_xinerama_info(int screen);
int get_abs_cursor_y(int lock_window);
int get_relative_cursor_x();
int get_relative_cursor_y();
+ void get_root_coordinates(int x, int y, int *abs_x, int *abs_y);
+ void get_win_coordinates(int abs_x, int abs_y, int *x, int *y);
// Return 1 if cursor is over an unobscured part of this window.
// An argument is provided for excluding a drag popup
int get_cursor_over_window();
void set_inverse();
void set_background(VFrame *bitmap);
// Change the window title.
+ void put_title(const char *text);
void set_title(const char *text);
const char *get_title();
void set_utf8title(const char *text);
int reposition_window(int x, int y, int w, int h);
int reposition_window_relative(int dx, int dy);
int reposition_window_relative(int dx, int dy, int w, int h);
- int reposition_widget(int x, int y, int w, int h);
// Cause a repeat event to be dispatched every duration.
// duration is milliseconds
int set_repeat(int64_t duration);
int find_prev_textbox(BC_WindowBase **last_textbox, BC_WindowBase **prev_textbox, int &result);
- void translate_coordinates(Window src_w,
- Window dest_w,
- int src_x,
- int src_y,
- int *dest_x_return,
- int *dest_y_return);
+ void translate_coordinates(Window src_w, Window dest_w,
+ int src_x, int src_y, int *dest_x_return, int *dest_y_return);
// Top level window above this window
BC_WindowBase* top_level;
// list of window bases in this window
BC_SubWindowList* subwindows;
// list of window bases in this window
- BC_WidgetGridList* widgetgrids;
ArrayList<BC_WindowBase*> popups;
// Position of window
int x, y, w, h;