Manolo Gouy
1e8a53ecc4
Move private_dc from Fl_X for WIN32 platform to Fl_WinAPI_Window_Driver.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11664 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 19:37:49 +00:00
Manolo Gouy
4aa388d4ff
Add static Fl_XXX_Window_Driver *driver(Fl_Window*) to get the platform-specific driver of a window.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11663 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 17:34:15 +00:00
Manolo Gouy
24487a719f
Move Fl_X::make_fullscreen() for WIN32 platform to Fl_WinAPI_Window_Driver:: make_fullscreen().
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11660 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 15:47:23 +00:00
Manolo Gouy
1e060f6408
Transform Fl_X::make(Fl_Window*) for WIN32 platform into virtual Fl_X* Fl_Window_Driver::makeWindow().
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11659 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 15:33:58 +00:00
Manolo Gouy
c0f14ca2f0
Move other_xid member variable from class Fl_X to class F_Window_Driver.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11654 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18 17:02:44 +00:00
Manolo Gouy
e790ac9653
Move wait_for_expose member variable from class Fl_X to class Fl_Window_Driver.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11653 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18 16:11:15 +00:00
Manolo Gouy
0629b40afd
Move set_cursor() member functions from class Fl_X to classes Fl_Window_Driver and derived.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18 14:31:07 +00:00
Manolo Gouy
cb95d40067
Remove Fl_X::setwindow(Fl_Window*) from WIN32 and USE_X11 Fl_X classes.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11649 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18 12:48:40 +00:00
Manolo Gouy
85b5f02a8b
Replace member function void Fl_X::flush() by virtual void Fl_Window_Driver::flush()
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11646 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18 11:58:46 +00:00
Matthias Melcher
e2495a760a
MSWindows fixes for previous commits.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11644 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 17:45:44 +00:00
Matthias Melcher
cc57af841a
virtualizes fl_set_spot and fl_reset_spot
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11640 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 14:22:02 +00:00
Manolo Gouy
c6c92e4037
Remove set_icons() from the virtual API of class Fl_Window_Driver because it is internal to some drivers.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11636 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 05:41:05 +00:00
Manolo Gouy
c4953935b0
Continue removing non window-related member-functions from class Fl_X.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11633 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-16 13:15:49 +00:00
Manolo Gouy
b0ce80f56b
Continue removing non window-related member-functions from class Fl_X.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11632 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-16 12:28:50 +00:00
Manolo Gouy
2fcb4f4192
Move platform-dependent implementations of fl_open/close_display() to the Fl_Screen_Driver class
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11619 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 15:36:10 +00:00
Manolo Gouy
15715cd898
Move platform-dependent implementations of Fl::en/dis/able_im() to the Fl_Screen_Driver class
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11618 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 15:12:22 +00:00
Manolo Gouy
397a3b83bf
Move platform-dependent implementations of fl_clipboard_notify_changes() to the Fl_System_Driver class
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11617 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 15:01:27 +00:00
Manolo Gouy
b1f8f3e2aa
Move platform-dependent implementations of Fl::clipboard_contains() to the Fl_System_Driver class
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 14:49:46 +00:00
Manolo Gouy
d683841f9f
Move the platform-dependent implementations of Fl::paste() to the Fl_System_Driver class.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11615 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 14:32:13 +00:00
Manolo Gouy
7508a033c5
Continue moving to Fl_System_Driver the platform_dependent implementations of member functions of the Fl class.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11614 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 14:18:37 +00:00
Albrecht Schlosser
aafd8b6031
Fix VisualC++ build (Visual Studio 2015).
...
IDE generated with CMake, still many warnings, but compiles and runs.
Note: we *must* get rid of all VisualStudio-specific #define's like:
#define unlink _unlink
This one led to a compilation error (not a warning).
src/Fl_File_Icon.cxx: I had to add _MSC_VER (WIN32) distinction as in
previous code (FLTK 1.3). Obviously MinGW is more Unixy than MS VC++
since MinGW compiled and linked the code. Needs a better fix ...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11580 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-11 00:46:11 +00:00
Manolo Gouy
6879d54fc4
Rewrite Fl_lock.cxx under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11578 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-10 20:38:04 +00:00
Albrecht Schlosser
020a96b4a8
Fix more compiler warnings.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11536 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-05 21:15:45 +00:00
Manolo Gouy
b3af5591ca
Stop using fl_read_image() to read window decoration.
...
Use instead an API internal to each platform code base.
fl_read_image() is used only for its documented feature
of reading inside the current window or an offscreen buffer.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11518 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-03 08:36:19 +00:00
Manolo Gouy
d011d5b4f0
Replace src/Fl_Font.H by one file for each platform.
...
This file contained nearly only platform-specific code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11507 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 13:22:48 +00:00
Manolo Gouy
d67f395031
Rewrite functions XRectangleRegion(), XDestroyRegion() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11479 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-30 20:16:40 +00:00
Manolo Gouy
4fcefc68f8
Remove the platform-dependent type xchar
...
File fl_utf8.h defines the xchar type with a platform-dependent value (wchar_t or unsigned short).
But it is used exclusively by WIN32 code (0 use in cross-platform code, 0 use in APPLE
or in USE_X11 code).
Thus, we can just get rid of this type and replace it by wchar_t where it is used.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11459 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-29 09:29:51 +00:00
Manolo Gouy
915d6c643a
Isolate the definition of the 3 public, OS-dependent types (Fl_Offscreen, Fl_Region, Fl_Bitmask).
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11432 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 14:36:11 +00:00
Manolo Gouy
8e14321df4
Remove duplicate #include directive
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11421 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25 15:39:51 +00:00
Manolo Gouy
a69133d317
Separating platform-dependent from platform-independent code: make src/Fl.cxx cross-platform.
...
File src/Fl_win32.cxx is now compiled instead of included in Fl.cxx.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11420 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25 13:08:48 +00:00
Manolo Gouy
1778ee8831
Fix the implementation of Fl_Window::default_icons(const Fl_RGB_Image *icons[], int count) under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11417 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24 06:19:10 +00:00
Albrecht Schlosser
4a31fd7aed
Provide Fl_Window_Driver accessor methods for public Fl_Window attributes.
...
These methods are intended to be used instead of pWindow->method()
for better code readability and easier porting of methods from
Fl_Window to Fl_Window_Driver.
New methods: x(), y(), y(), h(), shown(), parent(), border(),
visible(), and visible_r().
We should add more such methods if appropriate.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11414 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24 01:20:08 +00:00
Manolo Gouy
fdaad858ba
Rewrite Fl_Window::iconize() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11411 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 18:00:37 +00:00
Manolo Gouy
e3ee1e7b81
Rewrite Fl_Window::size_range_() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11410 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 17:13:09 +00:00
Manolo Gouy
affdcdb525
Rewrite Fl_Window::fullscreen_x() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11407 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 14:36:58 +00:00
Manolo Gouy
bf7e4de688
Rewrite Fl_Window::resize() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11401 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-22 21:21:08 +00:00
Manolo Gouy
6ec8ebc4f8
Rewrite Fl_Window::show() and Fl_Menu_Window::show() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11400 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-22 17:47:44 +00:00
Manolo Gouy
6302b3da00
Move all icon-support data to the platform-specific Fl_XXX_Window_Driver class
...
because these data are platform-specific.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11399 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-22 13:27:22 +00:00
Manolo Gouy
3f34aba828
Rewrite Fl_Window::label(const char *name, const char *mininame) under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11394 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-21 17:55:10 +00:00
Manolo Gouy
9ba3889ae5
Implement Fl_Window::make_current() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11393 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-21 17:06:03 +00:00
Manolo Gouy
fa9a33eaee
Beginning of Albrecht's plan for Fl_Window and Fl_Window_Driver classes.
...
Still unclear whether the implementation of the flush() functions follows the plan.
The Fl_Printer class is fully rewritten under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11364 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-18 18:20:11 +00:00
Matthias Melcher
b496d18b85
Fixed 'flush()' code for single, double, and overlay buffering
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11359 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-13 22:16:37 +00:00
Matthias Melcher
e6631a0f7f
Moved the Fl_Window::decorated_*() functions teh Window_Driver
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11356 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-12 22:24:20 +00:00
Manolo Gouy
2952c530b8
Rewrite capture of window decorations using the window driver approach.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11345 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-11 07:07:42 +00:00
Manolo Gouy
31fcd84ca9
Rewrite all window icon-related Fl_Window API with the window driver approach.
...
It seems this allows not to #include <windows.h> in the public header files.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11342 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-10 22:26:40 +00:00
Matthias Melcher
b73bf4a73e
Fixes for MSWindow
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11310 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-07 21:56:12 +00:00
Matthias Melcher
95824506fe
Moved timer code to screen drivers. Not sure if this should be in System Drivers instead.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11253 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 00:54:21 +00:00
Matthias Melcher
052401a34e
Instantiate the right Fl_Window_Driver.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11195 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 22:21:02 +00:00
Manolo Gouy
1b5e231c90
Rename Fl_Graphics_Driver::set_gc(void*) to gc(void*) and Fl_Graphics_Driver::get_gc() to gc().
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11191 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 12:40:24 +00:00
Manolo Gouy
f33b45f1d3
Remove all uses of the fl_gc global variable. Towards a clean driver model.
...
fl_gc remains usable by the application as a hook into the system.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11189 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-18 16:21:51 +00:00