Commit Graph

7232 Commits

Author SHA1 Message Date
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
0250b4af12 Remove Fl_Xlib_Graphics_Driver::global_gc() because identical to Fl_Graphics_Driver::global_gc()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12019 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-07 06:12:33 +00:00
Manolo Gouy
07f2fcd308 Fl_Graphics_Driver::global_gc() is already implemented in Fl_Graphics_Driver.cxx
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12018 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-07 06:04:28 +00:00
Manolo Gouy
311c7d9b24 Correct function Fl_GDI_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@12017 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-06 17:03:30 +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
c7c238675a Introduce virtual void Fl_Menu_Bar::update() with a platform-specific reimplementation to support Fl_Sys_Menu_Bar.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12015 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-06 16:42:59 +00:00
Manolo Gouy
a80ce48339 Make source code of test/file_chooser.cxx platform-independent.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12014 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-06 08:55:22 +00:00
Manolo Gouy
c48dfb94cd Fl_Native_File_Chooser on MacOS: improve handling of case where no chooser title is set.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12013 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-05 07:40:15 +00:00
Manolo Gouy
1929cb109e Improve Fl_Native_File_Chooser open dialog under Mac OS 10.12 that had lost its titlebar message.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12011 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-04 15:00:34 +00:00
Manolo Gouy
31070778b7 Fix for STR#3308 - MacOS X-specific part.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12009 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-04 11:29:57 +00:00
Manolo Gouy
6d616d3263 Xcode version 8 can
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12006 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-03 15:50:26 +00:00
Albrecht Schlosser
cf413d53fc Fl_Shared_Image documentation enhancements and clarifications.
Minor code changes (e.g. renaming of variables) included, but no functional
changes.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12003 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-01 22:43:56 +00:00
Greg Ercolano
a82eed18e5 Bringing over fix [r12000] from 1.3 current to the porting branch.
Applying my suggested patch to solve immediate issues with STR #3231.
Probably more needs to be done (see STR), but at least solves the
immediate issues.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12001 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-01 21:22:20 +00:00
Albrecht Schlosser
7e273a9fd3 Configure fixes and enhancements, ported from branch-1.3.
- Abort configure if Xft was requested explicitly, but not found.
- Set config.h HAVE_* variables only if both library and header found.
- Replace deprecated configure macros with recommended ones.
- Improve indenting (clarify macro arguments).
- Remove all autoconf warnings (see autoconf --warnings=all).
- Normalize indenting with tabs+spaces.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11999 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-30 21:44:04 +00:00
Albrecht Schlosser
6b278da83d Rename configure.in to configure.ac.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11998 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-30 21:09:59 +00:00
Manolo Gouy
eabbc41ef1 Avoid compilation warnings with -Wmaybe-uninitialized
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11993 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-29 13:28:40 +00:00
Manolo Gouy
42624dc17f Avoid possible autorelease warning message sent by "fluid -c" that calls Fl_Window::size_range()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11992 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-28 14:41:40 +00:00
Manolo Gouy
8ef05518bb MacOS platform: fix building under OS 10.4 that may not have kCGBitmapByteOrder32Host #define'd
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11990 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-27 15:11:46 +00:00
Manolo Gouy
1b3e273fa7 Rename Fl_System_Driver::flNoValue to Fl_System_Driver::fl_NoValue to follow the CMP
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11988 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 19:35:20 +00:00
Greg Ercolano
aa8dc3ffe1 Bringing over fix [r11986] from 1.3 current to the porting branch.
Small doc clarification for omitted word, caught by Albrecht via private email.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11987 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 19:31:29 +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
197d46240e File src/drivers/Quartz/Fl_Quartz_Printer_Graphics_Driver.cxx is no longer useful.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11983 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 16:46:31 +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
45e6be7316 Mac OS platform: Remove old Carbon code from cairo/Fl_Cairo.cxx
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11981 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26 12:08:37 +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
Albrecht Schlosser
34f5e4f752 X11: More explicit warning when using rotated text w/o Xft.
The warning is issued to stderr only once (previously: every time rotated
text was used).



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11978 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-25 11:23:27 +00:00
Albrecht Schlosser
c2fd05633c Fl_Tree documentation fixes and two missing statements.
Missing statements found while merging fixes from branch-1.3.

Todo: check if they have been 'lost' in the porting process
  or removed deliberately in branch-1.3-porting.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11976 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-24 23:15:48 +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
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
cccb475fa8 Remove useless forward declaration.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11972 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23 15:22:02 +00:00
Albrecht Schlosser
67f98ae4f3 Fix potential crash when using keyboard nav. on Fl_Tabs (STR #3333).
Also: more consistent use of 'const int nc = children()'. Added 'const'
qualifier for clarity only. This does not change the behavior.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11971 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23 14:04:56 +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
145cca26bd Remove a block of header comments in the middle of the file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11964 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-21 19:56:03 +00:00
Manolo Gouy
28044e71db Restore building with X11 but not Xft
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11963 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-21 19:25:47 +00:00
Manolo Gouy
6bba205c93 Remove the 'suppressed' variable from cocoaMouseHandler(), a useless residue from ancient code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11960 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-21 06:13:38 +00:00
Manolo Gouy
6347dbde58 Restructure the code behind double Fl_Cocoa_Screen_Driver::wait(double time_to_wait)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11958 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20 13:48:55 +00:00
Albrecht Schlosser
26601983c6 Update dependencies.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11957 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20 13:35:44 +00:00
Albrecht Schlosser
eede707852 Update fluid files and copyright.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11956 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20 13:31:38 +00:00
Manolo Gouy
827fa250f3 Remove fl_wait() that is not part of the public API.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11953 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20 12:58:51 +00:00
Manolo Gouy
c06374378f Remove fl_ready() not in public API and mostly same as 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-19 16:59:59 +00:00
Manolo Gouy
3c0b74b284 Remove virtual bool Fl_Graphics_Driver::high_resolution() unlikely to be useful across platforms.
HighDPI support is done with very different means across platforms, so a boolean
value is unlikely to be meaningful across platforms.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11950 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-19 15:33:21 +00:00
Manolo Gouy
6b86d9fbaf Remove static bool Fl_Display_Device::high_resolution() which may not be really useful.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11949 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-19 15:10:28 +00:00
Greg Ercolano
e7642ee999 Bringing over fix [r11947] from 1.3 current to the porting branch.
Small size mods to prevent Fl_Help_View scrollbar and wordwrap,
while keeping Albrecht's recent mods.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11948 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-16 20:29:13 +00:00