Commit Graph

11820 Commits

Author SHA1 Message Date
Matthias Melcher 8df4f8e398 FLUID: avoid generating undo un spurious relayout events, #1152 2024-12-03 20:37:28 +01:00
ManoloFLTK 167dba8817 Fi: Building with FLTK_BUILD_GL=0 fails on systems without opengl installed (#1151) 2024-12-03 17:12:49 +01:00
ManoloFLTK edd680395f Documentation only: add details about fl_override_scale() and clip. 2024-12-03 15:38:46 +01:00
ManoloFLTK e9ea17736b Fix Drawing bugs on Windows at very large scales (#1144) - cont'd 2024-12-03 15:38:46 +01:00
Matthias Melcher a234453443 Clarify use of Fl_Tabs::clieant_area() 2024-12-03 11:59:13 +01:00
ManoloFLTK 8f8533c9e8 Add comment linking source code to related information in issue #1149 2024-12-02 19:10:20 +01:00
ManoloFLTK 981aa8c2e7 Fix: Drawing bugs on Windows at very large scales (#1144) 2024-12-02 17:46:49 +01:00
ManoloFLTK 9a7f4bdfce Document that function fl_scroll() doesn't work OK with non integral scaling factors
and explain how to get correct results.
2024-12-02 12:04:24 +01:00
ManoloFLTK 557a5e4fd0 Fix Fl_Scroll with real *_BOX draws over scrollbars at non-default scales (#1149) 2024-12-02 08:48:05 +01:00
Matthias Melcher 13bb611b4e FLUID: Fixing Project Modflags when adding shell commands. 2024-12-01 16:44:04 +01:00
Albrecht Schlosser 5160567728 Use a constant frame rate (25 fps) in test/cube demo
The old version was "synchronized" by calling Fl::check() in a loop
which resulted in the highest speed possible on any platform.

It turned out that this was way too fast on the Wayland platform as
`valerius` posted on IRC/Matrix on Nov 30, 2024. Citation:
"anyone else notice the cube demo on Wayland is mega ultra hyper speed?".

I took the opportunity to change the demo to use a timer with a given
frame rate (see constant 'FPS') to synchronize drawing.
Note: the 'speed' slider is independent of the drawing frequency.

Finally this commit adds statistics output when the 'Stats / Exit' button
is pressed like

  Iterations =  304, runtime = 12.167 sec, fps = 24.99, requested: 25

with the requested frame rate (default = 25) and allows the user to
continue to see more statistics.

To do (very likely not in 1.4.x):
 1. integrate running statistics in the display
 2. make the desired frame rate variable at runtime (new slider)
2024-12-01 16:43:31 +01:00
Albrecht Schlosser 12ea6a0288 Enable building the CubeView demo w/o requiring '<config.h>'
This allows to build the CubeView demo from the unmodified FLTK sources
w/o having to provide a 'config.h' file by defining HAVE_GL=1 on the
compiler commandline. See also comment in test/CubeView.h.

test/CubeMain.cxx: don't include <config.h> at all (not needed)

test/CubeView.h: #include <config.h> only if HAVE_GL is not defined
2024-11-29 16:19:22 +01:00
dannye 404411ea68 Fix changed flag for radio buttons (#1146) 2024-11-28 23:14:07 +01:00
ManoloFLTK 0cd048a7a8 Improve procedure to construct best link command for macOS platform
As discussed between Matthias, Albrecht and Manolo, the best procedure is
- use MAC_OS_X_VERSION_MAX_ALLOWED but not __MAC_OS_X_VERSION_MAX_ALLOWED;
- compile helper file CMake /macOSMaxAllowed.c to detect whether the SDK in use
is in version above a given threshold version number;
- based upon the result of this check, decide to weakly link or not a given framework.
2024-11-28 14:59:32 +01:00
ManoloFLTK be6966bda6 Add missing FL_EXPORT qualifier 2024-11-27 08:38:37 +01:00
ManoloFLTK 3633b342fd Restore pixmap drawing under X11-noCairo broken by 0952d59 2024-11-27 08:23:35 +01:00
ManoloFLTK 95fc60bd8c Restore building with configure --disable-print (#1147) 2024-11-27 00:08:06 +01:00
Albrecht Schlosser 9bac964f85 Fix Makefile example in chapter "FLTK Basics"
- move linker rule from 'all' to '$(TARGET)'
- remove '$(TARGET) $(OBJS)' from rule 'clean'

The 'clean' rule required to build everything before it was deleted
which was obviously not intended.
2024-11-26 16:12:07 +01:00
ManoloFLTK 2430cb1f42 Fix: Graphical glitches on 101 DPI screen (#1138) 2024-11-25 13:34:14 +01:00
dannye edcf49c63a Windows: Fix rescale bug while window is fullscreen
Possible via the Win+Shift+Left/Right keyboard shortcuts
2024-11-25 11:05:06 +01:00
dannye f60af127de Windows: Fix rescale bug while window is maximized 2024-11-25 11:05:06 +01:00
Albrecht Schlosser 403981a293 Fix compiler warning (g++ 14) [-Wstringop-overflow]
New compiler warning detected by g++ 14.2.0 building with CMake
  in Release mode. This *temporary* fix suppresses the warning but uses
  even larger fixed size buffers.

Todo: these nasty warnings caused by using fixed buffer sizes should
  be removed by using std::string in FLTK 1.5.0.
2024-11-24 19:53:23 +01:00
Albrecht Schlosser d3d051483a Improve output of 'fltk-options -h' and '-L*'
This commit includes minor code formatting w/o semantic changes
and fixes some typos.
2024-11-24 16:51:35 +01:00
Albrecht Schlosser 801125b9a4 Increase clipping stack size (#1139) 2024-11-23 16:01:59 +01:00
Matthias Melcher cef968e8a0 FLUID: avoiding integer overflow warning. 2024-11-21 09:41:17 +01:00
Matthias Melcher d767b8ceb8 FLUID: autodoc image memory allocation fix. 2024-11-21 01:30:28 +01:00
ManoloFLTK 4258aca717 Fix: Can't control scale of Fl_Copy_Surface dimensions on Linux (#1135) 2024-11-20 15:36:49 +01:00
ManoloFLTK 0952d594f8 Fix fl_draw_image sometimes crashes when window is scaled - cont'd (#1134) 2024-11-20 10:18:26 +01:00
ManoloFLTK 1f05a0df44 Fix fl_draw_image sometimes crashes when window is scaled - cont'd (#1134) 2024-11-20 08:01:40 +01:00
Matthias Melcher 6df2219aa0 FLUID: fixing autodocs file leak and memory leak 2024-11-19 23:27:03 +01:00
ManoloFLTK c6d480352b Add 2 other missing FL_EXPORT qualifiers 2024-11-19 15:47:23 +01:00
ManoloFLTK e6d18cf713 Add 2 missing FL_EXPORT qualifiers 2024-11-19 15:37:05 +01:00
ManoloFLTK 619677b75c Fix fl_draw_image sometimes crashes when window is scaled (#1134) 2024-11-19 15:26:47 +01:00
ManoloFLTK 180b4bad2e Fix: Fullscreen regression between release-1.4.0rc2 and release-1.4.0rc3 on macOS( #1129) 2024-11-18 18:01:57 +01:00
ManoloFLTK 2cd0ec7e33 Fix: Rounding issues with Fl_RGB_Image::draw() + window scaling (#1128) 2024-11-18 17:20:36 +01:00
Albrecht Schlosser d547e19567 MSVC: Fix array allocation in test/fltk-versions (#1131) release-1.4.0-1 2024-11-18 02:08:56 +01:00
Albrecht Schlosser 3a3e73adad Update ANNOUNCEMENT for release 1.4.0 release-1.4.0 2024-11-17 21:36:26 +01:00
Albrecht Schlosser ed0744fc50 Update 'CHANGES.txt' for release 1.4.0 2024-11-17 21:14:21 +01:00
Albrecht Schlosser 6c6f6b7dd9 Finish release 1.4.0
1) Improve and clarify documentation:
 - update, reformat, and reorder parts of CREDITS.txt
 - make sure that documentation appears in doxygen docs
 - add '\since 1.4.0' to documentation of new methods and functions
 - remove doxygen's '\brief' where not required (we're using
   JAVADOC_AUTOBRIEF = YES)
 - clarify screen scaling, scaling factor, and related stuff
- add more info about backwards compatibility for X11 specific code

2) Update dependencies
2024-11-17 20:01:46 +01:00
Albrecht Schlosser 7b9af35847 Improve 'test/fltk-versions' demo program
- add code to get the platform and backend
- display platform and backend on screen
- improve and simplify layout (using Fl_Grid)
- add version check indicator
2024-11-17 18:12:45 +01:00
Matthias Melcher 114fb66cd3 Fixes Alt-modifier handling in Fl_Shorcut_Button on macOS 2024-11-15 20:27:07 +01:00
Albrecht Schlosser 176b0a06a3 Update CREDITS.txt 2024-11-13 15:30:55 +01:00
ManoloFLTK 53bedf1d34 Fix Cairo: Rounding issues with Fl_RGB_Image::draw() + Fl_Copy_Surface (#1124) 2024-11-13 09:16:41 +01:00
dannye 29531fa421 Windows: Fix flicker/animation when transitioning from fullscreen to maximized 2024-11-12 11:14:26 +01:00
ManoloFLTK 2337214e4e Fix for Windows and X11: Rounding issues with Fl_RGB_Image::draw() (#1120) 2024-11-12 10:56:19 +01:00
ManoloFLTK 0d4c8c8534 Fix Keyboard shortcut (alt + letter) does not work in input widget-Windows (#1122) 2024-11-12 09:09:10 +01:00
Albrecht Schlosser dc2c53333c Revert gtk+ specific "chevron style" arrow drawing (#1117)
After comparison with older versions I realized that the gtk+ specific
"chevron style" was previously used *exclusively* in Fl_Scrollbar.
Unfortunately I had picked this style as template for all arrows.

GitHub Issue #1117 requested to add an option for users to change the
arrow style but after my investigation I decided to use the "old style"
(triangles) for all schemes (except "oxy" that has its own drawing
methods).

**IF** it turned out that we need the gtk specific drawing for scrollbars
we could easily reactivate the "chevron style" by adding yet another
arrow type - but I hope this is not necessary.
2024-11-09 21:57:27 +01:00
ManoloFLTK 018c3b19f5 Fix Windows: fullscreen_off does not correctly preserve window size (#1116) 2024-11-09 15:35:06 +01:00
ManoloFLTK 85c23539fd Wayland: protect against rounding errors in copy_region() 2024-11-09 13:01:45 +01:00
Albrecht Schlosser 5d0fcc5f15 Finish Release Candidate 1.4.0 rc3 (release-1.4.0rc3) release-1.4.0rc3 2024-11-08 17:40:04 +01:00