28#ifndef FL_WINDOW_DRIVER_H
29#define FL_WINDOW_DRIVER_H
31#include <FL/Fl_Export.H>
33#include <FL/Fl_Overlay_Window.H>
56 static bool is_a_rescale_;
63 virtual ~Fl_Window_Driver();
64 static Fl_Window_Driver *newWindowDriver(
Fl_Window *);
67 int wait_for_expose_value;
75 int x()
const {
return pWindow->
x(); }
77 int y()
const {
return pWindow->
y(); }
79 int w()
const {
return pWindow->
w(); }
81 int h()
const {
return pWindow->
h(); }
101 unsigned char size_range_set();
104 int fullscreen_screen_top();
105 int fullscreen_screen_bottom();
106 int fullscreen_screen_left();
107 int fullscreen_screen_right();
108 int* no_fullscreen_x() {
return &pWindow->no_fullscreen_x; }
109 int* no_fullscreen_y() {
return &pWindow->no_fullscreen_y; }
110 int* no_fullscreen_w() {
return &pWindow->no_fullscreen_w; }
111 int* no_fullscreen_h() {
return &pWindow->no_fullscreen_h; }
119 void flx(Fl_X *
x) { pWindow->flx_ =
x; }
120 Fl_Cursor cursor_default() {
return pWindow->cursor_default; }
121 void destroy_double_buffer();
131 void resize_after_scale_change(
int ns,
float old_f,
float new_f);
142 virtual void flush();
143 virtual void flush_double();
144 virtual void flush_overlay();
146 virtual void draw_begin();
148 virtual void draw_end();
151 virtual void label(
const char *name,
const char *mininame);
153 virtual void makeWindow() {}
156 virtual void resize(
int ,
int ,
int ,
int ) {}
157 virtual void hide() {}
159 virtual void map() {}
160 virtual void unmap() {}
161 virtual void fullscreen_on() {}
165 virtual bool maximize_needs_hide() {
return false; }
166 void is_maximized(
bool b) { pWindow->is_maximized_(b); }
167 virtual void use_border();
170 virtual void decoration_sizes(
int *top,
int *left,
int *right,
int *bottom) {
171 *top = *left = *right = *bottom = 0;
173 virtual void show_with_args_begin() {}
174 virtual void show_with_args_end(
int ,
char ** ) {}
175 virtual int can_do_overlay();
176 virtual void redraw_overlay();
183 void shape_pixmap_(
Fl_Image* pixmap);
185 virtual void shape_alpha_(
Fl_Image*,
int ) {}
189 virtual const void *
icon()
const {
return NULL;}
190 virtual void icon(
const void *) {}
196 virtual int scroll(
int ,
int ,
int ,
int ,
198 void (*)(
void*,
int,
int,
int,
int),
void*) {
return 0; }
199 static inline Fl_Window_Driver* driver(
const Fl_Window *win) {
return win->pWindowDriver;}
205 virtual void reposition_menu_window(
int x,
int y);
206 virtual void menu_window_area(
int &X,
int &Y,
int &W,
int &H,
int nscreen = -1);
207 static Fl_Window *menu_parent(
int *display_height = NULL);
214 static bool is_floating_title(
Fl_Window *);
215 static void scroll_to_selected_item(
Fl_Window *);
Fl_Cursor
The following constants define the mouse cursors that are available in FLTK.
Definition Enumerations.H:1261
The Fl_Group class is the FLTK container widget.
Definition Fl_Group.H:56
int find(const Fl_Widget *) const
Searches the child array for the widget and returns the index.
Definition Fl_Group.cxx:50
Directs all graphics requests to an Fl_Image.
Definition Fl_Image_Surface.H:65
Base class for image caching, scaling and drawing.
Definition Fl_Image.H:60
The Fl_RGB_Image class supports caching and drawing of full-color images with 1 to 4 channels of colo...
Definition Fl_Image.H:339
This widget produces an actual window.
Definition Fl_Window.H:55
void free_icons()
Deletes all icons previously attached to the window.
Definition Fl_Window.cxx:400
int decorated_w() const
Returns the window width including any frame added by the window manager.
Definition Fl_Window.cxx:469
int force_position() const
Returns the internal state of the window's FORCE_POSITION flag.
Definition Fl_Window.H:124
void icons(const Fl_RGB_Image *[], int)
Sets the window icons.
Definition Fl_Window.cxx:377
int screen_num()
The number of the screen containing the mapped window.
Definition Fl_Window.cxx:846
static bool is_a_rescale()
Returns true when a window is being rescaled.
Definition Fl_Window.cxx:915
virtual void flush()
Forces the window to be drawn, this window is also made current and calls draw().
Definition Fl_Window.cxx:481
void iconize()
Iconifies the window.
Definition Fl_Window_iconize.cxx:20
const void * icon() const
Gets the current icon window target dependent data.
Definition Fl_Window.cxx:384
void make_current()
Sets things up so that the drawing functions in <FL/fl_draw.H> will go into this window.
Definition Fl_Window.cxx:533
void border(int b)
Sets whether or not the window manager border is around the window.
Definition Fl_Window_fullscreen.cxx:20
virtual class Fl_Overlay_Window * as_overlay_window()
Return non-null if this is an Fl_Overlay_Window object.
Definition Fl_Window.H:589
int is_resizable()
Protected method to determine whether a window is resizable.
Definition Fl_Window.cxx:837
void draw() FL_OVERRIDE
Draws the widget.
Definition Fl_Window.cxx:491
static char show_next_window_iconic()
Returns the static flag whether the next window should be opened iconified.
Definition Fl_Window.H:623
void maximize()
Maximizes a top-level window to its current screen.
Definition Fl_Window.cxx:933
void hide() FL_OVERRIDE
Removes the window from the screen.
Definition Fl_Window.cxx:563
const Fl_Image * shape()
Returns the image controlling the window shape or NULL.
Definition Fl_Window.cxx:912
unsigned int border() const
Returns whether the window possesses a border.
Definition Fl_Window.H:221
int shown()
Returns non-zero if show() has been called (but not hide() ).
Definition Fl_Window.H:418
void size_range(int minw, int minh, int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0)
Sets the allowable range the user can resize this window to.
Definition Fl_Window.cxx:665
void show() FL_OVERRIDE
Puts the window on the screen.
Definition Fl_Window.cxx:545
void wait_for_expose()
Waits for the window to be displayed after calling show().
Definition Fl_Window.cxx:464
fl_uintptr_t os_id()
Returns a platform-specific identification of a shown window, or 0 if not shown.
Definition Fl_Window.cxx:924
void fullscreen_off()
Turns off any side effects of fullscreen()
Definition Fl_Window_fullscreen.cxx:59
void resize(int X, int Y, int W, int H) FL_OVERRIDE
Changes the size and position of the window.
Definition Fl_Window.cxx:559
int decorated_h() const
Returns the window height including any window title bar and any frame added by the window manager.
Definition Fl_Window.cxx:475
const char * label() const
See void Fl_Window::label(const char*)
Definition Fl_Window.H:351
static Fl_Window * current()
Returns the last window that was made current.
Definition Fl_Window.cxx:184
void un_maximize()
Returns a previously maximized top-level window to its previous size.
Definition Fl_Window.cxx:944