Commit Graph

184 Commits

Author SHA1 Message Date
ManoloFLTK 28c7c584fa Improve documentation of fl_strdup()
and add example of value of fl_mac_os_version.
2023-12-12 11:58:00 +01:00
ManoloFLTK 143a18ee11 Add "#define MAC_OS_VERSION_14_0 140000" to mac.H 2023-10-20 10:57:48 +02:00
ManoloFLTK 8235967dcc Fix "Compilation warning: 'NSOpenGLContext' on macOS 11" !#646) 2023-01-11 09:32:31 +01:00
ManoloFLTK 59fc60ea4c Simpler code to support FLTK widgets in macOS OpenGL 3 windows.
Also, the application-level code to add widgets to a GL3 window becomes
platform-independent.
2022-09-27 14:12:39 +02:00
ManoloFLTK 89f9671b40 Add cross-platform support for adding widgets to an OpenGL3-based Fl_Gl_Window.
Under non-macOS platforms, the key is to call glUseProgram(0); after having used OpenGL 3
which allows to then use OpenGL 1 and draw FLTK widgets over the OpenGL3 scene.

Under macOS, this is impossible because macOS GL3 contexts are not compatible
with GL1. The solution implemented here is to create an additional Fl_Gl_Window
placed above and sized as the GL3-based window, to give it a non opaque,
GL1-based context, and to put the FLTK widgets in that additional window.
2022-09-25 16:39:40 +02:00
ManoloFLTK 8bbedd65a8 Fix issue #501: build error under macOS 10.10 2022-09-22 20:12:40 +02:00
ManoloFLTK c720aae515 Make hybrid Wayland/X11 platform. 2022-08-29 12:15:32 +02:00
ManoloFLTK 895ac51c69 macOS: add "Toggle printing of titlebar" to application menu - cont'd. 2022-02-02 11:19:09 +01:00
ManoloFLTK 935074ba0b macOS: add "Toggle printing of titlebar" to application menu. 2022-02-02 11:05:53 +01:00
Albrecht Schlosser f09e17c3c5 Remove $Id$ tags, update URL's, and more
- remove obsolete svn '$Id$' tags from all source files
- update .fl files and generated files accordingly
- replace 'http://www.fltk.org' URL's with 'https://...'
- replace bug report URL 'str.php' with 'bugs.php'
- remove trailing whitespace
- fix other whitespace errors flagged by Git
- add and/or fix missing or wrong standard headers
- convert tabs to spaces in all source files

The only relevant code changes are in the fluid/ folder where
some .fl files and other source files were used to generate
the '$Id' headers and footers.
2020-07-06 20:28:20 +02:00
Manolo Gouy ca8c5feb16 Document global variable fl_sys_menu_bar. 2018-12-31 16:03:46 +01:00
Manolo Gouy b79f3ed1f2 Prepare for support of MacOS 10.14 Mojave.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13067 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-10-16 09:28:25 +00:00
Matthias Melcher b8e97d7c28 Doxygen only: fixed all block comments starting with an asterisk to space-only, fixed doxygen keywords prepended with @ to use a backward slash instead. No code was changed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12970 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-23 20:50:22 +00:00
Manolo Gouy 358bdf577e MacOS: add more detail to the doc of global variable fl_mac_os_version
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12715 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-07 10:12:50 +00:00
Manolo Gouy a0863e393a Document that fl_mac_set_about() is deprecated, MacOS-specific and replaced by cross-platform Fl_Sys_Menu_Bar::about().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12685 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-22 17:04:37 +00:00
Manolo Gouy 838168defc Restore documentation of function Fl_Mac_App_Menu::custom_application_menu_items()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12666 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-12 09:16:04 +00:00
Albrecht Schlosser 1d97f94e56 Fix broken Windows and macOS builds.
The check whether mac.H or win32.H were included directly was wrong
after the recent rename of x.H to platform.H.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12642 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-01-31 22:34:48 +00:00
Albrecht Schlosser 42d8aba117 Replace FL/x.H with FL/platform.H - step 2 (STR #3435).
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-31 21:17:17 +00:00
Manolo Gouy 34dd1b15fb Converted class Fl_Sys_Menu_Bar to the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12575 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-12-02 16:20:30 +00:00
Manolo Gouy 6ad1d3f2e8 Add MAC_OS_X_VERSION_10_12 preprocessor variable
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11974 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-24 06:27:18 +00:00
Manolo Gouy c5960df5fb Rewrite fl_open_callback() under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11929 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-09 15:56:33 +00:00
Manolo Gouy 747e88abdc Add missing typedef statement for CGContextRef.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11672 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-20 04:09:01 +00:00
Manolo Gouy c28b65f5f5 Clean #include directives used by x.H, mac.H, win32.H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11671 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-20 04:03:03 +00:00
Manolo Gouy cd4498021e Have headers x.H, win32.H and mac.H share a unique definition of class Fl_X
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11667 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 20:47:25 +00:00
Manolo Gouy 9f78323574 Move GL-related static member functions of the Fl_X class on Mac OS to class Fl_Cocoa_Screen_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11662 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 16:58:17 +00:00
Manolo Gouy 6600993adc Transform Fl_X::make(Fl_Window*) for Mac platform into Fl_X *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-19 15:00:02 +00:00
Manolo Gouy f9edd86753 Move several of the methods of class Fl_X for Mac platform to class Fl_Cocoa_Window_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11657 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 14:25:47 +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
Manolo Gouy 366f4bfbc9 Move the set_key_window() member function from class Fl_X to class Fl_Cocoa_Window_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11655 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19 06:34:40 +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 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
Manolo Gouy a4e5dc0267 Move q_release_context() from class Fl_X to class Fl_Cocoa_Window_Driver
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11639 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 10:12:42 +00:00
Manolo Gouy 16beb869a5 Move Fl_X::gc for Mac platform to the Fl_Cocoa_Window_Driver class
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11638 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-17 09:25:00 +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 3caff18578 Remove the virtual destructor of class Fl_X that is no longer needed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11625 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-16 07:25:58 +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
Manolo Gouy 3f64e2b28d Continue removing from class Fl_X what is not window-related.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11613 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15 11:30:10 +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 64c96b9098 Continue removing from class Fl_X all what is not window-related.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11514 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 16:08:56 +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 43d20bd18a Remove now useless Fl_X::window_ref() function.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11505 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 09:44:00 +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 ab5252071c Move Fl_X::next_marked_length to the Fl_Cocoa_Screen_Driver class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11503 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 09:34:17 +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 77e5a5c11a Move get_carbon_function() to the Fl_Darwin_System_Driver class where it belongs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11501 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02 07:03:18 +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