summaryrefslogtreecommitdiff
path: root/FL
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2016-03-27 06:58:54 +0000
committerManolo Gouy <Manolo>2016-03-27 06:58:54 +0000
commit5f14fc3e9b81d082966665209c4246cbdfee0005 (patch)
treefc67bdd993d6e88dccf8200e096d2b1bb09d5bc5 /FL
parentc7b1591486bf03becbf7414b2d9cac908bd7ee3c (diff)
Rewrite Fl_Overlay_Window class under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11440 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'FL')
-rw-r--r--FL/Fl_Overlay_Window.H4
-rw-r--r--FL/Fl_Window_Driver.H11
2 files changed, 12 insertions, 3 deletions
diff --git a/FL/Fl_Overlay_Window.H b/FL/Fl_Overlay_Window.H
index d303cf59d..4d600a47f 100644
--- a/FL/Fl_Overlay_Window.H
+++ b/FL/Fl_Overlay_Window.H
@@ -38,9 +38,7 @@
class FL_EXPORT Fl_Overlay_Window : public Fl_Double_Window {
#ifndef FL_DOXYGEN
friend class _Fl_Overlay;
- friend class Fl_X11_Window_Driver;
- friend class Fl_Cocoa_Window_Driver;
- friend class Fl_WinAPI_Window_Driver;
+ friend class Fl_Window_Driver;
#endif
public:
/**
diff --git a/FL/Fl_Window_Driver.H b/FL/Fl_Window_Driver.H
index b3d0baaff..02c4679b2 100644
--- a/FL/Fl_Window_Driver.H
+++ b/FL/Fl_Window_Driver.H
@@ -26,6 +26,7 @@
#include <FL/Fl_Export.H>
#include <FL/Fl_Window.H>
+#include <FL/Fl_Overlay_Window.H>
#include <stdlib.h>
@@ -71,6 +72,14 @@ public:
int shown() const { return pWindow->shown(); }
/** returns the parent of the window. */
Fl_Group *parent() const { return pWindow->parent(); }
+ /** for an Fl_Overlay_Window, returns the value of its overlay_ member variable */
+ Fl_Window *overlay() {
+ return pWindow->as_overlay_window() ? pWindow->as_overlay_window()->overlay_ : NULL;
+ }
+ /** for an Fl_Overlay_Window, sets the value of its overlay_ member variable */
+ void overlay(Fl_Window *o) {
+ if (pWindow->as_overlay_window()) pWindow->as_overlay_window()->overlay_ = o;
+ }
// --- accessors to private window data
int minw();
@@ -120,6 +129,8 @@ public:
*top = *left = *right = *bottom = 0; }
virtual void show_with_args_begin() {}
virtual void show_with_args_end(int argc, char **argv) {}
+ virtual int can_do_overlay();
+ virtual void redraw_overlay();
// --- window shape stuff
void shape_pixmap_(Fl_Image* pixmap); // TODO: check