Commit Graph

10990 Commits

Author SHA1 Message Date
Albrecht Schlosser
4a461efae6 CMake/Windows/MSVC: Add option to select MSVC Runtime
Selects MSVC compiler/build options known as /MT, /MTd, /MD, or /MDd.

This applies to "Visual Studio" (IDE) and "NMake Makefiles" builds.
2023-11-25 21:03:23 +01:00
Albrecht Schlosser
e8ad00d9fe CMake/Windows/MSVC: add DLL path as target property
This modifies the debug environment so demo programs linked to FLTK
DLL's can be debugged w/o copying FLTK DLL's to the build folders
of the demo programs.

This is work in progress and may be improved in a future commit but
it works as it is now for all demo programs.
2023-11-25 20:53:46 +01:00
Matthias Melcher
34ed30fe1a Adds linespacing() to Fl_Browser_ and all derived widgets 2023-11-25 18:20:08 +01:00
Greg Ercolano
0080850092 Fl_Terminal better name for flags -> charflags 2023-11-25 06:56:38 -08:00
ManoloFLTK
4f894e4745 Cairo graphics driver: Improve drawing of Fl_Pixmap and Fl_Bitmap
Previously, these objects were drawn slightly blurred on HighDPI.
This commit has them resized to the pixel size of the area where
they are being drawn and then drawn.
2023-11-25 12:09:54 +01:00
Matthias Melcher
0beab855a0 Stabilizes Fl_Tile size_range mode.
- improved documentation
- new tile resize strategy
- robust against zero sized children
2023-11-23 17:19:20 +01:00
Matthias Melcher
b6be421a1f Added safety when calling Text_Display methods
- before assigning a buffer (Github #845)
- also fixed a warning form unused arg in Fl_Terminal
2023-11-23 15:16:34 +01:00
Matthias Melcher
de2dd0cddf Adds zero size check in Fl_Tile::on_move 2023-11-23 00:03:35 +01:00
Matthias Melcher
8041a62e59 Adds Callback Reason to FAQ on Fl_Window::callback 2023-11-22 22:31:59 +01:00
Matthias Melcher
f8d915cfe6 Fixes warning in Fl_Tile by Doxygen 2023-11-22 22:17:35 +01:00
Greg Ercolano
9894812644 Make new handle_lf/cr methods private 2023-11-22 06:34:24 -08:00
Matthias Melcher
c961f84086 Fixes warning and errors. 2023-11-22 14:51:59 +01:00
Matthias Melcher
81e26b9089 Adding size range settings to Fl_Tile, initial commit.
- some documentation missing
- Fl_Tile::resize() not satisfying yet
- minimums work, maximums currently ignored
- 0 size children may make program hang
2023-11-22 14:45:13 +01:00
Greg Ercolano
9383f172a8 Fl_Terminal docs: Added some tables 2023-11-21 14:41:15 -08:00
Greg Ercolano
c568056244 Added output_translate(): controls lf -> crlf translation 2023-11-21 11:24:27 -08:00
Greg Ercolano
56e85e8522 Fl_Terminal docs for fg/bg colors 2023-11-21 09:06:46 -08:00
Greg Ercolano
11e6fb5911 Fl::check() docs fix: example indented 2023-11-20 13:36:55 -08:00
Greg Ercolano
7c95aa7c79 Change Fl_Terminal default color() 0x0 -> FL_BLACK 2023-11-20 13:33:08 -08:00
Greg Ercolano
6252131017 Solve issue 837, doc some protected methods. 2023-11-20 09:26:40 -08:00
ManoloFLTK
eb9dd202b2 Fix Fl_Wayland_Image_Surface_Driver c'tor 2023-11-20 10:56:36 +01:00
Greg Ercolano
bc8b186398 Doc all pub/prot members, remove unused, add todo
- Made sure all public+protected members are documented.

- Reclassified some private -> protected:
   > vscroll_width()

- Removed signatures for unimplemented (non-existant) methods:
   > u8c_cursor(void)
   > history_use(int,bool)
   > cursor_h()

- Reclassified some protected -> private:
   > x_to_glob_col()
   > xy_to_glob_rowcol()
   > is_hist_ring_row()
   > is_disp_ring_row()
   > handle_ctrl()
   > is_printable()
   > is_ctrl()
   ..etc..
   > handle_selection_autoscroll()
   > handle_selection()
   > is_redraw_style

- Add todo for ESC 7 and ESC 8
- Small code formatting mods
- Small typos
2023-11-19 22:46:04 -08:00
Albrecht Schlosser
8b352987f6 Fix compiler warning
"extended initializer lists only available with ‘-std=c++11’ ..."
2023-11-19 19:46:36 +01:00
Albrecht Schlosser
7e8994c4a2 Windows/MSVC: Fix wide char commandline handling (#840)
Windows programs (subsystem:windows, not Windows console programs)
compiled with Visual Studio need a WinMain entry point. The commandline
arguments handled by this function are now properly converted to UTF-8
before the standard main() entry point is called.

This applies only to Visual Studio! Note that some build systems like
MinGW and/or MSYS2 may still have issues with some Unicode (non-ASCII)
commandline arguments.
2023-11-19 19:08:53 +01:00
Albrecht Schlosser
a72eff7588 Fix compiler warnings in Fl_Terminal on Windows
- missing FL_EXPORT: Visual Studio (dll)
- missing include <stdarg.h>: MinGW
2023-11-19 17:58:57 +01:00
Albrecht Schlosser
9eaf40dd13 Small improvements of test/grid_dialog.cxx 2023-11-18 19:38:18 +01:00
Albrecht Schlosser
f19f94d284 Add Fl_Grid based dialog demo program - part 2
Add forgotten source file.
2023-11-18 18:43:54 +01:00
Albrecht Schlosser
efe3ea7115 Add Fl_Grid based dialog demo program
This is a new test program for Fl_Grid based layout and a proof of
concept for a future dialog class based on Fl_Grid.
2023-11-18 18:37:55 +01:00
Albrecht Schlosser
d446059766 Output build configuration in CMake report (#838) 2023-11-17 19:44:29 +01:00
Albrecht Schlosser
367d302b5f Apply two patches provided by user 'Andre' via mail
1. add missing FL_EXPORT to class Fl_Terminal
2. add missing test/wizard demo to test/Makefile
2023-11-17 19:27:00 +01:00
Albrecht Schlosser
44bb080c0f Remove friend declaration from Fl_Window.H (see STR 3354)
Although this was not strictly necessary I decided to implement the
proposed patch, but in a slightly different way.

This adds a static public method for internal use only but it wouldn't
do any harm if a user called it.
2023-11-17 16:55:37 +01:00
Albrecht Schlosser
a3fd63fd1d Update source URL in misc/update_config_scripts
Note: I'm not going to update our bundled files 'config.guess' and
  'config.sub' though. This should only be done if really necessary.
2023-11-17 16:12:41 +01:00
Albrecht Schlosser
6f7e1f4fb7 Enhance documentation of event processing 2023-11-17 15:25:21 +01:00
Albrecht Schlosser
c5ef206c57 Notify users that configure/make support will be dropped in 1.5.0
... as discussed in our video meeting on Nov 11.
2023-11-17 13:19:43 +01:00
Greg Ercolano
38fc08c15f Added clear(), some methods protected->public
New public methods:

    void clear(void);
    void clear(Fl_Color val);

old protected methods made public:

    void clear_screen(bool scroll_to_hist=true);      // ESC [ 2 J
    void clear_screen_home(bool scroll_to_hist=true); // ESC [ H ESC [ 2 J
    void cursor_home(void);                           // ESC [ 0 H

test/terminal modified to test these, and added separate tests
for both the API and ANSI code ways to do these ops.
2023-11-16 15:45:29 -08:00
Matthias Melcher
01d30ed9cc FLUID: inlined data can be stored compressed. 2023-11-16 13:21:17 +01:00
Matthias Melcher
d28d03e1ac FLUID: Adds wrapping to "find" in source view. 2023-11-16 11:20:42 +01:00
Matthias Melcher
348c1876e6 FLUID: Adds text attribute support to Fl_Terminal. 2023-11-16 00:42:57 +01:00
Matthias Melcher
d1d38090fb Fixes return type of Fl_Input_::dvalue() 2023-11-15 22:45:20 +01:00
Albrecht Schlosser
6f021d4830 CMake: Raise cmake_minimum_required from 3.12 to 3.15
Remove code that checks CMake versions lower than 3.15
2023-11-15 21:30:12 +01:00
Matthias Melcher
ed7c2f1464 Fixes test/terminal box type 2023-11-15 16:46:10 +01:00
Matthias Melcher
4e1f2e7568 FLUID: Removes two warnings. 2023-11-15 16:09:17 +01:00
Matthias Melcher
69189c8f07 FLUID: Fixes missing DISPLAY connection.
Fl_Terminal opens the X11 Display before shown, so we need
to generate a proxy in batch mode. This will no longer  work
when we add more Fl_Terminal attributes to FLUID.
2023-11-15 16:05:14 +01:00
Matthias Melcher
d5a9be6b5e Uses the correct Fl_Terminal type in terminal.fl as well 2023-11-15 15:59:34 +01:00
ManoloFLTK
fe0298e9e6 Doc: describe fl_disable_wayland in "Operating System Issues" section 2023-11-15 15:58:28 +01:00
Matthias Melcher
fc03d304e7 FLUID: fixing test/valuator.fl and test/tree.fl
Using Fl_Terminal widget instead of subclassing from Fl_Group
2023-11-15 15:48:22 +01:00
Matthias Melcher
4cf758f9c4 FLUID: updates file structure README 2023-11-15 15:05:38 +01:00
Albrecht Schlosser
45fd145370 Remove mention of Fl_Simple_Terminal 2023-11-15 14:11:25 +01:00
Matthias Melcher
ee0637688d FLUID: Fixes generating default templates 2023-11-15 13:43:19 +01:00
Matthias Melcher
36bd2afef5 esc character replacement 2023-11-15 13:06:50 +01:00
Matthias Melcher
dd8ac4d557 FLUID: Replaces Fl_Simple_Terminal with Fl_Terminal 2023-11-15 13:02:48 +01:00