Commit Graph

11041 Commits

Author SHA1 Message Date
Matthias Melcher bf62959f1f FLUID: New layout of Grid tab. 2023-10-22 20:25:50 +02:00
Albrecht Schlosser 1209e9dcd7 Make Fl_String and Fl_Int_Vector private (#789)
- add CMake option 'OPTION_USE_STD'
- add configure option '--enable-use_std'
- move FL/Fl_String.H to src/Fl_String.H
- move FL/Fl_Int_Vector.H to src/Fl_Int_Vector.H
- remove Fl_String from demo program examples/callbacks.cxx
- remove Fl_Int_Vector from public header FL/Fl_Table.H
- some methods of Fl_Table are no longer inline
- add CMake option OPTION_USE_STD to allow std::string in some
  selected functions and methods

Experimental, may be removed before release:

- use either Fl_Int_Vector or std::vector in Fl_Table depending
  on CMake OPTION_USE_STD or configure --enable-use_std

Move all fl_filename* functions that use Fl_String to fluid

Main changes in fluid:
 - add fluid_filename.h and .cxx
 - include "fluid_filename.h" rather than <FL/filename.H>

Update fl_input(), fl_password() and test/ask

- add maxchar parameter to fl_input() and fl_password()
- fl_input_str() and fl_password_str() are optional and return
  std::string if enabled (FLTK_USE_STD)
2023-10-22 19:35:17 +02:00
Matthias Melcher 05ac0247cb FLUID: Moves grid settings into dynamic tab 2023-10-22 12:33:49 +02:00
Matthias Melcher 17f61f923b FLUID: Adds remaining Fl_Grid attributes 2023-10-22 02:33:55 +02:00
Matthias Melcher 12c88f6506 FLUID: removes duplicate code 2023-10-22 01:57:08 +02:00
Matthias Melcher 5832f108fe FLUID: fixes conflict 2023-10-22 01:53:34 +02:00
Matthias Melcher b4fd7037ac FLUID: more Fl_Grid settings 2023-10-22 01:51:53 +02:00
Albrecht Schlosser d102e466d6 Remove duplicated code that was commented out, fix includes
... and prevent confusing doxygen
2023-10-21 21:39:36 +02:00
Albrecht Schlosser 3289c8b947 Fix compiler warning [-Wreturn-type]
"control reaches end of non-void function"
2023-10-21 21:38:38 +02:00
Matthias Melcher bbf0ea664d Removes dependency on Fl_Preferences::get/set(.., Fl_String, ...) 2023-10-21 18:41:57 +02:00
Matthias Melcher 0c35212467 FLUID: grid becomes a bit more interactive 2023-10-21 17:45:40 +02:00
Albrecht Schlosser e18762bff8 Fix fluid build with configure/make + dependencies 2023-10-21 13:26:43 +02:00
Matthias Melcher f8d7ee6f5c FLUID: adding a subset of Fl_Grid child parameters. 2023-10-21 13:20:11 +02:00
ManoloFLTK 7a434575ac Fix "Keyboard sometimes stops working after Ctrl/+ or Ctrl/-" (#794) 2023-10-21 09:46:20 +02:00
Matthias Melcher 9817536cfd FLUID: basic Fl_Grid support
* no settings for children yet
* ne good interactive editing for children
2023-10-20 19:00:52 +02:00
Albrecht Schlosser 757b5c1227 Fix ctrl/+/- in cube demo
- Fl_Grid: force layout() on resize() - needed for GL subwindows

- test/cube.cxx:
  - use end() in constructor of class cube_box
  - ensure not to change the current group when adding a button
2023-10-20 11:28:08 +02:00
ManoloFLTK 143a18ee11 Add "#define MAC_OS_VERSION_14_0 140000" to mac.H 2023-10-20 10:57:48 +02:00
Matthias Melcher 3be3a0da1e FLUID: docs, testing 2023-10-20 00:23:09 +02:00
Matthias Melcher ea88888f76 FLUID typos, comments, superfluous code 2023-10-19 23:54:37 +02:00
Albrecht Schlosser 450248d20e Check that a widget is a child of its Fl_Grid parent
... when assigning it to a cell. This is required for consistency.
2023-10-19 19:23:59 +02:00
Matthias Melcher 0fc3f7cd92 FLUID: fixes `override` handling and code duplication 2023-10-19 17:09:32 +02:00
Albrecht Schlosser 5c7ad00e07 Improve Fl_Grid example code
Add 'grid->end();' although it's redundant in this specific example.
2023-10-19 14:22:58 +02:00
Matthias Melcher ca7844cf94 FLUID now recognizes `override` and `FL_OVERRIDE` keywords (#801) 2023-10-19 12:13:46 +02:00
ManoloFLTK ff7958e57a Fix "Keyboard sometimes stops working after Ctrl/+ or Ctrl/-" (#794) 2023-10-19 11:00:30 +02:00
ManoloFLTK c1d9376934 Fix for "Keyboard sometimes stops working after Ctrl/+ or Ctrl/-" (#794) 2023-10-19 08:27:59 +02:00
Albrecht Schlosser 56af338cfd Fix Fl_Tile::set_cursor() which was broken
... since commit 6ba7b49baf.
2023-10-18 17:00:48 +02:00
Albrecht Schlosser 27a779b235 Fix trailing whitespace 2023-10-18 15:00:37 +02:00
ManoloFLTK c27009e52c launching a binary from the command line hangs on macOS Sonoma (#799) 2023-10-18 07:21:20 +02:00
ManoloFLTK 9f141aefc6 Fix drawing points in complex shape mode with Cairo (#792) 2023-10-17 21:14:34 +02:00
ManoloFLTK c62501c93a launching a binary from the command line hangs on macOS Sonoma (#799) 2023-10-17 19:02:34 +02:00
Albrecht Schlosser 49900e3710 Update documentation with Fl_Flex and Fl_Grid widgets 2023-10-17 18:24:14 +02:00
ManoloFLTK 50b04b565b Fix Crashes and warnings when Fl_Double_Window is smaller than 1x1 (#798) 2023-10-17 09:37:01 +02:00
Albrecht Schlosser 38871c5b31 Add Fl_Grid widget and test and demo programs
- FL/Fl_Grid.H: header file
- src/Fl_Grid.cxx: implementation

- examples/grid-simple.cxx: simple example program
- test/cube.cxx:            use Fl_Grid for layout
- test/grid_alignment.cxx:  test cell alignment and other functions
- test/grid_buttons.cxx:    demo program as discussed in fltk.general
- test/grid_login.cxx:      like test/flex_login.cxx but with Fl_Grid
- test/flex_login.cxx:      modified to match test/grid_login.cxx
2023-10-16 22:18:24 +02:00
Albrecht Schlosser e7b790ae31 Fix Windows (MSVC) compiler warnings
warning C4244: '=': conversion from 'double' to 'time_t',
  possible loss of data

warning C4244: 'return': conversion from 'time_t' to 'long',
  possible loss of data
2023-10-16 22:04:12 +02:00
Albrecht Schlosser 63dc3f2acb Fix compiler warning (C++11 standard)
Warning: override controls (override/final) only available with
  ‘-std=c++11’ or ‘-std=gnu++11’
2023-10-16 21:47:52 +02:00
ManoloFLTK 010b179489 Remove Doxygen warning in Fl_Tile.cxx line 185
The warning was
warning: End of list marker found without any preceding list items.
2023-10-16 21:11:34 +02:00
Albrecht Schlosser 7e71cea54a Update .gitignore files
Add missing executables
2023-10-16 21:10:27 +02:00
ManoloFLTK ae4ed35229 Add virtual void Fl_Graphics_Driver::draw_circle() 2023-10-16 20:53:55 +02:00
ManoloFLTK 15fe9d9880 Fix Drawing artifact with radio buttons under Cairo (#792) - cont'd 2023-10-16 16:38:13 +02:00
ManoloFLTK 09e06dc703 Fix indentation 2023-10-16 14:51:50 +02:00
Albrecht Schlosser 6ba7b49baf Improve subclassing cababilities of Fl_Tile (STR 2791)
- remove static variables and functions
- make move_intersection() virtual
- add (protected) cursor access methods

These changes were inspired by STR 2791 where the user proposing an
enhancement was not able to subclass Fl_Tile properly. This commit
fixes the mentioned issues and enables subclassing without copying
internal code.
2023-10-16 13:33:40 +02:00
ManoloFLTK da5331b592 Open
Fix Drawing artifact with round check buttons in menu under Cairo (#792)
2023-10-16 12:47:06 +02:00
ManoloFLTK 52f5653545 Doxygen-only: warn when current color is changed
Also, remove the statement that rectangles are drawn with 1-pixel lines
which is wrong with HighDPI displays.
2023-10-16 11:24:17 +02:00
Albrecht Schlosser 4964a15c01 Improve small radio buttons by using fl_draw_circle()
This removes duplicated code as intended when fl_draw_circle()
was introduced.
2023-10-15 12:25:21 +02:00
Albrecht Schlosser fd6accec24 Fix small circle drawing and add doxygen \since statement
src/fl_draw.cxx: improve documentation, add \since 1.4.0,
  simplify scaling code, use forgotten 'color' argument to set the
  circle color.

src/fl_draw_arrow.cxx: add doxygen \since statement
2023-10-15 11:30:19 +02:00
Matthias Melcher 56ad8f8a78 Draws nicer small circles if display is scaled up. 2023-10-14 14:57:29 +02:00
ManoloFLTK ded5839d9c Improve Fl_Wayland_Window_Driver::take_focus() 2023-10-14 09:43:35 +02:00
Albrecht Schlosser 01038e832a Fix trailing whitespace and dependencies 2023-10-13 19:08:30 +02:00
ManoloFLTK 6958e5d615 Drawing artifact with round check buttons in menu under Cairo (#792) 2023-10-13 15:30:12 +02:00
ManoloFLTK c274ae1365 Remove obsolete comments 2023-10-13 15:30:12 +02:00