Commit Graph

1391 Commits

Author SHA1 Message Date
Greg Ercolano
3420a418c0 Doc fix: fixes STR#3312.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11766 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-06-03 05:13:44 +00:00
Manolo Gouy
d850775282 Proper handling of html entities (&name;) in text selections of Fl_Help_View widget.
This commit reproduces the same changes in the fltk-1.3-porting branch.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11761 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-31 09:12:40 +00:00
Greg Ercolano
b37803b0ad Added references to the virtual colormap.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11758 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-28 15:50:17 +00:00
Greg Ercolano
92aa25597d Small doxygen doc fix for scrollbar_width().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11756 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-26 16:39:09 +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
59f5b732ae Documentation: detail ownership of the image data when pasting from an image-containing clipboard.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11715 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-05-05 08:47:37 +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
d2a6ac8b6b Fix compiler warnings found with gcc 4.0.4.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11534 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-05 20:35:29 +00:00
Albrecht Schlosser
b4a28580b0 Fix typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11532 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-05 17:52:04 +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
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
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
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
e4f26ea33a 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.

This commit fixes FL/fl_utf8.h to #include X11 headers only if compiled
in the FLTK library.

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@11266 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-02 12:15:08 +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
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
Albrecht Schlosser
0462cae6d1 [Cairo] Remove part of the dependency of FL/Fl.H on config.h.
To use Fl_Cairo_Window one ddi not only need to configure with --enable-cairo,
but also needed to #include <config.h> before #include <FL/Fl.H>.

This commit removes the smaller part of the dependency of the public header
file FL/Fl.H on config.h. This needs a better solution in FLTK 1.4.0.

The user still needs to define FLTK_HAVE_CAIRO _before_ #include <FL/Fl.H>.

Note: This is not compatible with fluid, since fluid _always_ includes
FL/Fl.H as the first statement in generated header files.

See also the discussion in fltk.general:

https://groups.google.com/d/msg/fltkgeneral/_C1OJhMLQl0/pHUFtz9SCwAJ



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11167 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-13 17:35:36 +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
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
Greg Ercolano
01e5f26f2f Fixed incomplete example.
Re: David Allen's post today on fltk.general



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-25 18:41:59 +00:00
Albrecht Schlosser
e8d6a11e78 Documentation fixes (Fl_Text_Buffer and Fl_Text_Display).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@11051 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-24 23:15:15 +00:00
Manolo Gouy
94e2c48f5f Implemented Fl_Image_Surface::draw_decorated_window().
This gives the same drawing capabilities to all supported drawing 
surfaces: display, printer, clipboard, in-memory bitmap image,
PostScript file.

Also, completed the Mac OS implementation of 
Fl_Copy_Surface::draw_decorated_window(Fl_Window *win, int delta_x=0, int delta_y=0)
that did not honor non-zero last arguments.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10990 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-04 13:16:23 +00:00
Manolo Gouy
6eb4354996 Doc change only: clearly document that FLTK has at any time a current drawing surface and a current graphics device.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10976 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-22 10:15:28 +00:00
Manolo Gouy
309a76e81c Trying to find how to best write the // "$Id$" lines in src/Fl_File_Chooser.fl
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10973 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-19 06:35:26 +00:00
Manolo Gouy
43bfe74b25 Running FLTK in static initializers (cont'd):
1) Changed the way fluid attaches images to widgets and menu items so
it is compatible with running fluid-generated code containing such images
in a static initializer. Images are now attached calling a function:
  widget->image( image_function_name() );
and this function is defined before in fluid-generated code as:
   static Fl_Image *image_function_name() {
     static Fl_Image *image = new image_type(......);
     return image;
   }

2) Changed src/Fl_File_Chooser.fl so the source code generate by fluid
from it is compatible with running in a static initializer.

3) Changed src/Fl_File_Chooser.cxx and FL/Fl_File_Chooser.H
to the result of running fluid on src/Fl_File_Chooser.fl 

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10972 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-18 18:56:58 +00:00
Manolo Gouy
1b548ae1d5 Running FLTK in static initializers (cont'd):
the static method Fl_Surface_Device::surface() can be called before main() starts.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10970 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-16 07:18:34 +00:00
Manolo Gouy
cf14f77a90 Allowing to use FLTK objects in static initializers (cont'd).
For fl_file_chooser() and Fl_File_Chooser objects.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10961 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-13 09:36:14 +00:00
Albrecht Schlosser
8a826c257d Fix Doxygen docs of new method Fl_Gl_Window::pixels_per_unit().
Moved the docs up (before #ifdef ...) so they are also generated on
Mac OS X platforms.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10946 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-02 11:56:25 +00:00
Manolo Gouy
22af09dae7 Mac OS: support for high resolution OpenGL windows.
Methods Fl::event_x_pixel() and Fl::event_y_pixel() committed at r.10941
are removed. Instead method Fl_Gl_Window::pixels_per_unit() is added.

The documentation explains in more detail how to write cross-platform
FLTK code supporting high resolution OpenGL windows on retina displays.

The examples/OpenGL3test.cxx app exercises Fl_Gl_Window::pixels_per_unit().

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10945 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-02 09:59:37 +00:00
Manolo Gouy
30e572985b Make clear in the doc that methods Fl_Gl_Window::pixel_w() and pixel_h()
dynamically adjust to windows moved between high and low resolution displays.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10944 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-01 18:40:51 +00:00
Manolo Gouy
597ac17bda Mac OS: added Fl::event_x_pixel() and Fl::event_y_pixel() that return the mouse event position
in pixel units that differ from FLTK units for OpenGL windows mapped to a retina display.
On non Mac OS platforms, these are synonyms of Fl::event_x() and Fl::event_y().
The example/OpenGL3test demo program is modified to call these new functions.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10941 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-01 16:17:37 +00:00
Manolo Gouy
689d19cda3 Added necessary forward type declaration.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10934 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-26 17:28:55 +00:00
Manolo Gouy
ff65dbb5ae Mac OS only: added the Fl_Mac_App_Menu::custom_application_menu_items() method
that allows customization of the application menu on the Mac platform.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10932 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-26 16:34:58 +00:00
Manolo Gouy
b0696db39a Added new method Fl_Copy_Surface::draw_decorated_window()
that copies a window to the clipboard together with its title bar and borders.
This requires very little new code because the capture of window decorations
is shared with the Fl_Paged_Device::print window() method.
The device test program is changed to call the new method.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10928 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-24 14:26:52 +00:00
Manolo Gouy
511ec0bb3d Mac OS: have Fl_Paged_Device::print_widget() print top-level windows with
rounded bottom corners as they appear on screen.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10916 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-19 16:33:44 +00:00
Manolo Gouy
0d2517331c Mac OS only: simpler definition of the pdfdata private member of the Fl_Copy_Surface class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10915 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-18 15:53:46 +00:00
Manolo Gouy
da6dff26fc Changed Fl_Multi_Browser behaviour on the Mac OS platform so multiple selection
is done by cmd-click rather than ctrl-click, as is expected on this platform.
Also, updated the documentation to describe the effects of ctrl-, shift- and cmd-clicks.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10882 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-05 17:54:16 +00:00
Manolo Gouy
1c16aaced2 The ATSU API (old API for text formatting) has been removed from SDK 10.11.
This fixes STR#3262

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10878 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-11-03 14:36:36 +00:00
Manolo Gouy
7e025aac22 Added support for OpenGL V3 and higher.
On the X11/MSWindows platforms, this requires external installation of the GLEW library.
This fixes STR#3198 and STR#3257.
Added two new examples programs.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10876 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-10-27 08:40:56 +00:00
Albrecht Schlosser
43e4f8a661 Fix doxygen comment of Fl::abi_check()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10875 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-10-24 09:55:18 +00:00
Manolo Gouy
04d0d5f6be Documentation: explicit what #include commands are needed to use
the Fl_Gl_Window::mode(int *) method.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10873 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-10-21 17:13:11 +00:00
Manolo Gouy
1095d4db41 Mac OS and SDK 10.3: #define's necessary for gl_draw.cxx are better in the library source
than in the public header file FL/gl.h

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10872 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-10-21 14:37:27 +00:00
Manolo Gouy
6fc9f11eb2 Doc: use plural with 'data'.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10871 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-10-21 06:12:32 +00:00
Manolo Gouy
a3b43d569c Documentation: added warning that Fl_Gl_Window::mode(const int * a), although public, is
subject to change, and that Fl_Gl_Window::mode(int a) is the adequate stable API.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10862 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-09-18 15:29:30 +00:00
Manolo Gouy
d7094249f0 Documentation: better descriptions of Fl_Gl_Window::mode() and Fl_Gl_Window::can_do().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10857 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-09-07 15:48:55 +00:00
Manolo Gouy
dc01deda00 Mac OS platform: Allow compilation of user code with non-Apple compiler.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10853 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-09-05 15:36:28 +00:00
Manolo Gouy
5ea322679c Moved Mac-specific type declaration to mac.H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10846 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-28 14:04:21 +00:00
Manolo Gouy
16e08ce3a2 Programs compiled with pre-10.7 SDKs can now fully use retina displays.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10844 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-27 12:31:46 +00:00