Commit Graph

2720 Commits

Author SHA1 Message Date
Matthias Melcher
8ec5d86fe1 MacOS: Add FL_APP_ACTIVATE and DEACTIVATE.
This event is sent on application level. Add a handler
with Fl::add_handler to receive the event.
2025-12-21 22:49:42 +01:00
Matthias Melcher
bad956cdd6 Add Fl_Gl_Window 32 bit depth buffer option. 2025-12-19 16:23:46 +01:00
Matthias Melcher
fe6838e843 Add access to a list of registered plugin klasses. 2025-12-10 21:09:13 +01:00
Albrecht Schlosser
9fa438df68 Fix doxygen warnings 2025-12-06 21:53:32 +01:00
Matthias Melcher
b2746ad286 Change arrow keys in log slider to even increments. #1232 2025-12-06 00:16:04 +01:00
Matthias Melcher
87160b6eb9 Remove boxtype linke trick.
By defining boxtypes with underscores, box
drawing cod ethat was not used was not linked,
but with the introduction of themes, all boxes
are available at all times. Reducing complexity.
2025-12-03 23:33:14 +01:00
Albrecht Schlosser
5a6a7eb009 Add background (bg) attribute to table of boxtypes
This is a first step to fix some background (re-)drawing issues in
widgets. A new bit in the array of boxtypes can be used to determine
if a particular boxtype uses a solid background (e.g. all FL_*_BOX
types) or if the parent widget is responsible for drawing it (FL_NO_BOX
and all FL_*_FRAME) types, and maybe more ...

The old struct member `set` in the struct of boxtypes has been
renamed to `flags` and is now used as a bit field.

Except these changes, this first commit fixes the focus box drawing
of specific boxtypes, as seen in unittest_schemes.cxx in the
Fl_Check_Button with label "Check", and very likely more.
2025-12-01 23:06:37 +01:00
Matthias Melcher
110857a6fc Fix names map for multiple includes. 2025-11-29 23:24:10 +01:00
Matthias Melcher
039ef2d322 Fix include fiel list. 2025-11-29 21:19:10 +01:00
Matthias Melcher
70527b3bf0 Improve access to C++ symbols.
For events, fonts, and callback reasons
2025-11-29 21:01:53 +01:00
Matthias Melcher
349b818d3f
Fluid: convert modal panels into tabs in the widget panel (#1339) 2025-11-29 12:57:08 +01:00
Matthias Melcher
ee43155a4b Add method to list running timeouts (#1306).
\see Fl::timeout_list();
2025-11-28 00:55:57 +01:00
Matthias Melcher
86b9df01ee Add initial log support for sliders (#1232).
Works for all slider types.
Adds tick marks to "nice slider".
Defaults to linear if min or max is zero.
There is room for improvement for drawing the tick marks.
2025-11-26 14:08:58 +01:00
Matthias Melcher
8dcc99279e Adjust some pen driver comments.
Made global variables private.
2025-11-20 22:24:21 +01:00
Matthias Melcher
94008f57c3 Add headline menu item style (#1059)
A menu item can be designated as a headline.
Fully integrated and used in Fluid.
2025-11-19 16:58:08 +01:00
Matthias Melcher
fa65cd6321
Add pen/stylus/tablet API and driver for macOS (#1326)
* define the pen/tablet support API
* add pen event handler stub as a fallback
* add pen device test "penpal".
* Add macOS pen/stylus/tablet driver.
* Add Oxygen documentation.
2025-11-17 21:10:01 +01:00
Albrecht Schlosser
d623ad08a9 Fix Cairo build and add FLTK_OPTION_CAIRO_WINDOW to CI build
... on GitHub (GitLab CI builds used it already)
2025-11-17 13:53:24 +01:00
ManoloFLTK
4b141bb2f8 Document with more details function fl_wl_gc() 2025-11-16 10:09:01 +01:00
Matthias Melcher
646bd55764
Refactor large static class Fl into an expandable namespace Fl (#1325)
* Change class Fl into namespace Fl.
* Untangle Fl namespace into themed headers.
* cut line count of FL/Fl.H in half
* FL/core subdirectory now holds short headers 
  grouped by functionality.
2025-11-16 01:58:54 +01:00
Albrecht Schlosser
054fc9c823 Declare some methods of Fl_Window 'const'
These Fl_Window methods are 'const' but had not been declared 'const':

- uchar get_size_range(...) const
- int shown() const
- const Fl_Image *shape() const
- int screen_num() const
- fl_uintptr_t os_id() const
2025-11-10 16:23:04 +01:00
ManoloFLTK
733511af41 Remove warnings when building Doxygen documentation. 2025-11-09 14:37:07 +01:00
Matthias Melcher
4966cc7a1e Add rule of five for Fl_Widget_Tracker.
Widget tracking is linking back to a instance of
Fl_Widget_Tracker. Copying or moving one will
potentially crash an app, so disable it.
2025-11-06 15:31:46 +01:00
Matthias Melcher
ccbb424046 Add option to uniform line drawing in scaled mode (#167) 2025-11-01 14:33:06 +01:00
Matthias Melcher
d14bd1bfec Fix comment alignment. 2025-11-01 02:13:23 +01:00
MatthiasWM
1ba957eb60 Fix MSVC Level 4 warnings (#1126) 2025-10-31 19:15:38 +01:00
Matthias Melcher
7500b3c540 Add information on Fl_Widget::type_. 2025-10-29 11:51:06 +01:00
Albrecht Schlosser
1182cd66ec Make Fl_Table::get_selection() 'const' (#1305)
See also branch-1.4 with FLTK_ABI_VERSION >= 10405:
  commit 9b9426bf6e
2025-09-05 17:38:05 +02:00
Albrecht Schlosser
53f103f2ca Fix typo in documentation 2025-08-22 20:38:59 +02:00
ManoloFLTK
5becf68c18 Fix "Callback or event on minimize of the main window " for Wayland (#1288) 2025-08-04 15:54:14 +02:00
ManoloFLTK
8463ac39ca Add detail to the documentation of the FL_HIDE event. 2025-08-03 10:01:24 +02:00
ManoloFLTK
dfe73d8ebc Document that the Wayland platform doesn't send FL_HIDE to minimized windows. 2025-08-03 09:47:58 +02:00
ManoloFLTK
86f2904858 Remove warnings triggered by -Wredundant-decls (#1277) 2025-07-16 15:13:14 +02:00
ManoloFLTK
e444371b18 Fix: Redundant redeclaration of Fl_Shortcut fl_old_shortcut(const char*) (#1277) 2025-07-15 07:21:44 +02:00
Albrecht Schlosser
3cf5a302fd Replace 'FL_OVERRIDE' with 'override' in public headers
... except FL/fl_attr.h where FL_OVERRIDE is #define'd
2025-07-08 15:25:14 +02:00
Matthias Melcher
d3dca07339 #146: Add access to scrollbars widget in Fl_Help_View
- new methods are Fl_Help_View::scrollbar()
and  Fl_Help_View::hscrollbar(), taking inspiration from
Fl_Browser.
2025-07-08 14:36:24 +02:00
Matthias Melcher
5c33d3051f Fl_Help_View: Subclassing minor comment chages 2025-07-07 15:47:00 +02:00
Albrecht Schlosser
bdde3e5d2b Fl_Table_Row: replace private class CharVector with std::vector
FL/Fl_Table_Row.H: use `std::vector<uint8_t> _rowselect;`,
  remove declaration of class `CharVector`

src/Fl_Table_Row.cxx: remove implementation of class `CharVector`,
  simplify loops (use range based for loops),
  use resize() to change vector size.

Unify copyright year of Fl_Table* headers and implementation.
2025-07-07 14:55:55 +02:00
Albrecht Schlosser
51cca24d04 Add missing and remove unnecessary #include statements
Note: if user code requires a header, then user code must #include it.
2025-07-07 11:58:49 +02:00
Matthias Melcher
2a1677802f Fl_Help_View: Restoring bad includes for back compatibility 2025-07-05 20:39:55 +02:00
Matthias Melcher
e12c42a0cd Fl_Help_View: Revert some changes 2025-07-05 19:47:03 +02:00
Matthias Melcher
ccc294f9f7 Fl_Help_View: Thin out header file
- remove unnecessary include.
2025-07-05 17:48:30 +02:00
Matthias Melcher
5fb38897b7 Fl_Help_View: Refactor to use PIMPL
- using a Pointer to Implementation instead of having
a huge Fl_Help_View class. This improves build speed
(smaller header fiel) and allows us to fix the
implementation while keeping the ABI unchanged.
2025-07-05 17:35:41 +02:00
Matthias Melcher
b28afecb46 Fl_Help_View: C++ formatting fix. 2025-07-05 15:29:42 +02:00
Matthias Melcher
5d9961c1c3 Fl_Help_View: Finl formatting and documentation
- restructure header file
- sort source file reflecting header
- documentation of text selection
2025-07-05 15:25:11 +02:00
Matthias Melcher
d3c6135c08 Fl_Help_View: Improve selection
- users can now select text in multiple Help Views
- users can now select text that is also a link
- selections draws dimmed if not focused
2025-07-05 13:42:28 +02:00
Matthias Melcher
53665045d3 Fl_Help_View: Changes some more formatting
- streamlines callbacks
- removes unused function
- header file not finished yet!
2025-07-04 16:31:59 +02:00
Matthias Melcher
4e1450d750 Fl_Help_View: Refactoring static sizes
- replaced Fl_Int_Vector with std::vector<int>
- removed static buffers in path arrangement methods
- NULL to nullptr
2025-07-03 19:58:56 +02:00
Matthias Melcher
f0fa9fc8f8 Fl_Help_View: Improve formatting and Doxygen comments 2025-07-03 13:55:29 +02:00
Matthias Melcher
872e2b8fb6 Fl_Help_View: Refactor more strings and dynamic lists. 2025-07-03 00:39:53 +02:00
Matthias Melcher
5919dbb6af Fl_Help_View: Reformat and comments 2025-07-02 22:59:46 +02:00