summaryrefslogtreecommitdiff
path: root/src/drivers/Darwin/Fl_Darwin_System_Driver.H
AgeCommit message (Collapse)Author
3 dayswip: forkmaxim nikonov
2025-03-08Add Fl_Darwin_System_Driver::filename_relative()ManoloFLTK
This removes the last instance in FLTK of use of #if __APPLE__ instead of the driver mechanism.
2024-06-30Fl_Tree +/- buttons are no longer drawn using bitmaps, different default ↵Cyprinus Carpio
line color (#995) Fl_Tree changed to support system color themes (PR #995) merging CyprinusCarpio's mods carried over from from issue #972. * Fl_Tree: use named (colormap) colors to support system color themes (see issue #972). changed connectorcolor() default from gray ramp color to FL_INACTIVE_COLOR (Fl_Color(8)), and similar named colormap colors for icon drawing. * Fl_Tree ⊞ / ⊟ icons (and on macs, ▶ / ▼icons) are now drawn w/fl_draw() functions instead of with xpm bitmaps for colormap control --------- Co-authored-by: Greg Ercolano <erco@seriss.com>
2022-12-30Use `FL_OVERRIDE` for all overridden virtual methods (#611)Matthias Melcher
FL_OVERRIDE is defined as `override` for C++11 and higher FL_OVERRIDE is defined as `override` for VisualC 2015 and newer Don't interfere with Fl_Widget::override()
2022-11-07Create class Fl_Unix_Screen_Driver used by X11 and Wayland platformsManoloFLTK
2022-03-23Remove vsscanf_l() call from Win32 driver (it appears to be a BSD-ism and ↵ian.macarthur
unsupported by the MS tools) and rename several clocale specific methods from "name" to "vname" since they take a va_list not a variable list of arguments.
2022-02-03Reorganize classes Fl_System_Driver and Fl_Screen_DriverManoloFLTK
These virtual members are moved from Fl_Screen_Driver to Fl_System_Driver - wait(double) - ready() These virtual members are moved from Fl_System_Driver to Fl_Screen_Driver - copy(const char *stuff, int len, int clipboard, const char *type) - void paste(Fl_Widget &widget, int clipboard, const char *type) - clipboard_contains(const char *type) - clipboard_notify_change() These members are moved from Fl_X11_Screen_Driver to Fl_X11_System_Driver - poll_or_select_with_delay(double time_to_wait) - poll_or_select() and are made virtual in preparation for the introduction of class Fl_Unix_System_Driver.
2022-01-19Fixing and upgrading Fl_Preferences (#374)Matthias Melcher
* Added filename function to Fl_Preferences Static function to get filename before opening. Member to get filename after opening. Bug fixes for memory mapped preferences. * ERROR is a macro on Windows, don't use it * Added Fl_Preferences::dirty(). User can now check if the database will be written when flushed or destroyed. Flush returns a crude error code. * Fl_Preferences::get binary data returns # of bytes read. * Verified group deletion code * Fl_Preferences ignores locale. This will make .prefs files interchangeable between different computers. * Updating the Preferences Mode to ignore locale. * Fixes in docs.
2021-02-16Remove FL_CFG_WIN_COCOA preprocessor variable from Fl_Sys_Menu_Bar.cxxManoloFLTK
2020-07-14First pass at fixing issue 99Greg Ercolano
A lot of code touched because low level functions needed to pass up error messages reliably, and this had to propagate up the entire driver hierarchy. Tested OK *in English* on: > Linux > OSX 10.10.x > Windows VS2017 > Windows mingw64 I have no way to test on Android, but it might work. TODO: Needs testing in other languages to verify proper UTF8 error messages, esp. with Windows VS, due to complexities with FormatMessage() -- see get_ms_errmsg()
2020-07-06Remove $Id$ tags, update URL's, and moreAlbrecht Schlosser
- 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.
2019-03-25Rename fl_compute_macKeyLookUp() to ↵ManoloFLTK
Fl_Darwin_System_Driver::compute_macKeyLookUp()
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-02-06Add support for detection and processing of clean program termination request.Manolo Gouy
The default handling of cmd-Q/Quit program under MacOS was to terminate the program if all its windows are closed without returning from FLTK's event loop. This was running against a strong design feature of FLTK that programs should always complete their event loop and return from main() when cleanly terminating. In the new code for the MacOS platform, cmd-Q/Quit program no longer terminates the program. Instead, the event loop is interrupted and a call to Fl::program_should_quit() allows to detect that program termination has been requested, if necessary. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12647 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-09-19Convert the initialisation of global variables fl_local_shift, ↵Manolo Gouy
fl_local_meta, etc... using the driver approach. This avoids repeating the default values "Shift", "Meta", etc... for several platforms. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12463 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-19Add one more argument to virtual ↵Manolo Gouy
Fl_System_Driver::file_browser_load_filesystem() giving length of the filename argument git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12050 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-09Rewrite fl_open_callback() under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11929 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-24Set svn file properties.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11694 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-19Virtualized add_fd and remove_fd into System DriverMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11668 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15Move platform-dependent implementations of Fl::clipboard_contains() to the ↵Manolo Gouy
Fl_System_Driver class git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15Move the platform-dependent implementations of Fl::paste() to the ↵Manolo Gouy
Fl_System_Driver class. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11615 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-15Continue moving to Fl_System_Driver the platform_dependent implementations ↵Manolo Gouy
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-14Complete rewriting of Fl_Tree_Prefs.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11606 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-14Begin to rewrite Fl_Tree_Prefs.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11605 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-13Rewrite fl_encoding_mac_roman.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11600 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-13Rewrite fl_encoding_latin1.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11599 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-11Create Fl_X11_System_Driver.{cxx,.H} and share ↵Manolo Gouy
Fl_Posix_System_Driver.{cxx,.H} between Darwin and USE_X11 platforms. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11583 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-11Remove compilation errors in Fl_File_Icon.cxx with MSVC compiler with new ↵Manolo Gouy
method Fl_System_Driver::file_type(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11581 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-10Rewrite Fl_lock.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11578 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-10Rewrite Fl_Preferences.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11571 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-10Rewrite Fl_File_Browser.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11570 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-09Rewrite fl_shortcut.cxx for the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11566 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-09Rewrite fl_open_uri.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-09Rewrite Fl_Menu.cxx for the driver model.Manolo Gouy
See the detailed description in menuwindow::handle(int e) of Fl_Menu.cxx of how the menu window class could require 1 or 2 less support functions from the Fl_System_Driver class. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11557 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-07Rewrite filename_expand.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11553 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-07Rewrite filename_list.cxx under the driver model.Manolo Gouy
One more platform-dependent type is necessary: struct dirent Create a new header file, FL/platform_types.h, to define all types whose definition is platform-dependent. This file is for C because it is included by scandir_XXX.c git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11550 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-06Rewrite Fl_get_key.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11545 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02Move function Fl_X::calc_mac_os_version() to class Fl_Darwin_System_DriverManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11502 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02Move get_carbon_function() to the Fl_Darwin_System_Driver class where it ↵Manolo Gouy
belongs. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11501 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-31Move dnd and character-composition related functions from Fl_System_Driver ↵Manolo Gouy
to Fl_Screen_Driver git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11489 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-31Move the marked text support member functions from Fl_System_Driver to ↵Manolo Gouy
Fl_Screen_Driver. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11486 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-31Complete removing platform-dependent code from the Fl.H header file.Manolo Gouy
Type FL_SOCKET is now declared in Fl_System_Driver.H with all other platform-dependent public types. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11484 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-31Begin to remove platform-dependent code from the Fl.H header file.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11482 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-30Make sure fl_mac_os_version is defined when the Fl_Darwin_System_Driver ↵Manolo Gouy
object is used. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11475 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-30Begin to rewrite Fl_PostScript.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11474 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-29Rewrite fl_utf8.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11467 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-28Rewrite Fl_dnd.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11455 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-28Rewrite Fl_compose.cxx under the driver model.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11454 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-28Rewrite file src/Fl_arg.cxx under the driver model. Begin giving flesh to ↵Manolo Gouy
the Fl_System_Driver class. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11448 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-26Public header files must not include files from the source tree.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11435 ea41ed52-d2ee-0310-a9c1-e6b18d33e121