Commit Graph

11750 Commits

Author SHA1 Message Date
Albrecht Schlosser
e65681c9ac CMake: fix usage of OPENGL_GLU_INCLUDE_DIR (#1001)
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.
2024-08-08 14:49:34 +02:00
ManoloFLTK
713f0b0f64 Add -lwinspool necessary for new class Fl_PDF_File_Surface 2024-08-06 17:27:10 +02:00
Matthias Melcher
44a8508ffe Add Sudoku undo and redo. 2024-08-04 23:42:03 +02:00
Matthias Melcher
fad1a67734 Sudoku formatting, hint updates. 2024-08-04 17:28:35 +02:00
Matthias Melcher
cee2af13b3 Fix Sudoku's use of Fl_Sys_Menu->parent(). 2024-08-04 16:46:04 +02:00
Matthias Melcher
72ee34d1cb Fixes Fl_Text_Editor Home and End keys in line wrap mode
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.
2024-08-04 15:59:44 +02:00
dannye
46dd1b33cc
Fix testing of multi-label alt shortcuts (#974)
* find_shortcut(): fix testing of multi-label alt shortcuts
* Use static function instead of macro
2024-08-04 11:53:35 +02:00
Matthias Melcher
9bb9cb3f96 Optimize Fl_Text_Display scrolling speed (#596). 2024-08-04 00:32:11 +02:00
Matthias Melcher
bc73580366 Pulldown button size in Fl_Tag configurable with OV_BORDER now. 2024-08-03 21:39:22 +02:00
Matthias Melcher
803ad5ace9 Fixes missing default argument in Fl_Fill_Dial constructor. 2024-08-03 19:06:23 +02:00
Albrecht Schlosser
7d90a3b373 Fix indenting, add comments for clarity
no operative code changes in this commit
2024-08-03 18:09:58 +02:00
Albrecht Schlosser
fd691b6173 Remove obsolete statement (#1033)
Thanks to @xuyun018 for finding this.
2024-08-03 18:07:05 +02:00
Matthias Melcher
68f437b63e Improve visibility of selected tab in Fl_Tabs (#1032). 2024-08-03 15:26:03 +02:00
Matthias Melcher
0654da9d4a Fixes Fl_Tags close button and pulldown button color. 2024-08-03 14:18:04 +02:00
Matthias Melcher
97b1df805e Better Fl_Tabs callback handling. 2024-08-03 13:05:31 +02:00
Matthias Melcher
abb2971654 Fix Fl_Tabs callback in Overflow mode (#1031). 2024-08-02 21:15:18 +02:00
ManoloFLTK
48ec9ea660 libdecor: prevent crash using bullt-in libdecor with GDK_BACKEND=x11 (#1029) 2024-08-01 18:55:10 +02:00
Albrecht Schlosser
53469038ce Enable setting a fixed font for 'wine' in test/handle_keys.cxx
... 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.
2024-07-31 17:04:34 +02:00
Matthias Melcher
089f31018b Add RMB pulldown menu to Fl_Help_View, #75
- 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
2024-07-29 14:03:16 +02:00
Matthias Melcher
e7b8a24685 Add chapter in CMake docs for building FLTK under Windows WSL. 2024-07-29 13:05:31 +02:00
Cyprinus Carpio
471aca03bc GDI: fix StretchBlt mode setting 2024-07-28 22:30:55 +02:00
ManoloFLTK
9c7a473778 Crash in macOS when switching fullscreen window between displays (#1022) 2024-07-28 18:27:37 +02:00
ManoloFLTK
80b496cfe2 Remove useless #include directive from Fl_Window_Driver.H 2024-07-28 18:27:37 +02:00
Matthias Melcher
5cafae4a3a Remove FL_AUTO_DELETE_EVENT feature
It's not ripe for release yet and possibly not even needed
according to pyFLTK maintainers.
Added: 8cffbd6941
2024-07-28 16:32:36 +02:00
ManoloFLTK
c0dba15e4b Wayland: restore support of Fl_Tile with subwindow widget - cont'd 2024-07-28 14:21:51 +02:00
Matthias Melcher
d265009b66 FLUID: fixes crash bug in Fl_Sys_Men_Bar inside a Class. #977 2024-07-27 20:22:50 +02:00
Matthias Melcher
8cffbd6941 Adds the FL_AUTO_DELETE_EVENT to suppress auto delete.
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.
2024-07-26 18:00:25 +02:00
ManoloFLTK
b740c48ee8 Wayland: restore support of Fl_Tile with subwindow widget 2024-07-26 16:01:16 +02:00
ManoloFLTK
3cc12d203f Fix Fl_Scalable_Graphics_Driver::rect(x,y,w,h) (#1017) 2024-07-24 17:09:30 +02:00
ManoloFLTK
467866b829 Comment only: add Fl_GDIplus_Graphics_Driver to Fl_Graphics_Driver hierarchy 2024-07-24 17:09:30 +02:00
Albrecht Schlosser
a7d00ae558 Resize line sizes and widths dynamically in test/line_style_docs
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.
2024-07-23 17:18:40 +02:00
ManoloFLTK
f6a508291a Fix "line_style_doc program under X11: join type wrong" - cont'd (#1017) 2024-07-23 10:23:57 +02:00
ManoloFLTK
5e6c47f446 Fix "line_style_doc program under X11: join type wrong" (#1017) 2024-07-23 10:13:27 +02:00
Greg Ercolano
dc95cd55c0 Further removal of fl_line_style() asciiart (#1016) 2024-07-21 19:54:50 -07:00
Albrecht Schlosser
7f24a0d6d8 Update docs and screenshot for fl_line_style() (#1016)
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...".
2024-07-21 22:34:02 +02:00
Greg Ercolano
0291b48a73 Fix slowness due to not clipping (#1014) 2024-07-21 10:20:13 -07:00
Greg Ercolano
7f998bac60 fl_line_style() diagrams replace ascii art (#1016) 2024-07-20 12:55:27 -07:00
Greg Ercolano
e64e708345 fl_line_style() docs refer to the enum (#1016) 2024-07-20 09:51:57 -07:00
ManoloFLTK
ffe39737e5 Remove unused function after commit 325004f 2024-07-19 14:04:59 +02:00
ManoloFLTK
56f0671b32 Fix border case of use of fl_end_loop under Windows with USE_GDIPLUS=1 2024-07-19 13:48:18 +02:00
Greg Ercolano
49a161e68d Fix warnings during 'make html'
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
2024-07-19 00:39:42 -07:00
Greg Ercolano
0dec8cdc18 Improve line style docs (#1016) 2024-07-18 23:52:16 -07:00
ManoloFLTK
3fbb1c4af2 Remove obsolete content in documentation of Fl_Gl_Window
see "About the documentation of OpenGL usage in FLTK" in fltk.coredev
2024-07-19 07:33:03 +02:00
ManoloFLTK
4fb4f395a3 Remove duplicated comment
The remaining instance is in Fl_Gl_Window_Driver.cxx
2024-07-18 18:43:46 +02:00
ManoloFLTK
faaf1a0cb4 Fix typo in documentation 2024-07-18 16:44:45 +02:00
ManoloFLTK
0929624646 Document more accurately use of FL_OPENGL3 flag with Fl_Gl_Window's 2024-07-18 16:36:24 +02:00
Greg Ercolano
3e9c77b62a Fix Fl_Tree related -Wall warnings 2024-07-17 10:29:49 -07:00
Greg Ercolano
f950b93e9c Added is_visible_r() for consistency w/is_visible() 2024-07-17 10:20:39 -07:00
Greg Ercolano
741d58757b Fix last_visible_item() to check parents (#1012) 2024-07-17 10:19:29 -07:00
ManoloFLTK
325004fb33 Simplify creation of OpenGL contexts under X11 platform (#1005)
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.
2024-07-17 17:12:23 +02:00