Commit Graph

3775 Commits

Author SHA1 Message Date
Albrecht Schlosser
1127234621 Fix compiler warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11749 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-22 13:43:12 +00:00
Albrecht Schlosser
bc9bb9bd70 Fix Fl_Help_View buffer overflow (STR #3275).
This version works much better than the previous one:

 - fixed buffer overflow ("stack corruption")
 - fixed potential long text truncation
 - fixed tab formatting at line start or any offset divisible by 8
 - better handling of HTML entities (aka quoted characters)
 - code simplifications, e.g. HV_Edit_Buffer::cmp() + width()

Todo:

 - improve and standardize handling of HTML entities
 - more tests

Missing features and known bugs:

 - strike out text (not implemented)
 - table and horizontal line formatting issues (STR #3227)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11745 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-17 16:25:27 +00:00
Albrecht Schlosser
21768d9410 Fix documentation of Fl_Tile (STR #3303).
Clarify that the resizable() box should be the first child to ensure
correct event delivery to children.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11726 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-09 11:25:57 +00:00
Manolo Gouy
489bb91a82 Safer code for gl_draw() when used on normal window and Mac OS X.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11725 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-09 08:01:16 +00:00
Manolo Gouy
8feb1bda5f Make all platforms get same kind of Fl_Image object when pasting an image from clipboard.
Previously the X11 platform got an Fl_Shared_Image whereas other got an Fl_RGB_Image,
which made image deletion difficult. Now all platforms get an Fl_RGB_Image object.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11712 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-05 07:21:24 +00:00
Albrecht Schlosser
17f677e0a3 Fix more compiler warnings.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11535 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-05 21:12:49 +00:00
Albrecht Schlosser
11322ede59 Avoid size recalculation if Fl_Browser::textsize() didn't change.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11464 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-29 11:34:10 +00:00
Albrecht Schlosser
474db7e1ff [CMake] Revert r 11460.
Sorry for the noise.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-29 10:23:45 +00:00
Albrecht Schlosser
c7bf9ce91b [CMake] Fix library name(s).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11460 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-29 09:54:17 +00:00
Albrecht Schlosser
4db4c2910e Fix Fl_Browser::textsize(int) to adjust the scrollbars (STR #3057).
Setting a different text size didn't affect the scrollbars.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11453 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-28 16:16:29 +00:00
Albrecht Schlosser
12d5c63bb8 [CMake] Simplify CMake build files, remove redundancies.
Remove src/fl_call_main.c from non-Windows (static) libraries. It would
be an empty object file anyway.

Use CMake variables to set up used files and linked libraries to remove
redundancies. All files and libs are used only in the definition of
CMake variables and used later in static and shared builds, resp.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11444 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-27 18:30:51 +00:00
Albrecht Schlosser
448e02574b [CMake] Remove redundant linking in CMake build process (STR #3298).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11442 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-27 16:56:23 +00:00
Albrecht Schlosser
3356a15d18 Fix compiler warning.
Back-porting from branch-1.3-porting.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11423 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25 20:55:13 +00:00
Albrecht Schlosser
de74c82d42 Enable definition of Unicode conv. options on compiler command line.
Three documented pre-processor variables can now be defined on the
compiler command line to avoid editing the FLTK src code. The default
values still apply unchanged.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11404 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-23 13:36:50 +00:00
Albrecht Schlosser
612e6d7974 Fix Doxygen warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11390 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-20 17:55:17 +00:00
Manolo Gouy
014ea2f871 Fix potential memory error in Mac OS code for printing window titlebars.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11370 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-19 06:04:19 +00:00
Manolo Gouy
71ed0752fb Fix minor default in Fl_Window::wait_for_expose() under Mac OS.
If the exposed window contains a sub-window the sub-window can disappear
after having been drawn. This can be seen with the device demo
completed with a wait_for_expose() call just after the main window show().
The fix applies wait_for_expose() recursively for all subwindows.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11352 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-12 05:35:40 +00:00
Manolo Gouy
a0f26d3cf4 Fix freeze of Fl_Native_File_Chooser occurring under Mac OS + X11.
The fclose(stderr) apparently freezes the opening of the GTK file chooser.
It is replaced by 2>&- which closes stderr for the lpstat command.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11329 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-09 16:08:39 +00:00
Albrecht Schlosser
a0d519142c Add localization of modifier key names in shortcut labels.
Modifier key names like Alt, Shift, Ctrl, Meta can now be localized by
setting global string pointers. See documentation of fl_shortcut_label().


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11321 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08 16:58:43 +00:00
Albrecht Schlosser
15477700ed Improve documentation of Fl_Valuator class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11316 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08 13:42:59 +00:00
Albrecht Schlosser
6f18ec06d5 Fix overflow in Fl_Valuator::precision(int) to 0...9 (STR #3280).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11315 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08 13:40:18 +00:00
Ian MacArthur
337e115c54 Fl_Tree failed to compile if built with no ABI guard set (or the default 1.3.0 set).
The variable "_lastselect" had been added to the methods Fl_Tree::remove() and Fl_Tree::clear() without any ABI guards, but "_lastselect" was added to the class ABI at 10301 (so far as I can tell).

Builds now with my patch: not sure it is correct, but... Will commit anyway since it allows the lib to build, but please feel free to fix it better!




git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11314 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08 09:56:46 +00:00
Manolo Gouy
d01ff3864f With X11 + Xdbe, deallocate the Fl_Double_Window's back buffer at window close.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11312 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08 05:18:28 +00:00
Greg Ercolano
c9e114945e lastselect_: reset to zero in remove() + clear(), added description comment for variable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11306 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-07 20:35:28 +00:00
Albrecht Schlosser
0d316c3140 Remove obsolete files.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11295 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 16:24:37 +00:00
Albrecht Schlosser
3948405951 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.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11270 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 15:45:26 +00:00
Manolo Gouy
35010115c9 Allow fl_draw_image(buf,X,Y,W,H,D,L) calls with abs(L)>D*W on the Mac OS platform.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11263 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 07:51:53 +00:00
Manolo Gouy
f4cc803b3c 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@11254 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-01 15:08:57 +00:00
Manolo Gouy
de07c2ea94 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@11250 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-29 17:01:01 +00:00
Albrecht Schlosser
753aa53c2e Fix compiler warnings, last part (STR #2988).
The fixes in this commit include those proposed in file #6
(fltk-misc-1.patch) with a few modifications (see comment on STR).

Changes in src/fl_set_font.cxx are not included (see comment #13).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11243 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-27 15:14:42 +00:00
Albrecht Schlosser
4c191cda8f Update dependencies.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11211 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-22 17:46:53 +00:00
Albrecht Schlosser
78dad08926 Fix unused variable compiler warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11210 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-22 17:38:26 +00:00
Albrecht Schlosser
21da7922d0 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.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11205 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-22 16:41:55 +00:00
Albrecht Schlosser
0c4dcd8a45 Fix Fl_Text_Display wrap mode when line numbers are on (STR #3272).
This is part 1 of the proposed patch, slightly reformatted.
See STR #3272, comments #1 - #3.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11202 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-21 12:20:47 +00:00
Greg Ercolano
2fd2cd1e7a Some code cleanup of FNFC Win32: no functional changes.
> Replace huge static WCHAR wpattern[] array with dynamic in win32 FNFC (ABI 1.3.4)
      (Should decrease the memory weight WIN32 lib)

    > Simplify current working directory management

    > Comment simplification, CMP adherence



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11188 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-18 04:21:27 +00:00
Manolo Gouy
de47a8f7b1 Improve image drawing to double-resolution Fl_Image_Surface objects (Mac OS only).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11179 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-15 17:06:48 +00:00
Greg Ercolano
7ba4a6c9c2 Applying patch for buffer overflow provided by Michael Sartain on fltk.coredev 02/10/2016
Subject: Fl_Tree::item_pathname() byte overflow



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11177 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-15 06:11:45 +00:00
Albrecht Schlosser
0e47a4a8a9 Fix HTML entities in Fl_Help_View.
Removed obsolete ENC() macro, fixed some encodings that were still
Windows CP-1252: converted to correct Unicode values.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11174 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-14 19:49:08 +00:00
Greg Ercolano
f6e6c20843 Addresses issue raised by Michael Sartain on fltk.coredev on 02/11/2016;
prevent problems with Fl_Tree::_item_focus remaining valid after clear().
Applied his patch, plus extra checks added to Fl_Tree_Item's dtor.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11173 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-14 14:29:47 +00:00
Manolo Gouy
1e2118d20f Simpler code to support drawing to high-resolution Fl_Image_Surface object.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11161 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-13 06:14:40 +00:00
Manolo Gouy
249e2e9b00 Add Fl_Shared_Image *Fl_Image_Surface::highres_image() to draw into high-resolution bitmap.
This new member function returns a high resolution bitmap image scaled to the adequate
drawing size. This allows to create a bitmap image able to fill all pixels of a high resolution
display. This is functional only for the Mac OS platform and with FL_ABI_VERSION >= 10304. 
On other platforms, the new member function returns an unscaled bitmap.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11156 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-11 20:42:51 +00:00
Albrecht Schlosser
90a2d680e5 Fix valgrind warning (uninitialized variable) in Fl_Window.
Visible only with FLTK_ABI_VERSION >= 10303, since FLTK 1.3.3.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11134 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-09 01:11:03 +00:00
Albrecht Schlosser
cd4284f056 Fixed Windows drag'n'drop not showing insert position (STR #3209).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11131 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-07 10:10:52 +00:00
Manolo Gouy
678c3a1fc7 Set depth of image returned by Fl_Image_Surface::image() back to 3 on Mac OS X.
This depth was set to 4 at r.10999 to help dealing with images of windows with rounded
corners. But it was not such a good idea to have an image depth that changes with the platform.
For example, the shapedwindow example program was made more complicated.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11118 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-02 07:15:57 +00:00
Albrecht Schlosser
1d85cc43f3 Fix compiler warnings [-Wsign-compare] (STR #2988).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11095 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-31 03:40:58 +00:00
Albrecht Schlosser
e934dd5468 Fix compiler warnings (STR #2988).
gcc issued lots of warnings if compiled with -Wundef. This shows access
to undefined preprocessor macros, particularly for config tests.

This update is similar, but not identical to fltk-cpp-fixes.patch as
posted on STR #2988 (file #1). There have been changes in the configure
script and the  macros in configh.in and configh.cmake.in meanwhile.

This commit compiles with -Wundef w/o such warnings under Linux and
Windows (MinGW).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11094 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-31 02:49:56 +00:00
Manolo Gouy
739e4a8eaf Mac OS: improved the Fl_Image_Surface class so it returns an RGBA image
allowing to draw exactly windows with rounded corners.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10999 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-06 20:47:39 +00:00
Manolo Gouy
2f642a51c9 Fixed typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10998 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-06 20:41:57 +00:00
Manolo Gouy
c9712614df 1) The Fl_Window::decorated_h() computation was incorrect under MSWindows10
because it did not use the correct dwmapi.dll - based implementation.
This commit uses the correct way to compute the width and height of window
borders in Fl_Window::decorated_h() and in Fl_Paged_Device::draw_decorated_window().

2) Fixed the computation of enhanced metafile units that correspond to a given pixel size
used by the Fl_Copy_Surface class on the WIN32 platform.

Tested with MSWindows XP, 7 and 10 using the device test app.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10997 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-05 11:59:08 +00:00
Manolo Gouy
95fb87eff5 1) For the X11 and the Mac OS platforms, a default font (FL_HELVETICA, FL_NORMAL_SIZE)
is used when fl_draw() is called while no font has been set before. This commit does the same
on the MSWindows platform, for consistency.

2) Slightly improved Fl_Image_Surface::draw_decorated_window() under WIN32.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10996 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-05 05:48:58 +00:00