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(); }
96 int fullscreen_screen_top();
97 int fullscreen_screen_bottom();
98 int fullscreen_screen_left();
99 int fullscreen_screen_right();
100 int* no_fullscreen_x() {
return &pWindow->no_fullscreen_x; }
101 int* no_fullscreen_y() {
return &pWindow->no_fullscreen_y; }
102 int* no_fullscreen_w() {
return &pWindow->no_fullscreen_w; }
103 int* no_fullscreen_h() {
return &pWindow->no_fullscreen_h; }
111 void flx(Fl_X *
x) { pWindow->flx_ =
x; }
112 Fl_Cursor cursor_default() {
return pWindow->cursor_default; }
113 void destroy_double_buffer();
123 void resize_after_scale_change(
int ns,
float old_f,
float new_f);
134 virtual void flush();
135 virtual void flush_double();
136 virtual void flush_overlay();
138 virtual void draw_begin();
140 virtual void draw_end();
143 virtual void label(
const char *name,
const char *mininame);
145 virtual void makeWindow() {}
148 virtual void resize(
int ,
int ,
int ,
int ) {}
149 virtual void hide() {}
151 virtual void map() {}
152 virtual void unmap() {}
153 virtual void fullscreen_on() {}
158 virtual bool maximize_needs_hide() {
return false; }
159 void is_maximized(
bool b) { pWindow->is_maximized_(b); }
160 virtual void use_border();
163 virtual void decoration_sizes(
int *top,
int *left,
int *right,
int *bottom) {
164 *top = *left = *right = *bottom = 0;
166 virtual void show_with_args_begin() {}
167 virtual void show_with_args_end(
int ,
char ** ) {}
168 virtual int can_do_overlay();
169 virtual void redraw_overlay();
176 void shape_pixmap_(
Fl_Image* pixmap);
178 virtual void shape_alpha_(
Fl_Image*,
int ) {}
182 virtual const void *
icon()
const {
return NULL;}
183 virtual void icon(
const void *) {}
189 virtual int scroll(
int ,
int ,
int ,
int ,
191 void (*)(
void*,
int,
int,
int,
int),
void*) {
return 0; }
192 static inline Fl_Window_Driver* driver(
const Fl_Window *win) {
return win->pWindowDriver;}
198 virtual void reposition_menu_window(
int x,
int y);
199 virtual void menu_window_area(
int &X,
int &Y,
int &W,
int &H,
int nscreen = -1);
200 static Fl_Window *menu_parent(
int *display_height = NULL);
207 static bool is_floating_title(
Fl_Window *);
208 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:1281
The Fl_Group class is the main 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:129
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:895
void allow_expand_outside_parent()
Allow this subwindow to expand outside the area of its parent window.
Definition Fl_Window.cxx:1044
static bool is_a_rescale()
Returns true when a window is being rescaled.
Definition Fl_Window.cxx:986
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 fullscreen_screens(int top, int bottom, int left, int right)
Sets which screens should be used when this window is in fullscreen mode.
Definition Fl_Window_fullscreen.cxx:72
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:534
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:602
int is_resizable()
Protected method to determine whether a window is resizable.
Definition Fl_Window.cxx:870
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:636
void maximize()
Maximizes a top-level window to its current screen.
Definition Fl_Window.cxx:1013
void hide() FL_OVERRIDE
Removes the window from the screen.
Definition Fl_Window.cxx:564
const Fl_Image * shape()
Returns the image controlling the window shape or NULL.
Definition Fl_Window.cxx:980
unsigned int border() const
Returns whether the window possesses a border.
Definition Fl_Window.H:232
int shown()
Returns non-zero if show() has been called (but not hide() ).
Definition Fl_Window.H:431
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 to which the user can resize this window.
Definition Fl_Window.cxx:667
void show() FL_OVERRIDE
Puts the window on the screen.
Definition Fl_Window.cxx:546
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:1000
void fullscreen_off()
Turns off any side effects of fullscreen()
Definition Fl_Window_fullscreen.cxx:63
void resize(int X, int Y, int W, int H) FL_OVERRIDE
Changes the size and position of the window.
Definition Fl_Window.cxx:560
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:364
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:1026