summaryrefslogtreecommitdiff
path: root/FL
diff options
context:
space:
mode:
Diffstat (limited to 'FL')
-rw-r--r--FL/Fl_Device.H2
-rw-r--r--FL/Fl_Screen_Driver.H1
-rw-r--r--FL/Fl_System_Driver.H44
-rw-r--r--FL/Fl_Window_Driver.H44
-rw-r--r--FL/mac.H4
-rw-r--r--FL/win32.H3
-rw-r--r--FL/x.H3
7 files changed, 97 insertions, 4 deletions
diff --git a/FL/Fl_Device.H b/FL/Fl_Device.H
index 69b7f5d03..0cf436f20 100644
--- a/FL/Fl_Device.H
+++ b/FL/Fl_Device.H
@@ -25,13 +25,13 @@
#ifndef Fl_Device_H
#define Fl_Device_H
-#include <FL/x.H>
#include <FL/Fl_Plugin.H>
#include <stdlib.h>
class Fl_Graphics_Driver;
class Fl_Font_Descriptor;
class Fl_RGB_Image;
+class Fl_Widget;
/**
All graphical output devices and all graphics systems.
diff --git a/FL/Fl_Screen_Driver.H b/FL/Fl_Screen_Driver.H
index e9b7a65a1..c7bc00497 100644
--- a/FL/Fl_Screen_Driver.H
+++ b/FL/Fl_Screen_Driver.H
@@ -20,6 +20,7 @@
#define FL_SCREEN_DRIVER_H
#include <FL/Fl_Device.H>
+#include <FL/x.H>
// TODO: add text composition?
// TODO: add Fl::display
diff --git a/FL/Fl_System_Driver.H b/FL/Fl_System_Driver.H
new file mode 100644
index 000000000..e0dfb2ba2
--- /dev/null
+++ b/FL/Fl_System_Driver.H
@@ -0,0 +1,44 @@
+//
+// "$Id$"
+//
+// A base class for platform specific system calls
+// for the Fast Light Tool Kit (FLTK).
+//
+// Copyright 2010-2016 by Bill Spitzak and others.
+//
+// This library is free software. Distribution and use rights are outlined in
+// the file "COPYING" which should have been included with this file. If this
+// file is missing or damaged, see the license at:
+//
+// http://www.fltk.org/COPYING.php
+//
+// Please report all bugs and problems on the following page:
+//
+// http://www.fltk.org/str.php
+//
+
+/** \file Fl_System_Driver.H
+ \brief declaration of classe Fl_System_Driver.
+*/
+
+#ifndef FL_SYSTEM_DRIVER_H
+#define FL_SYSTEM_DRIVER_H
+
+#include <FL/Fl_Device.H>
+
+
+/**
+ \brief A base class for platform specific window handling code.
+ */
+class FL_EXPORT Fl_System_Driver : public Fl_Device {
+public:
+ Fl_System_Driver();
+ virtual ~Fl_System_Driver();
+};
+
+
+#endif // FL_SYSTEM_DRIVER_H
+
+//
+// End of "$Id$".
+//
diff --git a/FL/Fl_Window_Driver.H b/FL/Fl_Window_Driver.H
new file mode 100644
index 000000000..6b2e0ad89
--- /dev/null
+++ b/FL/Fl_Window_Driver.H
@@ -0,0 +1,44 @@
+//
+// "$Id$"
+//
+// A base class for platform specific window handling code
+// for the Fast Light Tool Kit (FLTK).
+//
+// Copyright 2010-2016 by Bill Spitzak and others.
+//
+// This library is free software. Distribution and use rights are outlined in
+// the file "COPYING" which should have been included with this file. If this
+// file is missing or damaged, see the license at:
+//
+// http://www.fltk.org/COPYING.php
+//
+// Please report all bugs and problems on the following page:
+//
+// http://www.fltk.org/str.php
+//
+
+/** \file Fl_Window_Driver.H
+ \brief declaration of classe Fl_Window_Driver.
+*/
+
+#ifndef FL_WINDOW_DRIVER_H
+#define FL_WINDOW_DRIVER_H
+
+#include <FL/x.H>
+
+
+/**
+ \brief A base class for platform specific window handling code.
+ */
+class FL_EXPORT Fl_Window_Driver : public Fl_X {
+public:
+ Fl_Window_Driver();
+ virtual ~Fl_Window_Driver();
+};
+
+
+#endif // FL_WINDOW_DRIVER_H
+
+//
+// End of "$Id$".
+//
diff --git a/FL/mac.H b/FL/mac.H
index 5f2a5f5b6..f5b3a0c2a 100644
--- a/FL/mac.H
+++ b/FL/mac.H
@@ -32,6 +32,8 @@ typedef FLWindow *Window;
typedef class FLWindow *Window; // pointer to the FLWindow objective-c class
#endif // __OBJC__
+#include <FL/Fl_Device.H>
+
#if !(defined(FL_LIBRARY) || defined(FL_INTERNALS)) // this part is used when compiling an application program
# include <FL/Fl_Widget.H>
@@ -137,7 +139,7 @@ extern NSCursor *fl_default_cursor;
// This object contains all mac-specific stuff about a window:
// WARNING: this object is highly subject to change!
-class Fl_X {
+class Fl_X : public Fl_Device {
public:
Window xid; // pointer to the Cocoa window object (FLWindow*)
Fl_Offscreen other_xid; // pointer for offscreen bitmaps (overlay window)
diff --git a/FL/win32.H b/FL/win32.H
index a71ef97fa..23f239cf3 100644
--- a/FL/win32.H
+++ b/FL/win32.H
@@ -30,6 +30,7 @@ typedef HRGN Fl_Region;
typedef HWND Window;
typedef POINT XPoint;
+#include <FL/Fl_Device.H>
#include <FL/Fl_Window.H>
// this part is included only when compiling the FLTK library or if requested explicitly
@@ -62,7 +63,7 @@ inline void XClipBox(Fl_Region r,XRectangle* rect) {
// this object contains all win32-specific stuff about a window:
// Warning: this object is highly subject to change!
-class FL_EXPORT Fl_X {
+class FL_EXPORT Fl_X : public Fl_Device {
public:
// member variables - add new variables only at the end of this block
Window xid;
diff --git a/FL/x.H b/FL/x.H
index 4e53adaa3..46d276952 100644
--- a/FL/x.H
+++ b/FL/x.H
@@ -25,6 +25,7 @@
# define Fl_X_H
# include "Enumerations.H"
+# include <FL/Fl_Device.H>
# ifdef WIN32
# include "win32.H"
@@ -132,7 +133,7 @@ extern FL_EXPORT XFontStruct* fl_X_core_font();
// this object contains all X-specific stuff about a window:
// Warning: this object is highly subject to change!
// FL_LIBRARY or FL_INTERNALS must be defined to access this class.
-class FL_EXPORT Fl_X {
+class FL_EXPORT Fl_X : public Fl_Device {
public:
Window xid;
Window other_xid;