Commit Graph

6927 Commits

Author SHA1 Message Date
Manolo Gouy
9f91e336a1 Remove "passing NULL to non-pointer argument" warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11249 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-28 06:28:19 +00:00
Manolo Gouy
1883e9d386 Remove declaration of Fl_Quartz_Graphics_Driver::create_offscreen_with_alpha() no longer used.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11248 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 18:05:36 +00:00
Albrecht Schlosser
d67e9ccb73 Fix compiler warnings (STR #2988) - final commit.
This commit includes all fixes from branch-1.3 (svn r 11243) and additional
fixes for warnings that crept in during the porting efforts, particularly
C++ ("//") comments in C and included header files, and some more.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11246 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 17:27:21 +00:00
Manolo Gouy
85b45416e7 Remove signed/unsigned comparison warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11242 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 14:07:22 +00:00
Manolo Gouy
0b406baa0f Rewrite all fl_XXX_offscreen() functions so they use an Fl_Image_Surface object.
These functions become therefore platform-independent.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11241 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 13:52:27 +00:00
Albrecht Schlosser
5d24872dc4 Yet another directory in src/Makefile.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11239 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 01:28:02 +00:00
Albrecht Schlosser
425867ad2a Update dependencies.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11238 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 01:26:10 +00:00
Albrecht Schlosser
12b3e335ed Fix Makefiles (particularly target 'clean').
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11237 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 01:24:32 +00:00
Manolo Gouy
81bd759b53 Remove Fl_Printer::driver() that is already implemented in a parent class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11236 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 20:27:41 +00:00
Manolo Gouy
169e422fee Make the Fl_Widget_Surface's constructor protected.
Because this object is not functional in itself, but needs to be subclassed.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11235 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 17:45:13 +00:00
Manolo Gouy
c9eba2c3b5 Correct \file info for Doxygen
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11234 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 17:29:42 +00:00
Manolo Gouy
d8ac1b45c1 These files have been renamed from .h to .H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11233 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 17:25:38 +00:00
Manolo Gouy
350cca5446 Use the FL_DOXYGEN preprocessor variable to remove all Doxygen warnings
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11232 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 17:17:20 +00:00
Manolo Gouy
e8a8cfc0b1 More .h renamed to .H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11231 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 17:13:18 +00:00
Manolo Gouy
e45a7a25f7 Change another .h -> .H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11230 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 16:31:08 +00:00
Manolo Gouy
fe1a32a0ff Change #include following new file location
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11229 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 16:29:24 +00:00
Manolo Gouy
d9d5625028 Rename src/drivers/XXX.h to XXX.H - continued
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11228 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 16:26:24 +00:00
Manolo Gouy
83dddfbfab Rename remaining src/drivers/XXX.h to XXX.H - continued
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11227 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 16:18:27 +00:00
Manolo Gouy
6287426b65 Rename all remaining src/drivers/XXX.h to XXX.H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11226 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 16:12:43 +00:00
Manolo Gouy
df18e581af Rename Fl_Quartz_Display_Device.h to Fl_Quartz_Display_Device.H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11225 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 15:59:22 +00:00
Manolo Gouy
4df3376ba9 Rename Fl_Xlib_Graphics_Driver.h to Fl_Xlib_Graphics_Driver.H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11224 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 15:57:11 +00:00
Manolo Gouy
51cd728c6e Move PostScript-support files to a subfolder called src/drivers/PostScript - continued
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11223 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 15:34:05 +00:00
Manolo Gouy
cf4825eedf Move PostScript-support files to src/drivers/PostScript/
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11222 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 15:24:08 +00:00
Manolo Gouy
53993d4bd1 Add virtual destructor to Fl_Screen_Driver.
This is safer because Fl_Screen_Driver has virtual member functions and derived classes.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11221 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 13:41:48 +00:00
Manolo Gouy
682f950796 Create class Fl_Widget_Surface that supports draw(Fl_Widget *, int, int).
This simplifies the implementation of Fl_Copy_Surface and Fl_Image_Surface
which now are made to derive from Fl_Widget_Surface.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11220 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 12:51:47 +00:00
Albrecht Schlosser
e1f5f5f7ec Update dependencies.
Note: we should really get rid of that!


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11219 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 11:17:48 +00:00
Albrecht Schlosser
44f203e275 Fix Linux and Windows compilation error.
Note: class Fl_Device has been removed.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11218 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-26 11:13:43 +00:00
Manolo Gouy
7f17b915db Remove the useless pseudo run-time type information supported by the Fl_Device class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11217 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-25 17:56:48 +00:00
Manolo Gouy
31793cbdba Remove the global variable fl_mask_bitmap - put it in the graphics driver's virtual API.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11216 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-25 10:14:28 +00:00
Manolo Gouy
e24f3f79a3 Remove useless declarations.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11215 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-25 07:08:57 +00:00
Manolo Gouy
14759eb387 Mac OS platform: make fl_draw_image() draw correctly depth-4 images with transparent areas.
This simplifies the drawing of Fl_Pixmap's.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11214 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-25 07:01:10 +00:00
Manolo Gouy
6097c134d8 Avoid static initializers to allow FLTK usage in static initializers.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11213 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-24 08:07:30 +00:00
Manolo Gouy
941c301ceb Fix Fl_RGB_Image::uncache() and Fl_Bitmap::uncache().
It is not possible to use fl_graphics_driver in these functions
because when they are called *fl_graphics_driver may have been
deleted. A solution is to use  Fl_Display_Device::display_device()->driver()
instead which is always valid.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11212 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-23 20:37:22 +00:00
Albrecht Schlosser
0f7e3ac086 Fix unused variable compiler warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11209 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-22 17:33:02 +00:00
Albrecht Schlosser
7e94d7650b Fix Fl_Text_Display line numbers and scrolling (STR #3272).
Fix slow scrolling, line number display, and scrollbars (STR #3272).

Optimized wrap mode - removed unnecessary wrap margin calculations.
The speed-up is significant, but there is still room for improvements.

Refactored parts of the code to make the decisions more modular and
(hopefully) obvious.

This commit also fixes some positioning issues with different scrollbar
alignments and the new line number display.

Fix line number display with wrap mode (hiding text behind scrollbars).

Note: same changes as r11202 and r11205 in branch-1.3.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11208 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-22 17:25:30 +00:00
Albrecht Schlosser
f54863db44 Add some test options to test/editor.cxx.
These options are not enabled by default, but you can enable them by
defining macro DEV_TEST. This adds buttons to toggle wrap mode,
scrollbar positions, and to increase or decrease the window size (width).

Note: this can be used to test STR #3272 and the fixes in a follow-up
commit.

Note: same changes as r11204 in branch-1.3.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11207 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-22 17:21:17 +00:00
Albrecht Schlosser
1b5fd476b9 Update copyright and comments of src/cmap.cxx (no code changes).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11201 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-20 16:41:05 +00:00
Albrecht Schlosser
45026bbd8f Document creation of src/fl_cmap.h with src/cmap.cxx.
This is only for developer info.

Note: cmap.cxx is not included in the library. It is only used to
generate fl_cmap.h.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11200 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-20 16:24:11 +00:00
Albrecht Schlosser
07ad8383ed Fix include files.
Note: ../../config_lib.h also includes <config.h>.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11199 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-20 15:56:13 +00:00
Matthias Melcher
90c42cac3e WinAPI fixes
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11198 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 22:46:00 +00:00
Matthias Melcher
093c0c7f73 Fixes for X11
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11197 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 22:43:40 +00:00
Matthias Melcher
399501783c Add example code to Fl_Window_Driver.
Some refactoring of a take_focus() function into driver structures (not too happy with it, because it has some kind of bug fix. However, shouldn't *all* Fl_Windows always have an FL_Window_Driver?)

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11196 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 22:37:41 +00:00
Matthias Melcher
052401a34e Instantiate the right Fl_Window_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11195 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 22:21:02 +00:00
Matthias Melcher
a072a412a1 Typo in X11 part of src/Makefile
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11194 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 21:42:46 +00:00
Matthias Melcher
22d302e242 Add System Driver and Window Driver.
Adding two new driver types for each platform. Fl_..._System_Drivers exist once per application and provide an interface for to file and filename handling, timers, locking, multithreading, etc. .

 The Fl_..._Window_Driver class is instantiated once for every window in the system and corresponds closely to (and actually inherits from) Fl_X. The difference now is, that there is one Fl_X/Fl_Window_Driver base class, and one platform version that derives from it.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11193 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 21:41:02 +00:00
Manolo Gouy
2b6482263b Fix Fl_X11_Screen_Driver::wait(). The fractals demo is back.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11192 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 12:47:45 +00:00
Manolo Gouy
1b5e231c90 Rename Fl_Graphics_Driver::set_gc(void*) to gc(void*) and 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-19 12:40:24 +00:00
Manolo Gouy
6d766cc681 Update the fl_gc global variable also when Fl_Graphics_Driver::set_gc() is called.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11190 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19 11:52:45 +00:00
Manolo Gouy
f33b45f1d3 Remove all uses of the fl_gc global variable. Towards a clean driver model.
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-18 16:21:51 +00:00
Albrecht Schlosser
6ce27012a9 Fix Fl::grab(win) under Linux (program crashed in menus).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11187 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-18 01:45:12 +00:00