diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2016-02-19 21:41:02 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2016-02-19 21:41:02 +0000 |
| commit | 22d302e242f9307bc1d24cb2b78f95e7a4fcf7ab (patch) | |
| tree | f79d4b1cb998ef6ef476c66de7bd46279f40f014 /src/drivers/WinAPI | |
| parent | 2b6482263b029b690abc972af765c3218572dcd4 (diff) | |
Add System Driver and Window Driver.
Adding two new driver types for each platform. Fl_..._System_Drivers exist once per application and provide an interface for to file and filename handling, timers, locking, multithreading, etc. .
The Fl_..._Window_Driver class is instantiated once for every window in the system and corresponds closely to (and actually inherits from) Fl_X. The difference now is, that there is one Fl_X/Fl_Window_Driver base class, and one platform version that derives from it.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11193 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/drivers/WinAPI')
| -rw-r--r-- | src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx | 26 | ||||
| -rw-r--r-- | src/drivers/WinAPI/Fl_WinAPI_System_Driver.h | 50 | ||||
| -rw-r--r-- | src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx | 26 | ||||
| -rw-r--r-- | src/drivers/WinAPI/Fl_WinAPI_Window_Driver.h | 56 |
4 files changed, 158 insertions, 0 deletions
diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx new file mode 100644 index 000000000..301edbf2a --- /dev/null +++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx @@ -0,0 +1,26 @@ +// +// "$Id$" +// +// Definition of Apple Darwin system driver. +// +// Copyright 1998-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 +// + + +#include "../../config_lib.h" +#include "Fl_WinAPI_System_Driver.h" + + +// +// End of "$Id$". +// diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.h b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.h new file mode 100644 index 000000000..379d74160 --- /dev/null +++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.h @@ -0,0 +1,50 @@ +// +// "$Id: quartz.H 11017 2016-01-20 21:40:12Z matt $" +// +// Definition of MSWindows system driver +// 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_WinAPI_System_Driver.h + \brief Definition of MSWindows system driver. + */ + +#ifndef FL_WINAPI_SYSTEM_DRIVER_H +#define FL_WINAPI_SYSTEM_DRIVER_H + +#include <FL/Fl_System_Driver.H> + +/* + Move everything here that manages the system interface. + + There is excatly one system driver. + + - filename and pathname management + - directory and file access + - system time and system timer + - multithreading + */ + +class Fl_WinAPI_System_Driver : public Fl_System_Driver +{ +public: +}; + +#endif // FL_WINAPI_SYSTEM_DRIVER_H + +// +// End of "$Id: quartz.H 11017 2016-01-20 21:40:12Z matt $". +// diff --git a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx new file mode 100644 index 000000000..f9897619a --- /dev/null +++ b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx @@ -0,0 +1,26 @@ +// +// "$Id$" +// +// Definition of Apple Cocoa window driver. +// +// Copyright 1998-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 +// + + +#include "../../config_lib.h" +#include "Fl_WinAPI_Window_Driver.h" + + +// +// End of "$Id$". +// diff --git a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.h b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.h new file mode 100644 index 000000000..df4f6b7ef --- /dev/null +++ b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.h @@ -0,0 +1,56 @@ +// +// "$Id: quartz.H 11017 2016-01-20 21:40:12Z matt $" +// +// Definition of Apple Cocoa window driver +// 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_WinAPI_Window_Driver.h + \brief Definition of MSWindows window driver. + */ + +#ifndef FL_WINAPI_WINDOW_DRIVER_H +#define FL_WINAPI_WINDOW_DRIVER_H + +#include <FL/x.H> + +/* + Move everything here that manages the native window interface. + + There is one window driver for each Fl_Window. Window drivers manage window + actions such as resizing, events, decoration, fullscreen modes, etc. . All + drawing and rendering is managed by the Surface device and the associated + graphics driver. + + - window specific event handling + - window types and styles, depth, etc. + - decorations + + ? where do we handle the interface between OpenGL/DirectX and Cocoa/WIN32/Glx? + */ + +class FL_EXPORT Fl_WinAPI_Window_Driver : public Fl_X +{ +public: +}; + + + +#endif // FL_WINAPI_WINDOW_DRIVER_H + +// +// End of "$Id: quartz.H 11017 2016-01-20 21:40:12Z matt $". +// |
