10027 Commits

Author SHA1 Message Date
Albrecht Schlosser
ecc47d0cc3 Refactor and simplify "arrow drawing" in widgets
"Arrows" in widgets are those GUI elements mostly represented by
triangles pointing in a particular direction as in scrollbars,
choice widgets, some menus, valuators and Fl_Counter widgets.

The code has been simplified and standardized such that all these
GUI elements are drawn identically per FLTK scheme.

Widget authors no longer need to write code to calculate arrow sizes
and draw polygons etc.

Different schemes can and do implement different drawing functions.

Todo: see comments "FIXME_ARROW" in src/Fl_Menu_Button.cxx and
      src/Fl_Menu.cxx
2022-11-22 19:32:54 +01:00
ManoloFLTK
4daec2a940 macOS: Fix release of extra NSView holding child widgets of GL window 2022-11-22 19:18:29 +01:00
Albrecht Schlosser
fa6d95a793 Enhance Fl_Rect: add inset() and new constructor
These new features can be used by widgets that draw inside a rectangle
taking the border width into account.
2022-11-22 19:01:39 +01:00
Matthias Melcher
495b2395c1
Fix selection extension in Fl_Text_*, issue 196 (#550)
Selecting a text range programmatically would not sync
some variables with the actual selection. This also fixes
a crash bug in macOS when dragging text that was
selected by buffer()->select() only.
2022-11-22 16:18:56 +01:00
Albrecht Schlosser
be928430a6 Fix Fl_Group::insert() and Fl_Scroll::on_move() 2022-11-20 14:11:19 +01:00
ManoloFLTK
8a53fc9611 Replace #if FLTK_USE_X11 by #ifdef FLTK_USE_X11 2022-11-20 07:33:08 +01:00
Albrecht Schlosser
f375ff9689 CMake: fix building examples w/o test programs
As reported in fltk.coredev in thread
  "CMAKE build with build examples. On and test OFF fails"

$ cmake .. -D FLTK_BUILD_EXAMPLES=ON -D FLTK_BUILD_TEST=OFF

failed with: Unknown CMake command "FLTK_RUN_FLUID".
2022-11-19 11:55:45 +01:00
ManoloFLTK
82bee7fa33 CMake: fix informative messages sent under macOS 2022-11-18 10:55:14 +01:00
ManoloFLTK
615b731783 CMake+Wayland: check for presence of required software modules
Also, remove hardcoded path to wayland-protocols when
CMake version ≥ 3.4
2022-11-18 09:10:22 +01:00
Matthias Melcher
72415b534d
Fix rearranging children in Fl_Scroll (#546)
Implement Fl_Scroll::on_move()
Fix indexing in Fl_Group::on_move()
2022-11-17 08:34:06 +01:00
ManoloFLTK
402764f5c1 Remove development stage "Using Wayland backend" message 2022-11-17 07:31:37 +01:00
ManoloFLTK
167a3268c9 Fix "Cairo: Scaled images draw with wrong size" (#537) 2022-11-17 07:14:20 +01:00
Matthias Melcher
2dae18da09
Fluid: Add Undo to formula input fields. (#547) 2022-11-17 00:43:16 +01:00
Albrecht Schlosser
624eda17bc Fix whitespace errors and dependencies
(no code changes)
2022-11-16 21:10:14 +01:00
Matthias Melcher
24c4af6440
Capitalise FLTK and FLUID. 2022-11-16 19:50:03 +01:00
Matthias Melcher
85c941b8fe
Fix capitalisation for keywords. 2022-11-16 18:14:13 +01:00
Matthias Melcher
e2a6b46f6b
Clarify two entries in the .fl file format docs 2022-11-16 17:38:17 +01:00
Albrecht Schlosser
280f3261f7 Fix typos and a minor bug in fluid/README_fl.txt
Bug fix: see "avoid_early_includes"
2022-11-16 14:41:37 +01:00
Matthias Melcher
3ecae0459c
Improve Fluid argument handling and relative paths. (#545)
Fix typos, fix merge conflict.
2022-11-15 17:48:06 +01:00
ManoloFLTK
7f8f7c5b85 Add support of .svgz image files to fluid
The  prototype of the public Fl_SVG_Image constructor is expanded
to allow construction from in-memory, gzip'ed binary data.
2022-11-15 10:09:01 +01:00
ManoloFLTK
433a8e71e8 Fix typo in Doxygen for Fl::cairo_make_current(Fl_Window*) 2022-11-15 09:49:19 +01:00
ManoloFLTK
1c448d6ff1 Fix for "Wayland-only build is not compatible with Cairo option" (#544) 2022-11-15 09:02:03 +01:00
Albrecht Schlosser
d1054c5f6c Fix yet another Visual Studio compiler warning 2022-11-14 19:08:02 +01:00
Matthias Melcher
edf7510dda
Make building Fluid optional. (#539) 2022-11-13 20:16:54 +01:00
Matthias Melcher
57f61cf5a0
Further clarify Fluid file format specifics
Remove never used options
Clarify the end of the options section
2022-11-13 15:37:49 +01:00
Albrecht Schlosser
85af0036f9 Reformat Cairo support Fl_Cairo.cxx for CMP compliance
Only formatting, no code changes.
2022-11-12 20:14:44 +01:00
Matthias Melcher
350038983f Removed FIXME comment that was already solved. 2022-11-12 15:19:08 +01:00
Albrecht Schlosser
8d636d931e Fix Visual Studio compiler warnings 2022-11-11 19:27:00 +01:00
Albrecht Schlosser
578601f062 CMake: improve debug macros 2022-11-11 17:05:11 +01:00
Albrecht Schlosser
74b9d5fb05 Remove redundant doxygen docs of fl_beep()
Also add a comment to all platform driver implementations.
2022-11-11 16:52:08 +01:00
Albrecht Schlosser
a3a60ed27c Improve and clarify documentation of fl_beep() 2022-11-11 16:43:33 +01:00
Matthias Melcher
56cba05672
Fluid Fl_Widget::image() path fixes. (#536)
* Adding strings and design file to source view panel

* Fluid: Fixed source dir recursion, fixed relative image reading path.

* Renaming source_dir to designfile_dir in some functions.
2022-11-09 23:12:55 +01:00
ManoloFLTK
f41861976b Wayland: remove unneeded friend declarations 2022-11-09 15:49:02 +01:00
Matthias Melcher
3ff8a4ae8a Fixed uninitialised variable. 2022-11-09 01:34:52 +01:00
Matthias Melcher
e6c3cae6f2 Testing emojis in test/utf8. 2022-11-08 23:55:33 +01:00
Matthias Melcher
b76152cf6c Fluid: widget classes can resize children on instantiation 2022-11-08 19:09:17 +01:00
Matthias Melcher
ec47afb7eb
Adding Fluid file format README. (#533)
* Adding Fluid file format README.

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fd.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Typos, changes, restructuring.

* Changed filename.

* More typos,

* Typo.

* Update fluid/README_fl.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fl.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fl.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fl.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fl.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

* Update fluid/README_fl.txt

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>

Co-authored-by: Peter0x44 <peter0x44@snopyta.org>
2022-11-08 18:30:44 +01:00
ManoloFLTK
a6b3903b89 Wayland + CMake: fix generated fltk-config that lacked -lX11 2022-11-08 11:37:49 +01:00
ManoloFLTK
1a41178e77 Wayland: improve processing of the -display command line argument 2022-11-08 08:16:55 +01:00
ManoloFLTK
402b08cb6e Wayland: show keyboard modifiers during mouse clicks (#534) 2022-11-08 08:09:12 +01:00
ManoloFLTK
9c793a383f Wayland: cancel drag-n-drop after Fl::pushed(0) (#525) 2022-11-08 07:22:16 +01:00
Greg Ercolano
d68f927a13 Document Fl_Multiline_Output keynav and caret cursor 2022-11-07 17:08:14 -08:00
Greg Ercolano
89e1aad897 Removed an obsolete \warning. 2022-11-07 11:28:52 -08:00
Greg Ercolano
9605b82e08 Added missing const on some methods 2022-11-07 10:59:19 -08:00
Greg Ercolano
6f24175e64 Added assignment by index example, doc clarifications. 2022-11-07 10:33:35 -08:00
Greg Ercolano
2a43a12b7b Added empty(), ensure size() enlarges new vals = 0 2022-11-07 10:33:35 -08:00
Matthias Melcher
51ce2b9235 Removed i18n from test/preferences.fl 2022-11-07 09:36:33 +01:00
ManoloFLTK
38536d8918 Fix initialisation of hybrid Wayland/X11 platform
Also, terminate Wayland drag-and-drop operation after Fl::pushed(0).
2022-11-07 09:02:22 +01:00
ManoloFLTK
089584da9f Remove Fl_X11_System_Driver.{H,o} 2022-11-07 07:08:42 +01:00
ManoloFLTK
6e9f72adce Delete src/drivers/X11/Fl_X11_System_Driver.* 2022-11-07 06:54:09 +01:00