Note: these declarations must be in an (official) public header.
FL/Fl_System_Driver.H should not be included in user space.
Maybe move FL/Fl_System_Driver.H to src/drivers ?
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11427 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
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
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
This removes a bunch of
friend class Fl_XXX_Window_Driver;
declarations from Fl_Window.H, and therefore allows
to add a new window driver without modifying the platform-independent code.
The Fl_PicoXXX_Window_Driver classes have been modified but not tested ==> test needed.
File Fl_X11_Window_Driver.cxx contained this:
// DO NOT call this if the window is not mapped!
static int can_xdbe()
{ ... }
The new code does call can_xdbe() before any window is mapped,
and does work. Since can_xdbe() asks the X server whether it supports
the Xdbe extension, I don't see why this should not work without a
mapped window. This point should be clarified by the author of
"DO NOT call this if the window is not mapped!".
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11388 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
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
Modifier key names like Alt, Shift, Ctrl, Meta can now be localized by
setting global string pointers. See documentation of fl_shortcut_label().
Port branch-1.3, svn r 11321.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11354 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Next step will involve moving code to new, platform-specific files.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11350 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Don't get your hopes up just yet: this code does compile, but it doesn't fully link yet. If you like to test this, install the Android SDK and NDK, set the usual environment variables, then change into the "Android" direktory and run "mk". It will currently fail at the linker stage.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11343 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
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
This was needed because Fl_X only exists if a window is mapped, but we need the driver from the very beginning. Adding Fl_X in the ctor would create hidden bugs. Strategy is now to remove system specific stuff from Fl_X and move it one-by-one to Fl_Window_Driver while maintaining a working code base. X11 and WIN32 fixups will follow in 15 minutes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11308 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Fixed some issues with Image_Surface and Copy_Surface for PicoSDL. Still have to virtualize the driver concept.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11307 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
It is necessary to have a stack of the fl_begin_offscreen() calls, so that nested
such calls apply fl_end_offscreen() to the matching fl_begin_offscreen().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11289 ea41ed52-d2ee-0310-a9c1-e6b18d33e121