summaryrefslogtreecommitdiff
path: root/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_font.cxx
AgeCommit message (Collapse)Author
4 dayswip: forkmaxim nikonov
8 daysmacOS: remove code present only to support macOS versions 10.3 and 10.4.ManoloFLTK
This is a first step towards removing the code related to support of old macOS versions that are not compatible with C++11 which FLTK 1.5 requires.
2026-01-21Improve handling of text containing context-dependent unicode points.ManoloFLTK
This commit makes platforms Windows and macOS compute string widths with the same mechanism as what is in place for platforms Wayland/X11: - the width of a string containing a single codepoint is computed and memorized in the table of character widths; - the width of a string containing several codepoints is computed as such rather than as the sum of the widths of its composing characters. The result is that FLTK text widgets input and draw correctly also complex emojis encoded with context-dependent codepoints. Function fl_utf8_remove_context_dependent() is no longer necessary.
2023-10-09macOS: remove a bunch of deprecation warningsManoloFLTK
2022-06-27Fix for issue #454 : crash in Fl::get_font_name().ManoloFLTK
2022-06-25Remove arbitrary maximum length of font name.ManoloFLTK
2022-06-24Fix for issue #452: Fl::get_font_name failure on OS-X.ManoloFLTK
2022-01-16Rename FL/fl_string.h to FL/fl_string_functions.hAlbrecht Schlosser
This is part 1 of the final fix for a previous name clash on case insensitive file systems (fl_string.h vs. Fl_String.H).
2021-02-16Create classes Fl_XXX_Gl_Window_Driver according to driver model.ManoloFLTK
2020-08-01Implement + deploy fl_strdup()Greg Ercolano
2020-07-31Solves issue #117, memcmp -> strncmpGreg Ercolano
Closes #117.
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-12Remove unneeded #include directiveManoloFLTK
2019-02-02STR #2714: remove new shadow lint for MacOSMatthias Melcher
2018-02-07STR#3450: Draw text with OpenGL using textures on all platforms.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12650 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-05Some cleaning in commentsManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12621 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-14MacOS: finer control of the compilation conditions under which Core text and ↵Manolo Gouy
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-11Replace .h by .H in #include "Fl_Quartz_Graphics_Driver.h"Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12023 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-26MacOS platform: centralize check whether a font has been set before drawing textManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11979 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-24Mac OS platform: restore usability with SDK 10.3 and 10.4Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11973 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-23Fl_Quartz_Graphics_Driver: separate CoreText- and ATSU-based code using new, ↵Manolo Gouy
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-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-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-08-22Use the HAS_ATSU preprocessor variable once moreManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11883 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02Remove #include directive for Fl_Font.H from mac.HManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11510 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-02Replace src/Fl_Font.H by one file for each platform.Manolo Gouy
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-02Make constant CoreText_threshold local to file Fl_Quartz_Graphcs_Driver_font.cxxManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11504 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-03-26Isolate the definition of the 3 public, OS-dependent types (Fl_Offscreen, ↵Manolo Gouy
Fl_Region, Fl_Bitmask). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11432 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-24Rewrite Fl::handle_(int e, Fl_Window* window) and Fl_Widget::damage() to ↵Manolo Gouy
remove their platform dependent parts git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11419 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19Rename Fl_Graphics_Driver::set_gc(void*) to gc(void*) and ↵Manolo Gouy
Fl_Graphics_Driver::get_gc() to gc(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11191 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-18Remove all uses of the fl_gc global variable. Towards a clean driver model.Manolo Gouy
fl_gc remains usable by the application as a hook into the system. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11189 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-01Remove fl_set_fonts_mac.cxx and put in Fl_Quartz_Graphics_Driver_font.cxxManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11104 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-27Messed up Makefiles in order to compile on OS X with carved out Graphics DriverMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11066 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-27Removed all references to Quartz driver files from library headers in Xcode. ↵Matthias Melcher
Works in Xcode. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11065 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-26Moved Quartz graphics driver to the new naming schemeMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11057 ea41ed52-d2ee-0310-a9c1-e6b18d33e121