Commit Graph

6993 Commits

Author SHA1 Message Date
Manolo Gouy
2fd4dde9f5 Rewrite Fl_Menu_Window class under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11441 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-27 07:47:52 +00:00
Manolo Gouy
5f14fc3e9b 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
2016-03-27 06:58:54 +00:00
Manolo Gouy
c7b1591486 Remove a few uses of the fl_graphics_driver global variable
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11439 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 23:06:08 +00:00
Manolo Gouy
120dc8fa95 Remove commented out code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11438 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 22:31:20 +00:00
Manolo Gouy
4d52fc463f Replace the last bit of platform-dependent code in src/Fl.cxx by equivalent code.
The replacement code does the same thing because driver is never NULL
and the ewmh_supported() test is made inside Fl_X11_Window_Driver::take_focus().

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11437 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 22:22:46 +00:00
Manolo Gouy
6d8ca8eeb6 Move all content of the header after the anti-repetition guard.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11436 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 18:36:44 +00:00
Manolo Gouy
24fd68560f Public header files must not include files from the source tree.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11435 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 18:03:10 +00:00
Manolo Gouy
e31adcf1b9 Add necessary #include <FL/x.H> directive
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11434 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 17:54:34 +00:00
Manolo Gouy
ba239c1ea1 Remove #include <FL/x.H> from all public include file (there remained one).
This way, application programs will not have to include system headers.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11433 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 17:49:54 +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
Albrecht Schlosser
e86e4a6ab0 [CMake] Fix library name (Debug mode), add fluid dependencies.
The library name in Debug mode must only be 'libname'd.a if the build
is with MSVC; all other builds never appended the 'd' suffix to the name.
This is also documented (see lib/README).

Fluid did not regenerate the .cxx and .h files if the .fl file was changed.
The DEPENDS keyword adds the necessary dependency.
The MAIN_DEPENDENCY keyword "also suggests to Visual Studio generators
where to hang the custom command" according to CMake docs.

Ported from branch-1.3, svn r11430.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11431 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 14:33:20 +00:00
Manolo Gouy
ff0ec68023 Add necessary #include directive under Mac OS.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11429 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 11:38:38 +00:00
Albrecht Schlosser
29a9e89b39 Remove FLTK_ABI_VERSION from all but *tree*.* and documentation.
Everything related to Fl_Tree and its test and demo programs has been
cleaned.

Documentation needs updates.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11428 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 02:55:14 +00:00
Albrecht Schlosser
de9dc764f1 Move fl_local_* decl. and short docs back to FL/Fl.H.
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
2016-03-26 01:39:22 +00:00
Albrecht Schlosser
9de6339d81 Fix compiler warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11426 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26 01:34:10 +00:00
Matthias Melcher
259df57b81 Added current error messages of Android build as a reference.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11425 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25 23:16:33 +00:00
Matthias Melcher
6955d5d082 Completed the vector font.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11424 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25 23:10:15 +00:00
Manolo Gouy
01e991840c Remove a bunch of useless #include <FL/x.H> directives.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11422 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25 16:06:00 +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
2530120d7d Rewrite Fl::handle_(int e, Fl_Window* window) and Fl_Widget::damage() to remove their platform dependent parts
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11419 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24 22:26:13 +00:00
Manolo Gouy
f432c17112 Move platform-dependent stuff away from src/Fl.cxx
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11418 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24 06:25:18 +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
Manolo Gouy
6e141d14df Fix the "bizarre makefile build error" due to double declarations of fl_clip_region(Fl_Region).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11416 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24 05:59:35 +00:00
Manolo Gouy
2543075ea0 Fix bizarre makefile build error on Mac OS platform.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11415 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24 05:48:14 +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
abc12cd376 Rewrite Fl_Window::show(int argc, char **argv) under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11413 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 20:42:13 +00:00
Manolo Gouy
d3b33cdaea Rewrite Fl_Window::hotspot(int X, int Y, int offscreen) under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11412 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 20:16:23 +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
6608db0b0c Rewrite Fl_Window::border(int) under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11409 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 16:14:35 +00:00
Manolo Gouy
c2eb9d730f Rewrite Fl_Window::offscreen_x() under the driver model - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11408 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 14:39:02 +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
Albrecht Schlosser
979740ce91 Enable definition of Unicode conv. options on compiler command line.
Three documented pre-processor variables can now be defined on the
compiler command line to avoid editing the FLTK src code. The default
values still apply unchanged.

Port of branch-1.3, svn r11404.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11406 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 14:02:25 +00:00
Albrecht Schlosser
8d89d760fa Fix Linux build: one include file and missing #include <config.h>.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11405 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 13:56:46 +00:00
Manolo Gouy
a114e3ab4d Rewrite Fl_Window::handle(int) under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11403 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 13:13:00 +00:00
Manolo Gouy
270b437500 Rewrite Fl_Window::hide() under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11402 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 07:08:17 +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
b8e6c430e8 Make sure can_xdbe() from Fl_X11_Window_Driver.cxx is called after fl_open_display().
This ensures fluid does not open the display when run with -c

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11398 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-22 09:35:51 +00:00
Albrecht Schlosser
92d3e1e03a Update minimum required CMake version from 2.6 to 2.6.3.
Verified build with CMake 2.6.3 (failed with 2.6.2).

We need 2.6.3 for "unset" (unknown command in 2.6.2 and earlier).

CMake 2.6.2 also fails when parsing nested brackets in logical
expressions like the following one:

  if((NOT APPLE OR OPTION_APPLE_X11) AND NOT WIN32)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11397 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-22 00:23:25 +00:00
Albrecht Schlosser
80c853b426 Fix some, but not all doxygen warnings.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11395 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-21 22:51:23 +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
ec0b695709 Improve the implementation of Fl_X11_Window_Driver::flush_double() and flush_overlay().
The with/without Xdbe codes are well separated, and code repetition is avoided
by the introduction of Fl_X??_Window_Driver::flush_double(int).

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11392 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-21 13:59:24 +00:00
Manolo Gouy
e4c90deee8 Fix Fl_Xdbe_Window_Driver::destroy_double_buffer() for an Fl_Overlay_Window.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-20 19:20:30 +00:00
Manolo Gouy
02edfc29b7 More accurate #include directive.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11389 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-20 15:04:41 +00:00
Manolo Gouy
4baca53944 Continue implementation of class Fl_Window_Driver according to Albrecht's plan.
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
2016-03-20 08:44:30 +00:00
Manolo Gouy
51030530f2 Advancing Albrecht's plan for the Fl_Window_Driver class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11387 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-19 23:04:28 +00:00