This commit consists of two parts:
1. CMake/resources.cmake: remove the old variable OPENGL_GLU_INCLUDE_DIR
from the CMake cache if possible, otherwise enforce a clean build.
2. src/CMakeLists.txt, CMake/options.cmake: use the new variable name
FLTK_OPENGL_GLU_INCLUDE_DIR.
For details please see GitHub Issue #1001.
Pressing Home would go to hard newline character, even in
line wrap mode. It now stops at the soft newline, as expected.
Same for End which now findes the wrapped line break
instaead of the next '\n' character.
... w/o editing a file. The default font is "Liberation Mono".
Just set environment variable FLTK_USING_WINE=1 to enable this feature.
Rationale: on /my/ current test system the font chosen by `wine` for
FL_COURIER is a proportional font whereas the display in Fl_Terminal
requires a fixed font for correct output. Font "Liberation Mono"
solves this long standing issue for me w/o having to change source code
but other Linux systems may require a different font.
- append underscores to private varaibles per CMP
- add public Fl_Help_View::copy() and Fl_Help_View::text_selected()
- add public Fl_Help_View::copy_menu_text
- fixes some of the focus handling
- add pulldown menu to copy selected text
Language wrappers can have major issues with FLTK auto deleting
all children of a group if a group is deleted. This event gives individual
widget the opportunity to override auto delete.
Resize the window to see the effect: line sizes increase with the box
size and become wider depending on the box size. Minimal line width
of the "wide" lines has been changed from 4 to 5, maximal width is
now 9. Distinct widths are { 5, 7, 8, 9 }.
Note: the default (thin) line width is now 1 rather than 0 since the
default 0 may render badly.
Screenshot in documentation has been updated.
As a follow-up to the discussion I used the posted screenshot demo
(thanks to Greg), redesigned it using Fl_Grid, and added it as a
new test program, including Makefiles and CMakeLists.txt.
New file: test/line_style_docs.cxx to create screenshot. Note that the
old test/line_style.cxx is not obsolete, it can be used to test the
line styles interactively.
Docs have been updated in both chapter "Drawing Things" and the
function description.
Also added the new demo to test/demo.menu under "Images for Manual...".
This fix solves these warnings:
$ make html
[100%] Generating HTML documentation
/usr/local/src/fltk-1.4.x.git/src/Fl.cxx:2275: warning: explicit link request to 'include' could not be resolved
/usr/local/src/fltk-1.4.x.git/src/Fl.cxx:2263: warning: explicit link request to 'include' could not be resolved
The previous approach FLTK used to create OpenGL contexts under the X11 platform
followed a different code path to create contexts for OpenGL version 3 and above
than to create contexts for OpenGL versions 1 or 2.
The FLTK code followed exactly "Tutorial: OpenGL 3.0 Context Creation (GLX)"
of the official OpenGL wiki, see:
https://www.khronos.org/opengl/wiki/Tutorial:_OpenGL_3.0_Context_Creation_(GLX)
That code worked OK with Debian 11 and with any tested Linux configurations
in a VM running on Apple hardware. However, it failed with Debian 12 and later
on native Linux boxes to create GL3 contexts with the FL_DOUBLE flag.
That's what issue #1005 reports.
A first attempt to fix#1005 followed instructions given at:
https://registry.khronos.org/OpenGL-Refpages/gl2.1/xhtml/glXIntro.xml
which supposedly describe how to create OpenGL contexts with GLX.
That had no effect on issue #1005.
This commit erases all attempts to use OpenGL3-specific calls or even
the more modern glXCreateNewContext() function that appears with
GLX version 1.3. The committed code uses only OpenGL 1-age
functions to create OpenGL contexts for X11 windows.
Created contexts follow the "Compatibility Profile" which means they
are compatible with both modern OpenGL3-style and legacy OpenGL1/2-style.
This appears to fix issue #1005.