summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2023-10-16Add Fl_Grid widget and test and demo programsAlbrecht Schlosser
- 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-16Update .gitignore filesAlbrecht Schlosser
Add missing executables
2023-10-16Improve subclassing cababilities of Fl_Tile (STR 2791)Albrecht Schlosser
- 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-13Fix trailing whitespace and dependenciesAlbrecht Schlosser
2023-10-13test/menubar: use popup menu default boxtypeMatthias Melcher
2023-10-07Fix STR 3458: "GLUT compatibility mode segfaults"Albrecht Schlosser
... "when there's no current window". Silently ignore GLUT function calls that need a current window if the current window is NULL, return 0 from functions that return an 'int'. Check if window is shown in Fl_X11_Gl_Window_Driver::swap_buffers(). This would issue "XRequest.nnn: GLXBadDrawable 0x0" on X11 otherwise. Note: the chosen implementation to ignore GLUT calls silently appears to be compatible with GLUT (3.7) whereas FreeGLUT 3.0 would issue error messages and exit. The latter could be implemented as well but would be much more work.
2023-09-29Draw parent window backdrop on Fl_Tabs (#718)Matthias Melcher
2023-09-26FLUID: adds greatly enhanced Shell Commands (#774)Matthias Melcher
The user can add an arbitrary number of highly configurable shell commands through the setting panel. The commands can be saved as user preferences, inside the .fl file, or exported to an external file. Shell scripts can be limited to individual platforms, can have shortcut keys, etc. . * documentation will follow * support to call `fltk-config` will follow
2023-09-26FLUID: Fixes regression #777Matthias Melcher
Wrote wrong path in #inlude statement under certain conditions. Also removed 'snap' tag if not needed.
2023-09-22Fix potential invalid stack variable access in test codeAlbrecht Schlosser
This code was (and is still) commented out but it *would* trigger a "stack buffer overflow" error *if* uncommented. The new code demonstrates how a binary object (Fl_Preferences 'bed') can be dumped to a preferences file in binary format (if activated).
2023-09-22Update dependenciesAlbrecht Schlosser
2023-09-12Fix Visual Studio shared library buildAlbrecht Schlosser
Todo: fluid-shared can't (yet) be built agains the shared fltk lib because of some linker errors. Needs investigation. Note: fluid-shared is basically a test program to demonstrate linking against the shared FLTK libs but doesn't work yet using VS (MSVC). This is no problem for the functionality.
2023-09-08Fix unittest object file list in test/Makefile (#683)Albrecht Schlosser
2023-09-05Adds some convenience methods.Matthias Melcher
fl_filename_absolute can no generate a path using arbitrary source paths. Fl_Menu_ adds find_item_with_user_data and find_item_with_argument Fl_String adds find(string, start)
2023-09-03Adds compact buttons feature to create keypads.Matthias Melcher
See test/buttons for an example.
2023-08-26Adds safe versions of fl_filename_*, returning Fl_StringMatthias Melcher
2023-08-16macOS audio is usable with XQuartzManoloFLTK
2023-08-16Allow build of sudoku app with macOS + XQuartzManoloFLTK
2023-08-15Undoing previous changesMatthias Melcher
2023-08-15Lot's of changes, must rethink UI.Matthias Melcher
2023-08-15Missing includesMatthias Melcher
2023-08-15Sudoku into smaller pieces.Matthias Melcher
2023-08-15Random testing and fixing.Matthias Melcher
2023-08-15Removed unused codeMatthias Melcher
2023-08-15Adding generatorMatthias Melcher
2023-08-15Improved, yet compatible, widget callback system using macros (#729)Matthias Melcher
* adds FL/fl_callback.macros.H * adds FL_FUNCTION_CALLBACK_n(widget, function, [type, data]) * adds FL_METHOD_CALLBACK_n(widget, class, instance, method, [type, data]) * adds FL_INLINE_CALLBACK_n(widget, [type, name, data], callback_body) * adds `examples/callback` * full documentation
2023-08-13Fl_Tabs now supports horizontal mouse wheel events.Matthias Melcher
2023-08-05Revert "#733 partial: Adds rotation gesture event on MacOS"Albrecht Schlosser
This reverts commit 3049e6394a3376f7fff1c8cde19fd7bb1a9252ec as agreed upon in GitHub Issue #733.
2023-08-05#733 partial: Adds rotation gesture event on MacOSMatthias Melcher
2023-07-19Fix missing (new) source file in fluid and dependenciesAlbrecht Schlosser
New file: Fl_Button_Type.cxx
2023-07-19FLUID: RTTI improvements, 'is_a90' now const, apply RTTIMatthias Melcher
2023-07-14FLUID: fixes all overlapping widgets in all .fl filesMatthias Melcher
Also fixes an issue with multiple use of the same variable for different types of i18n.
2023-07-12Display mouse button state in test/handle_events.cxx demoAlbrecht Schlosser
See fltk.general, thread "Is handling simultaneous Left-click and Right-click drags supported?" from Jul 12, 2023 Status: FL_DRAG operation is terminated when one mouse button is released, even if more than one button is actually down. Subsequent mouse movement is reported as FL_MOVE rather than FL_DRAG, this is under investigation.
2023-05-10Fix "Provide --without-fluid configure option" - cont'd (#725)ManoloFLTK
2023-05-09Fix "Provide --without-fluid configure option " (#725)ManoloFLTK
Add new --disable-fluid configure option.
2023-05-08Fix some but not all memory leaks in test/utf8 demoAlbrecht Schlosser
Note: Fl_Input::value() copies the string to an internal buffer, fl_strdup() before value() is not necessary.
2023-04-14test/utf8: improve use of Fl::set_fonts(const char *) across platformsManoloFLTK
2023-04-13Fix more compiler warnings (comma at end of enum)Albrecht Schlosser
These warnings are benign but ... I fixed them nevertheless.
2023-04-08Add usage example of Fl_Window::cursor(const Fl_RGB_Image *, int, int)ManoloFLTK
2023-03-22Fix test/demo for X11 on macOS (e.g. XQuartz)Albrecht Schlosser
This modification became necessary since "__APPLE__" is no longer undefined by the build system when X11 is used on macOS.
2023-03-18Fix and update alignment #346 (#701)Matthias Melcher
* interactive layout alignment rewritten * interface for new alignment rules * new alignment dialog box * user defined layout rules added * layout rules can be stored in projects, settings, and external files * Valgrind verification
2023-03-14Cairo: introduce Fl::cairo_flush() in FLTK APIAlbrecht Schlosser
Flushing the Cairo context is necessary on Windows to make Cairo drawings appear on the device (screen). This new method makes it easy for user code to do this correctly after using Cairo drawings. - add Fl::cairo_flush(cairo_t *) - document Fl::cairo_flush(cairo_t *) - reformat Cairo doxygen docs and code (partially) - use the new method in Fl_Cairo_Window - use the new method in test/cairo_test.cxx - other minor (text) changes in test/cairo_test.cxx - add test/cairo_test to the demo menu (test/demo.menu)
2023-03-12Simplify the previous Cairo drawing fix (#694)Albrecht Schlosser
The Cairo context 'cc' should be used directly rather than calling 'Fl::cairo_cc()' again. Sorry for the noise.
2023-03-12Fix Cairo drawing in test/cairo_test demo for Windows (#694)Albrecht Schlosser
On the Windows platform Cairo drawings must be flushed explicitly. This is done in Fl_Cairo_Window after calling the draw callback but it was neither done nor documented in test/cairo_test.cxx when using another type of Window with its overloaded draw() method, i.e. when FLTK was configured with --enable-cairoext or CMake OPTION_CAIROEXT. Note: user code must either explicitly flush the Cairo drawings as done here or destroy the Cairo context which is not done in this demo because the Cairo context should be kept alive.
2023-03-09Fix dependencies, typos, trailing whitespace, and formattingAlbrecht Schlosser
No code changes.
2023-03-09CMake: build shared libs with OPTION_CAIROEXT (issue #250)Albrecht Schlosser
- remove separate libfltk_cairo to avoid cyclic dependencies, but - keep a dummy libfltk_cairo in 1.4.0 for backwards compatibility - move cairo/Fl_Cairo.cxx to src/Fl_Cairo.cxx - add preliminary Cairo support for Visual Studio (MSVC) Static linking is not affected by this change, but users building with hand-made Makefiles will have to remove libfltk_cairo starting with FLTK 1.4.0. The dummy library can be linked for backwards compatibility but it will be removed later (in 1.4.x or 1.5.0). The shared FLTK library libfltk.{so|dylib|dll|..} depends on libcairo if and only if FLTK is built with one of the Cairo options. This has always been the case for OPTION_CAIROEXT but is now also true if only OPTION_CAIRO is selected, i.e. FLTK programs linked with a Cairo enabled shared FLTK library will also be linked with libcairo. The same is true for configure options --enable-cairo and --enable-cairoext, respectively. Preliminary Cairo support for MSVC now detects a Cairo installation using the CMake variable FLTK_CAIRO_DIR which must be set by the user. Note that this feature is temporary and may be changed in the future for a better and more comfortable version.
2023-02-25Add Fl_String to Fl_Preferences (#687)Matthias Melcher
2023-02-23Move animated gif images to the test/images folderAlbrecht Schlosser
... to make them accessible to the help_dialog test if built with CMake.
2023-02-23Fl_String refactoring and extension (#683)Matthias Melcher
- add true unittest and Fl_String testing - interface and printout are similar to gtest without requiring external linkage. just run `unittest --core`. - new Fl_String API - extended API to fl_input_str and fl_password_str - co-authored-by: Albrecht Schlosser <albrechts.fltk@online.de>
2023-02-07Avoid "#undef __APPLE__" preprocessor directiveManoloFLTK