Manolo Gouy
43935dffeb
Add static void Fl_Surface_Device::push_current(Fl_Surface_Device *new_current) and pop_current() to set/unset the current drawing surface.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12140 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-07 15:09:52 +00:00
Manolo Gouy
5bb4e853c7
Remove Fl_Image_Surface::end_current() to be called after usage of the drawing surface.
...
This ensures API compatibility with FLTK 1.3 where Fl_Surface_Device->set_current()
is used to change the current drawing surface.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12125 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-30 07:09:48 +00:00
Manolo Gouy
2baeda448b
Replace global fl_line_width_ used only by X11 platform by Fl_Xlib_Graphics_Driver::line_width_
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12114 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-16 19:56:22 +00:00
Manolo Gouy
3b7d9185ef
Remove compilation warning apparent with -Wnull-conversion
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12108 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-14 15:00:37 +00:00
Manolo Gouy
2fd5752b89
Fl_Quartz_Graphics_Driver::uncache() should also reset mask_.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12095 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-10 19:58:20 +00:00
Manolo Gouy
f08c414485
Reuse the same "data provider release callback" several times.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12087 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-09 07:00:16 +00:00
Manolo Gouy
a5b584f8f6
MacOS: use less temporary copies of image data for image printing.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12086 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-08 21:59:26 +00:00
Manolo Gouy
6eea76e187
Slightly improve the parameter list of member function int Fl_Graphics_Driver::start_image(...)
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12079 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-05 06:00:52 +00:00
Manolo Gouy
0c31411df9
Rename Fl_Bitmap::start() to Fl_Bitmap::prepare().
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12078 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-03 21:28:09 +00:00
Manolo Gouy
95a9edcb55
Factorize repeated code across platform-specific graphics drivers and image types
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12077 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-03 16:34:13 +00:00
Manolo Gouy
d3f1a3c167
Replace declarations such as "friend class Fl_Xlib_Graphics_Driver;" by platform-independent declarations.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12076 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-02 21:08:15 +00:00
Manolo Gouy
7a81273a0c
MacOS: finer control of the compilation conditions under which Core text and ATSU are used or not.
...
The compilation conditions depend on the targeted architecture, what version of the SDK is used,
and what MacOS deployment version is used. Under most conditions, a single API is possible,
and no pointer-to-member function is used.
But the code supports building apps that can run both APIs depending on the version of the
running MacOS.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12025 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-14 09:17:15 +00:00
Manolo Gouy
2b5fbbacfc
Add public: to definition of class Fl_Quartz_Printer_Graphics_Driver.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12024 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-11 07:17:04 +00:00
Manolo Gouy
04f1e4d1aa
Replace .h by .H in #include "Fl_Quartz_Graphics_Driver.h"
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12023 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-11 07:14:47 +00:00
Manolo Gouy
a6a79d80f3
Re-organisation of code to support CoreText and ATSU for drawing text.
...
We avoid using one CoreText-related and one ATSU-related derived classes
of class Fl_Quartz_Graphics_Driver. Thus, class Fl_Quartz_Graphics_Driver can
be derived if useful and still support both text APIs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12022 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-10 21:19:39 +00:00
Manolo Gouy
b20e646676
Correct function Fl_Quartz_Graphics_Driver::gc(void*) that did not update the global variable fl_gc correctly.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12016 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-06 16:59:37 +00:00
Manolo Gouy
04c20514f6
Replace a few global variables by members of the Fl_Quartz_Graphics_Driver class
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11985 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 16:57:37 +00:00
Manolo Gouy
606cdf1c60
These files are no longer useful.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11984 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 16:49:13 +00:00
Manolo Gouy
5b5ba880f5
MacOS platform: the printer's graphics driver should also call Fl_Graphics_Driver::newMainGraphicsDriver()
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11982 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 16:43:10 +00:00
Manolo Gouy
7698a4b98e
MacOS platform: centralize check whether a font has been set before drawing text
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11979 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 06:26:59 +00:00
Manolo Gouy
b3c16b4911
Mac OS platform: restore usability with SDK 10.3 and 10.4
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11973 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-24 06:21:37 +00:00
Manolo Gouy
0250c5a98a
Move font-related member functions from Fl_Screen_Driver to Fl_Graphics_Driver.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11968 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23 13:56:07 +00:00
Manolo Gouy
63e33b1be3
Fl_Quartz_Graphics_Driver: separate CoreText- and ATSU-based code using new, derived classes.
...
FLTK for the Mac OS platform draws text using 2 distinct system APIs depending on the
version of the running OS. Classes Fl_CoreText_Graphics_Driver and Fl_ATSU_Graphics_Driver are defined
and implement the same virtual functions of class Fl_Quartz_Graphics_Driver using
CoreText and ATSU, respectively. The app allocates an object of one of these derived
classes according to the running OS version.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11967 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23 07:47:57 +00:00
Manolo Gouy
0e33655853
Fl_Screen_Driver class: its platform dependent member functions should not be static.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11966 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-22 13:22:03 +00:00
Manolo Gouy
02535d1222
Rewrite Fl::set_fonts(), Fl::get_font_sizes(), Fl::get_font_name() under the driver model.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11965 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-22 07:44:34 +00:00
Manolo Gouy
cd7b6a8e87
Remove possible warnings when compiling with -Wundef
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11942 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-13 10:56:19 +00:00
Manolo Gouy
4180cf5360
Add missing delete statements in ~Fl_XXX_Copy_Surface_Driver() and ~Fl_XXX_Image_Surface_Driver().
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11891 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-08-24 08:53:29 +00:00
Manolo Gouy
9c8c062d6b
Use the HAS_ATSU preprocessor variable once more
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11883 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-08-22 16:14:39 +00:00
Manolo Gouy
cf751f49de
Set svn file properties.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11693 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-24 19:49:06 +00:00
Manolo Gouy
034cfc94a3
Move Fl_X::set_high_resolution() to classes Fl_Graphics_Driver and Fl_Quartz_Graphics_Driver
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11656 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 12:46:07 +00:00
Matthias Melcher
cdf85352c4
virtualized some Region calls.
...
There is a deeper issue here: regions should be handled by the graphics driver that is associated with the Fl_Window of this widget... .
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11643 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 15:36:23 +00:00
Matthias Melcher
c9d3eabf4e
virtualized Fl::set_color and free_color.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11642 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 15:01:20 +00:00
Matthias Melcher
9ae4a99081
virtualized Fl_Graphics_Driver::global_gc(), a function that should probably not exeist.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11641 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 14:45:25 +00:00
Manolo Gouy
156d2e4053
Continue removing from class Fl_X what is not window-related.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11612 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 11:09:10 +00:00
Manolo Gouy
a409f7c338
Fix Quartz-specific graphics problem apparent in tree demo.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11604 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-14 20:41:16 +00:00
Albrecht Schlosser
d56e2ec9f0
Fix typos.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11560 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-09 10:42:17 +00:00
Manolo Gouy
6b6c71265f
Complete removal of platform-dependent code from fl_set_font.cxx
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11512 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 15:37:03 +00:00
Manolo Gouy
09e0864f3e
Remove #include directive for Fl_Font.H from mac.H
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11510 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 13:53:41 +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
d0c8ff09f0
Make constant CoreText_threshold local to file Fl_Quartz_Graphcs_Driver_font.cxx
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11504 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 09:41:11 +00:00
Manolo Gouy
4d4b43a6bc
Move function Fl_X::calc_mac_os_version() to class Fl_Darwin_System_Driver
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11502 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 07:29:09 +00:00
Manolo Gouy
7b37960d95
Move intersect_region_and_rect() to the Quartz driver code where it belongs.
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11500 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 06:42:34 +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
244a1a5bc4
Remove src/drivers/Quartz/Fl_Quartz_Display_Device.{H,cxx}
...
These files contain no code and are unlikely to become necessary in the future.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11451 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-28 10:53:37 +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
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
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
06e7d0092d
Rename Fl_XXX_Image_Surface.cxx to Fl_XXX_Image_Surface_Driver.cxx
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11378 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-19 18:51:15 +00:00
Manolo Gouy
f55363776f
Deleted because renamed to src/drivers/XXX/Fl_XXX_Copy_Surface_Driver.cxx
...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11377 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-19 18:44:37 +00:00