summaryrefslogtreecommitdiff
path: root/src/drivers/Cocoa
AgeCommit message (Collapse)Author
2018-02-20Remove Fl::run_also_windowless() and FL::wait_also_windowless() from planned ↵Manolo Gouy
public FLTK 1.4 API. These were introduced at r12647, that is, during development of the 1.4 API. These functions provided windowless support only on the MacOS platform, where this can be obtained without those functions. Windowless support on other platforms would require changing the event loop. There's no evidence from STR's there's a demand for windowless mode on other platforms. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12680 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-09Replace "WIN32" with "_WIN32" or "Windows".Albrecht Schlosser
Replace compiler/preprocessor/platform macro "WIN32" with "_WIN32". Replace "WIN32" in text and documentation with "Windows". Replace "MSWindows" with "Windows". To do: README.Windows.txt (and maybe other documentation as well) needs updates. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12655 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-09Fix fl_read_image() under MacOS platform when GUI is rescaled.Manolo Gouy
This commit also simplifies the platform-dependent support of fl_read_image(): only Fl_XXX_Screen_Driver::read_win_rectangle() contains platform-specific code to capture pixels from the current window or from an offscreen buffer. Platform-independent function Fl_Screen_Driver::traverse_to_gl_subwindows() captures subwindows that intersect with the area fl_read_image() targets. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12653 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-08Move xxx_also_windowless member functions from Fl_System_Driver to ↵Manolo Gouy
Fl_Screen_Driver. Because these functions are related to Fl_Screen_Driver::wait(double) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-01-31Replace FL/x.H with FL/platform.H - step 2 (STR #3435).Albrecht Schlosser
This second step replaces FL/x.H with FL/platform.H in all source files. Dependencies have been adjusted as well. This commit completes the replacement of FL/x.H with FL/platform.H. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12641 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-01-09Fl_Sys_Menu_Bar under MacOS: prevent the FLTK object from receiving events.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12629 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-01-09Put a default implementation of parse_color() in Fl_Screen_Driver and only ↵Manolo Gouy
Fl_X11_Screen_Driver reimplements it. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12628 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-27GUI rescaling under MacOS: fix Fl_Cocoa_Screen_Driver::read_image() - continuedManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12610 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-27GUI rescaling under MacOS: fix Fl_Cocoa_Screen_Driver::read_image() when ↵Manolo Gouy
reading from scaled offscreen buffer git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12609 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-26Continue support for GUI rescaling under MacOS: fix fl_XXX_offscreen() ↵Manolo Gouy
functions and Fl_Image_Surface class git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12605 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-23Continue support for GUI rescaling under MacOS: fix Fl_Overlay_Window.Manolo Gouy
This patch also improves by simplification the code of class Fl_Quartz_Image_Surface_Driver: because, under the driver model, there's a separate graphics content for the display and for each offscreen buffer, it's possible to reverse the drawing orientation (draw from top to bottom) once at offscreen creation. It's thus no longer necessary to reverse orientation in Fl_Quartz_Graphics_Driver::restore_clip() specifically for offscreen buffers. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12603 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-18STR#3437 : Support display of windows in tabbed form as in MacOS 10.12 SierraManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12596 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-18STR#3444: Add MacOS support for application rescaling (not quite complete)Manolo Gouy
With this, most MacOS FLTK app can be scaled with command/+/-/0/ keystrokes. A scaling problem remains, visible in test/cube, where the "Test" string is not positioned correctly. GLUT apps can also be scaled (across platforms). SVG images are re-rasterized after app scaling for optimal drawing. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12594 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-07Further simpler code to initialise the MacOS-specific implementation of ↵Manolo Gouy
Fl_Sys_Menu_Bar_Driver git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12586 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-04Make Fl_Sys_Menu_Bar class usable in static initializers.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12579 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-11-30MacOS: use rounded bottom corners when drawing windowsManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12574 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-11-17Replace remaining calls of getenv() with fl_getenv().Albrecht Schlosser
Note: don't use fl_getenv() in Fl_System_Driver and derived classes. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-11-03Remove 1 deprecation warning.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12541 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-11-03Remove 3 deprecation warnings.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12540 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-09-13SVG support: draw images at full screen resolution also when there are ↵Manolo Gouy
several pixels per graphical unit, as with Apple retina displays. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12456 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20Remove Fl_Cocoa_Window_Driver::flush_double() because it is equal to ↵Manolo Gouy
Fl_Window_Driver::flush_double() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12341 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20Fl_Window_Driver::flush_single() needs not be a virtual member function.Manolo Gouy
It is really an accessor to protected method Fl_Window::flush(). Rename it to Fl_Window_Driver::flush_Fl_Window to reflect that. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12340 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-17Make Fl_Screen_Driver::get_mouse(int&, int&) return the number of the ↵Manolo Gouy
mouse-containing screen. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12264 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-01Divide virtual Fl_Screen_Driver::open_display() in a platform-specific part ↵Manolo Gouy
followed by a platform-independent part. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12245 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-20Mac OS: remove unused members variables from platform-specific struct ↵Manolo Gouy
Fl_Window_Driver::shape_data_type git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12178 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-14Implement a platform-independent version of ↵Manolo Gouy
Fl_Graphics_Driver::copy_offscreen() usable when drawing to PostScript. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12147 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-09Use Fl_Graphics_Driver::default_driver() when convenient.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12088 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-10Re-organisation of code to support CoreText and ATSU for drawing text.Manolo Gouy
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-09-26Replace a few global variables by members of the Fl_Quartz_Graphics_Driver classManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11985 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26MacOS platform: the printer's graphics driver should also call ↵Manolo Gouy
Fl_Graphics_Driver::newMainGraphicsDriver() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11982 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23Move font-related member functions from Fl_Screen_Driver to Fl_Graphics_Driver.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11968 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-22Fl_Screen_Driver class: its platform dependent member functions should not ↵Manolo Gouy
be static. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11966 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-22Rewrite Fl::set_fonts(), Fl::get_font_sizes(), Fl::get_font_name() under the ↵Manolo Gouy
driver model. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11965 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20Restructure the code behind double Fl_Cocoa_Screen_Driver::wait(double ↵Manolo Gouy
time_to_wait) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11958 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-19Remove fl_ready() not in public API and mostly same as ↵Manolo Gouy
Fl_XXX_Screen_Driver::ready() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11951 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-13Remove possible warnings when compiling with -WundefManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11942 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-12Fix typo in macro __LP64__Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11938 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-13Add GLContext to the set of platform-dependent types defined in ↵Manolo Gouy
FL/platform_types.h If a platform does not support OpenGL, it can just typedef GLContext as void* git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11733 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-09Move GL-related member functions from class Fl_Cocoa_Screen_Driver to class ↵Manolo Gouy
Fl_Cocoa_Gl_Window_Driver git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11728 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-26Set svn file properties.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11700 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19Add static Fl_XXX_Window_Driver *driver(Fl_Window*) to get the ↵Manolo Gouy
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-19Move GL-related static member functions of the Fl_X class on Mac OS to class ↵Manolo Gouy
Fl_Cocoa_Screen_Driver. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11662 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19Transform Fl_X::make(Fl_Window*) for Mac platform into Fl_X ↵Manolo Gouy
*Fl_Cocoa_Window_Driver::makeWindow() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11658 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19Move several of the methods of class Fl_X for Mac platform to class ↵Manolo Gouy
Fl_Cocoa_Window_Driver. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11657 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19Move the set_key_window() member function from class Fl_X to class ↵Manolo Gouy
Fl_Cocoa_Window_Driver. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11655 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18Move other_xid member variable from class Fl_X to class F_Window_Driver.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11654 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-18Move set_cursor() member functions from class Fl_X to classes ↵Manolo Gouy
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-18Replace member function void Fl_X::flush() by virtual void ↵Manolo Gouy
Fl_Window_Driver::flush() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11646 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17virtualized some Region calls.Matthias Melcher
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-17Move q_release_context() from class Fl_X to class Fl_Cocoa_Window_DriverManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11639 ea41ed52-d2ee-0310-a9c1-e6b18d33e121