summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-02-08Fix for issue #373 apparent with macOS platform and SDK ≤ 10.13ManoloFLTK
Many thanks to @CendioOssman for finding the cure.
2022-02-06OpenGL implementation of all `fl_` "Drawing Fast Shapes" graphics calls (#385)Matthias Melcher
* Fix build system for unites, * Updated unittest to check OpenGL drawing. Making sure that OpenGL drawing is exactly the same as native drawing to make FLTK widget rendering look the same in GL windows. * Make OpenGL optional. * Implemented clipping in OpenGL * unites drawing fast shapes * Fixed CMake * Updating unittest. Added tests for fl_pi and fl_arc (int) Renamed tab to render complex shapes. * Improved OpenGL FLTK drawing emulation. * Fixed GTK ROUND DOWN BOX * Fixing Makefile for unittest * Correctly aligning OpenGL text. * Fixed text alignment in GL windows. Explained the "FLTK over GL " example in Cube. * Overlapping test. * Better GL graphics alignment. * Drawing the focus rect. * Adding Alpha Channel support for GL. * Added FLTK-on-GL documentation.
2022-02-05CMake: Remove unnecessary file from build systemAlbrecht Schlosser
Remove macOS warning "ranlib: file ... has no symbols".
2022-02-05Minor improvement in Fl_Mac_App_Menu::custom_application_menu_items().ManoloFLTK
2022-02-03Rearrange "Print Button Window" functionsAlbrecht Schlosser
- Rename Fl_Screen_Driver::print_or_copy_window() to fl_print_or_copy_window() - Add header file src/print_button.h - Update dependencies
2022-02-03Fl_Preferences (X11): Fix detection of preferences directoryAlbrecht Schlosser
- Fix compiler warning [-Wmaybe-uninitialized] for variable home - Reformat enum 'Root' for better readability - Add new enum values CORE_SYSTEM_L and CORE_USER_L - Improve documentation (deprecated and new enums) - Initialize internal static variable 'filename' which could be used uninitialized and thus return any previous value (type == MEMORY)
2022-02-03Fl_Timeout: Remove compiler warning [-Wclass-memaccess]Albrecht Schlosser
Also: fix doxygen warning
2022-02-03Remove platform #ifdef from macOS native filechooserAlbrecht Schlosser
2022-02-03Reorganize classes Fl_System_Driver and Fl_Screen_DriverManoloFLTK
These virtual members are moved from Fl_Screen_Driver to Fl_System_Driver - wait(double) - ready() These virtual members are moved from Fl_System_Driver to Fl_Screen_Driver - copy(const char *stuff, int len, int clipboard, const char *type) - void paste(Fl_Widget &widget, int clipboard, const char *type) - clipboard_contains(const char *type) - clipboard_notify_change() These members are moved from Fl_X11_Screen_Driver to Fl_X11_System_Driver - poll_or_select_with_delay(double time_to_wait) - poll_or_select() and are made virtual in preparation for the introduction of class Fl_Unix_System_Driver.
2022-02-02Add platform-independent Fl_Screen_Driver::print_or_copy_window().ManoloFLTK
This member function is available for all platforms to print or copy the front window with or without its titlebar.
2022-02-02macOS: add "Toggle printing of titlebar" to application menu - cont'd.ManoloFLTK
2022-02-02macOS: add "Toggle printing of titlebar" to application menu.ManoloFLTK
2022-02-01CMake: Fix image libraries build if fallback is usedAlbrecht Schlosser
The CMake instructions would use the wrong image libs (png, jpeg, zlib) if the fallback was active (OPTION_USE_SYSTEM_XXX) was true but the header files were not present. This had already been fixed for jpeg but not for the other two libs. This commit rearranges the logic for all three libs. Add information about builtin or system libraries to config summary.
2022-01-31Consolidate timeout handling across platforms (#379)Albrecht Schlosser
Add Fl_Timeout class Move platform independent code of Fl::wait() to main part - basic timeout handling - Fl::run_checks() - Fl::run_idle() - Fl::idle() - waiting time calculation (next timeout) - remove platform dependent "screen driver" stuff
2022-01-30Adding Text_Display color variables. (#384)Matthias Melcher
2022-01-27Background color attribute for Fl_Text_Display. (#378)Matthias Melcher
* Background color attribute for Fl_Text_Display. * Adding attributes. * Avoid clipping horizontal * Fl_Text_Display underlining. * Better line positions * Typos, testing. * Documentation.
2022-01-26Fix for #381, `backward` function crashMatthias Melcher
when no menu item is selected.
2022-01-23Preferences XDG path (#377)Matthias Melcher
* Preferences: remove CamelCase from public interface. * Prefs: documentation. * Prefs: updating Doxygen comments * XDG conforming preferences path
2022-01-23Remove experimental platforms Android, Pico, SDL (PR #376)Albrecht Schlosser
... as discussed in fltk.coredev: "FLTK 1.4.0 release schedule" https://groups.google.com/g/fltkcoredev/c/PDbHTRpXVh0/m/JqboexZ_AwAJ
2022-01-21Fix compiler warnings [-Wunused-variable]Albrecht Schlosser
... and missing return value [-Wreturn-type]
2022-01-19Fixing and upgrading Fl_Preferences (#374)Matthias Melcher
* Added filename function to Fl_Preferences Static function to get filename before opening. Member to get filename after opening. Bug fixes for memory mapped preferences. * ERROR is a macro on Windows, don't use it * Added Fl_Preferences::dirty(). User can now check if the database will be written when flushed or destroyed. Flush returns a crude error code. * Fl_Preferences::get binary data returns # of bytes read. * Verified group deletion code * Fl_Preferences ignores locale. This will make .prefs files interchangeable between different computers. * Updating the Preferences Mode to ignore locale. * Fixes in docs.
2022-01-16Rename FL/Fl_String_class.H to FL/Fl_String.HAlbrecht Schlosser
This is part 2 of the final fix for a previous name clash on case insensitive file systems (fl_string.h vs. Fl_String.H).
2022-01-16Rename FL/fl_string.h to FL/fl_string_functions.hAlbrecht Schlosser
This is part 1 of the final fix for a previous name clash on case insensitive file systems (fl_string.h vs. Fl_String.H).
2022-01-16Improve Fl_GTK_Native_File_Chooser_Driver in relation to FLTK windows.ManoloFLTK
Implement a new way to make the GTK file-chooser window modal-like by preventing any event processing by other FLTK windows. The new way is also no longer X11-specific.
2022-01-16Improve kdialog-based native file chooser.ManoloFLTK
Processing of all FLTK events as well as window resizing while the file chooser runs is suspended, Normal event processing and resizing is restored when chooser closes.
2022-01-14Move make_transient() to Fl_Posix_System_Driver from Fl_Screen_DriverManoloFLTK
2022-01-14Improve focus box drawing and documentationAlbrecht Schlosser
Add new method Fl_Widget::draw_focus(Fl_Boxtype t, int x, int y, int w, int h, Fl_Color bg) ... with background color for correct contrast testing (in Fl_Tabs) Draw the focus box of the "tabs" of Fl_Tabs widgets with the correct boxtype and background color. Make 'unsigned int visible_focus()' const so it can be used in 'const' methods. Do not draw the focus box if the per-widget focus box option is off.
2022-01-13Fixes #369Greg Ercolano
2022-01-13Fixes #362Greg Ercolano
2022-01-13Fixes issue #361.Greg Ercolano
2022-01-08Input Method support: have the auxiliary window follow when the focus window ↵ManoloFLTK
is moved.
2022-01-08Remove obsolete (dead) code from Fl_Group.cxxAlbrecht Schlosser
This code had been inactive at least since Mar 29, 2018.
2022-01-07Re-organize cross-platform support for text input methods.ManoloFLTK
FLTK 1.3 supports complex text input methods (TIMs) for the 3 platforms (X11, Windows, macOS). This support has an interface with FLTK that is common for X11 and Windows, via (undocumented) functions fl_set_spot(), fl_set_status() and fl_reset_spot(). In contrast, and because it's been developed independently, the interface between the macOS TIM and FLTK 1.3 is completely different : static functions FL::insertion_point_location() and Fl::reset_marked_text(). The present change implements a single TIM/FLTK interface used by all platforms based on functions fl_set_spot() and fl_reset_spot(). The previous macOS-specific functions FL::insertion_point_location() and Fl::reset_marked_text() are maintained only for compatibility with 1.3 and deprecated.
2022-01-07Add virtual void Fl_Graphics_Driver::set_status() and implement for X11 ↵ManoloFLTK
platform.
2022-01-05Fix whitespace and Makefile dependenciesAlbrecht Schlosser
No code changes
2022-01-04Fix build error with CMake when libjpeg???-dev package is absent from the ↵ManoloFLTK
system (Linux). The error was visible under Linux if OPTION_USE_SYSTEM_LIBJPEG and OPTION_BUILD_SHARED_LIBS are on.
2022-01-02Text input method for X11: fix for case when text widget is inside subwindow.ManoloFLTK
2021-12-29 Fix fullscreen window level corner cases on macOS - cont'dManoloFLTK
See long discussion in PR#277 at https://github.com/fltk/fltk/pull/277
2021-12-20Fix compiler warning [-Wignored-qualifiers]Albrecht Schlosser
In function ‘int glutExtensionSupported(const char*)’: warning: type qualifiers ignored on cast result type
2021-12-20GitHub #328: removed stray ';' in Fluid code generation.Matthias Melcher
2021-12-19Update fluid generated and .fl files (remove mac_shell...)Albrecht Schlosser
Commit updated .cxx files in src/ with fixed indenting Remove `mac_shell_*' statements from fluid (.fl) files
2021-12-19Fix for issue #344 : New/Delete Type Mismatch on WindowsManoloFLTK
2021-12-19Add check against NULL pointer (fix for issue #338).ManoloFLTK
2021-12-18Generate FL/fl_config.h rather than FL/abi-version.hAlbrecht Schlosser
... as discussed in fltk.coredev in thread "RFC: introduce public config header <FL/fl_config.h>", see: https://groups.google.com/g/fltkcoredev/c/xLCs1AIXMVo/m/MHZpQggzAQAJ - Rename abi-version.h to fl_config.h, rename input files, update dependencies, .gitignore, CMake, configure and Makefiles. - Include Cairo options in FL/fl_config.h - Rename FLTK_USE_CAIRO to FLTK_HAVE_CAIROEXT for consistency. - Include <FL/fl_config.h> in config.h and wherever necessary, fix include order (move FL/Fl.H to the top) and more. - Move USE_X11 to fl_config.h and rename to FLTK_USE_X11 - Do not include <config.h> in Cairo demo program which is no longer required in Cairo programs since FLTK 1.4.0
2021-12-17Updated Unicode utf8 byte limit in docs.Matthias Melcher
2021-12-17GitHub #233, documenting style buffers and utf8.Matthias Melcher
2021-12-17Fix broken buildAlbrecht Schlosser
sorry for the noise
2021-12-17Forms compatibility: use as_window() rather than type()Albrecht Schlosser
... and some more improvements and minor changes. No functionality changes. Note: this code is used in the fltk_forms library.
2021-12-17Fix a tiny documentation bugAlbrecht Schlosser
2021-12-17macOS platform: fix for issue #325 Disabling IM disables Greek and Cyrillic ↵ManoloFLTK
layouts Thanks to Pierre Ossman who gave the fix.