Commit Graph

6927 Commits

Author SHA1 Message Date
Matthias Melcher
00750d4c33 Add very basic graphics support to PicoSDL.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11311 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08 00:35:00 +00:00
Matthias Melcher
b73bf4a73e Fixes for MSWindow
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11310 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-07 21:56:12 +00:00
Matthias Melcher
c26880e2d2 Fixes for X11
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11309 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-07 21:45:55 +00:00
Matthias Melcher
12eef8e64d Separating Fl_X and Fl_Window_Driver in Fl_Window.
This was needed because Fl_X only exists if a window is mapped, but we need the driver from the very beginning. Adding Fl_X in the ctor would create hidden bugs. Strategy is now to remove system specific stuff from Fl_X and move it one-by-one to Fl_Window_Driver while maintaining a working code base. X11 and WIN32 fixups will follow in 15 minutes.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11308 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-07 21:15:25 +00:00
Matthias Melcher
b6b99d84e9 Fix PicoSDL.
Fixed some issues with Image_Surface and Copy_Surface for PicoSDL. Still have to virtualize the driver concept.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11307 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-07 20:50:18 +00:00
Manolo Gouy
b33c9cffd1 Driver-based Fl_Double_Window implementation - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11305 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 22:33:41 +00:00
Manolo Gouy
5ca73da7b3 Driver-based Fl_Double_Window implementation - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11304 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 22:22:22 +00:00
Manolo Gouy
acfeee6d78 New, driver-based Fl_Double_Window implementation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11303 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 21:33:07 +00:00
Matthias Melcher
7e2dc9daf5 Trying to make Pico work after Surface driver addition.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11302 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 21:01:54 +00:00
Matthias Melcher
a22cc4158f Rename SDL driver files to PicoSDL.
Renaming the files will keep the namespace clean if we decide to do a full blown SDL port one day.
PicoSDL OTOH is merely there to explain how a Pico driver setup is started and improved.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11301 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 20:31:12 +00:00
Manolo Gouy
00060ce587 Remove duplicate Fl_Image_Surface::(un)translate()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11300 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 19:13:57 +00:00
Manolo Gouy
09cc0a9aab Build with SDL driver needs to know also the Fl_Image_Surface class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11299 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 18:53:10 +00:00
Albrecht Schlosser
5c1e50b128 Fix include statements.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11298 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-06 14:31:33 +00:00
Albrecht Schlosser
96a89d4300 Remove obsolete ide/Xcode4 directory.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11297 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 16:41:04 +00:00
Albrecht Schlosser
aefd708ef1 Remove obsolete files.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11296 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 16:25:39 +00:00
Albrecht Schlosser
b4126742f2 Fix and simplify exe name handling in demo (Windows).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11294 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 14:40:49 +00:00
Albrecht Schlosser
420408e7d3 [CMake] Mark OPTION_USE_POLL as advanced.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11292 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 13:29:46 +00:00
Manolo Gouy
95d5f00009 Remove warning message about signed/unsigned comparison.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11290 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 10:05:14 +00:00
Manolo Gouy
e7a0f7c5d0 Complete the platform-neutral implementation of fl_XXX_offscreen() functions.
It is necessary to have a stack of the fl_begin_offscreen() calls, so that nested
such calls apply fl_end_offscreen() to the matching fl_begin_offscreen().

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11289 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 07:04:20 +00:00
Albrecht Schlosser
3f401f4477 Add Ian's offscreen test program.
Same commit as branch-1.3, svn r11287.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 00:53:40 +00:00
Manolo Gouy
79c64c461d Fix a problem seen in fluid on the Mac OS platform - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11286 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 22:41:42 +00:00
Manolo Gouy
a46e324405 Fix a problem seen in fluid on the Mac OS platform.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11285 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 22:30:18 +00:00
Manolo Gouy
7c5c803ca9 Fix bad #include directives
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11284 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 18:01:39 +00:00
Manolo Gouy
a9c986752e Complete driver-based implementation of Fl_Image_Surface.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11283 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 17:47:29 +00:00
Manolo Gouy
35214afddf Protect platform-specific parts from Doxygen.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11282 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 16:44:23 +00:00
Ian MacArthur
3c25a338c4 porting branch: Modify unittest_images.cxx to support "on the fly" update of the image test controls.
This builds on the mechanism that Albrecht added to test flipped and inverted image drawing, but allows the settings to be changed at runtime rather than at compile time as previously.

I'm commiting it here for testing use in the porting branch, but I'm not happy I've really tested it enough yet so reluctant to commit it in the main fltk-1.3.x branch until this code has been reviewed and tested by others.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11281 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 13:11:05 +00:00
Manolo Gouy
d1d57d1253 Fix Fl_Xlib_Graphics_Driver::draw(Fl_RGB_Image *,...) that was incompletely changed in earlier commit.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11280 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-04 08:20:55 +00:00
Manolo Gouy
750c372b29 Remove Fl_Copy_Surface::newPlatformSurface() that does not do much.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11279 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-03 19:25:10 +00:00
Manolo Gouy
8782f2f925 Simpler implementation of Fl_Image_Surface.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11278 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-03 19:16:22 +00:00
Manolo Gouy
8bd3ea6c8a A hopefully clearer implementation of the fl_XXX_offscreen() functions.
The Xlib driver is tricky because it uses two kinds of offscreen buffers.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11277 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-03 08:32:16 +00:00
Manolo Gouy
78a539f695 Fix error in an #include directive.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11276 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-03 06:46:02 +00:00
Manolo Gouy
8b0dec3406 Use more expressive variable names.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11275 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-03 05:33:26 +00:00
Matthias Melcher
fcdc7f1212 Made Pico/SDL setup compile and run some minimal code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11274 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-03 00:07:17 +00:00
Manolo Gouy
2d52a3494d Rewrite Fl_Image_Surface with full separation of public API and platform-specific implementation.
File Fl_Image_Surface.cxx still needs to be cut in several platform-specific files.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11273 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 22:10:03 +00:00
Albrecht Schlosser
76b240d79d Fix negative 'd' and 'ld' args in fl_draw_image() (X11 + Windows).
This commit fixes a regression in FLTK 1.3.x, where negative values
of 'd' (pixel delta) and 'ld' (line delta) didn't work anymore under
Unix/Linux (X11) and Windows.

With this commit the regression is fixed on all supported platforms.

Equivalent of branch-1.3, svn r11270.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11272 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 16:19:18 +00:00
Albrecht Schlosser
5a8f3f908b Enable negative 'd' and 'ld' arguments in fl_draw_image() test.
This commit defines additional preprocessor macros to enable testing
negative d and ld arguments of fl_draw_image(). Documentation (test
scenario) has also been improved.

Same commit as in branch-1.3, svn r11269.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11271 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 15:52:29 +00:00
Albrecht Schlosser
35c4ae5527 Don't expose X11 headers in user space any more (mostly).
Platform headers should not be #include'd in public FLTK header files,
so that user space is not polluted by platform specific definitions.

See discussion and test file in discussion in fltk.general:
https://groups.google.com/forum/#!topic/fltkgeneral/gzmdRk2LvAk
https://groups.google.com/d/msg/fltkgeneral/gzmdRk2LvAk/EOe314ChBgAJ

This commit fixes FL/fl_utf8.h to #include X11 headers only if compiled
in the FLTK library (same as in FLTK 1.3.4, svn r 11266).

Todo (FLTK 1.4): Remove more unnecessary (unwanted) system header #include
statements from FL/x.H and other public header files.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11268 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 12:40:53 +00:00
Manolo Gouy
39fdbecd16 Finalize new implementation of Fl_Copy_Surface.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11267 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 12:36:37 +00:00
Albrecht Schlosser
df94673b61 Fix C++ comment in C header file + typos.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 10:53:25 +00:00
Matthias Melcher
53859c584f Add support for SDL as a base library on OS X.
This commit adds the basic setup in CMake to allow SDL as a base
library for FLTK on OS X (and probably for other platforms as well).

The SDL library driver set is derived from yet another new driver
set named 'Pico'. 'Pico' is a base class for a driver that will
allow porting of FLTK with the tinyest amount of effort. This 
implementation of the SDL driver shall be documented very well
to explain the porting process.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11262 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 00:54:37 +00:00
Manolo Gouy
f14de4048e Fix a few Doxygen warnings.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11261 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 21:28:13 +00:00
Manolo Gouy
2072fcd698 Allow fl_draw_image() with negative L parameter for Mac OS - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11260 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 21:10:16 +00:00
Manolo Gouy
9c77129a28 Allow running fluid -c without opening the X11 display.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11259 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 20:44:56 +00:00
Manolo Gouy
a3d54d5d6c Correct the headers included by FL/Fl_Copy_Surface.H, following the new implementation of this class.
This change requires other changes in header inclusions by class Fl_Image_Surface.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11258 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 18:07:12 +00:00
Manolo Gouy
7decb3d3b2 Rewrite the Fl_Copy_Surface class with strict separation of public API and platform-related code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11257 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 17:20:25 +00:00
Matthias Melcher
4af165781f Added missing virtua function headers
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11256 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 16:06:11 +00:00
Manolo Gouy
c646ecc0d3 Have fl_draw_image(buf,X,Y,W,H,D,L) support negative D and/or L arguments on Mac OS X - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11255 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 15:22:37 +00:00
Matthias Melcher
95824506fe Moved timer code to screen drivers. Not sure if this should be in System Drivers instead.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11253 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 00:54:21 +00:00
Manolo Gouy
6521bb2562 Add missing implementation of Fl_Widget_Surface::origin(int x, int y).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11252 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-29 17:37:17 +00:00
Manolo Gouy
6d34c647ca Accept fl_draw_image(buf, X,Y,W,H,D,L) with negative D and/or L arguments on the Mac OS platform.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11251 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-29 17:35:49 +00:00