Commit Graph

1186 Commits

Author SHA1 Message Date
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
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
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
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
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
Albrecht Schlosser
4b315d190c Fix dependencies and whitespace issues 2023-11-14 18:14:48 +01:00
Matthias Melcher
aa2d058f10 FLUID: Removes non-obvious option "Cancel Dialog"
from message boxes, pointing out potential syntax errors
in code related dialogs.
2023-11-07 14:52:01 +01:00
Matthias Melcher
5667dfc51b FLUID: More user documentation 2023-11-07 14:28:22 +01:00
Matthias Melcher
d7768b76d0 FLUID: Adds template for tutorial.
Tutorial still to be written.
Also adds convenience methods to Fl_Input_
for getting and setting numeric values.
2023-11-07 14:28:22 +01:00
Matthias Melcher
c86ca1a9fc FLUID: '\r' (CR) is skipped when reading project files
Project and code files are now always written with LF instead of
CRLF, even on MSWindows machines.
2023-11-06 11:36:02 +01:00
Matthias Melcher
e690e76da1 FLUID: Adds undo for all grid operations. 2023-11-05 22:19:03 +01:00
Matthias Melcher
95daa77c49 FLUID: Fixes undo/redo mixup.
If undo or redo menu is deactivated, fltk resends undo events
as redo and vice versa, so instead now we just beep.
2023-11-05 22:19:03 +01:00
Matthias Melcher
1f5472a7d3 FLUID: Adds transient cells to Fl_Grid
This allows multiple widgets to occupy a single cell which is
needed when moving cells across the grid interactively.
2023-11-05 20:04:49 +01:00
Matthias Melcher
a31409f7bb FLUID: Documentation 2023-11-05 16:12:15 +01:00
Matthias Melcher
681363849c FLUID: Adds missing Include for MSWindows. 2023-11-05 15:00:44 +01:00
Matthias Melcher
032d3f5cf4 FLUID: Fixes child properties reader. 2023-11-05 14:53:47 +01:00
Matthias Melcher
8c87427403 FLUID: Separates developer and user documentation 2023-11-05 14:20:13 +01:00
ManoloFLTK
4b55a5af63 Fix "overlay dotted line rendering problem" (#816) 2023-11-04 06:52:23 +01:00
Matthias Melcher
c22a7bb6a7 FLUID: Restructures user documentation. 2023-11-02 22:25:54 +01:00
Matthias Melcher
7c6266f67e FLUID: Simplifies and improves Ghosted Outlines 2023-11-02 17:45:36 +01:00
Matthias Melcher
9ca4aed1fa FLUID: Adds more interactive editing to Fl_Grid
* this commit introduces a few FIXMEs and TODOs that probably
can't be solved until we do some major refactoring. They work for
now, but adding more layout controlling widgets will be hard.
2023-11-02 15:18:09 +01:00
Matthias Melcher
fb6c38b1a4 FLUID: Arrow keys move widgets inside Fl_Flex 2023-11-01 23:34:53 +01:00
Matthias Melcher
904d25dafe FLUID: Improves adding widgets to Fl_Flex. 2023-11-01 20:17:08 +01:00
Matthias Melcher
aaaf0a0537 FLUID: Adds options to draw ghosted outlines. 2023-11-01 17:22:40 +01:00
Matthias Melcher
5f836377a0 FLUID: Adds options to draw ghosted outlines. 2023-11-01 17:22:40 +01:00
Matthias Melcher
8bd1bd7162 FLUID: Improves interactive handling of Grid and Flex 2023-10-31 22:00:38 +01:00
Matthias Melcher
4b02c36149 FLUID: Disables MergeBack.
I decided to disable MergeBack for now. During testing,
some issues could not be resolved, and focus should
be on V1.4.
2023-10-31 19:33:50 +01:00
Matthias Melcher
a2d7fde645 FLUID: Stroe uid's in hex 2023-10-31 11:21:13 +01:00
Matthias Melcher
2dc7ae8edb FLUID: Changes uid to hexadecimal in project file
for constancy with the code file
2023-10-28 22:52:01 +02:00
Matthias Melcher
961d9ee719 FLUID: Store path to last written code file.
After some discussions it became clear that the code file may be written
into an unpredictable location by the build system. Fluid now remembers
that location in a user setting file and seems to do the expected thing after
a brief test.
2023-10-27 22:51:35 +02:00
Matthias Melcher
900337f1e3
FLUID: Fixes compile error. 2023-10-27 19:06:25 +02:00
Matthias Melcher
4b5985eb49 FLUID: Fixes issues when pasting widget into Fl_Flex #809
* new virtual function layout_widget() to inform parents after
all children were added
2023-10-27 18:31:20 +02:00
Matthias Melcher
aab6afd32c FLUID: Documentation and typos. 2023-10-27 16:09:06 +02:00
Matthias Melcher
0b408792c0 FLUID: Refactors MergeBack
* moved functionality into its own files
* refactored all methods to be less than a page
* documented all calls
* tested all situations I could think of
2023-10-26 23:31:29 +02:00
Matthias Melcher
8663b86749 FLUID: Fixes compile time error and docs. 2023-10-26 14:41:33 +02:00
Matthias Melcher
19d1e3f195 FLUID: Adds more capabilities to MergeBack.
* better diagnostic dialog texts in interactive mode
* won't merge back again after a first mergeback is applied
* code needs refactoring and must be in its ow source file
2023-10-26 14:15:58 +02:00
Matthias Melcher
0d5ae9ceac FLUID: Fixes warnings. 2023-10-26 03:29:03 +02:00
Matthias Melcher
f33dfc1c6a FLUID: Adds helpful message for MergeBack. 2023-10-26 03:19:05 +02:00
Matthias Melcher
6d5021c00e FLUID: Adds initial MergeBack feature. 2023-10-26 00:39:10 +02:00
Matthias Melcher
b270e1409c FLUID: Adds hierarchical node search in header files. 2023-10-25 14:44:02 +02:00
Matthias Melcher
8c03cb7884 FLUID: Updates file format documentation 2023-10-25 14:28:22 +02:00
Matthias Melcher
38b529c01b FLUID: Adds text search to source, header, and project view 2023-10-24 16:14:30 +02:00
Matthias Melcher
238b3a1be4 FLUID: Adds Reveal button to SourceView
Position your text cursor in the source header, or
.fl project file text preview and click reveal, and the
corresponding node will be selected. Double will
open the corresponding editor.
2023-10-24 15:36:11 +02:00
Matthias Melcher
e8d218109e FLUID: Adds much more detailed CodeView
in preparation for "find" and "reveal"
2023-10-24 14:29:01 +02:00
Matthias Melcher
434e6a09ed FLUID: Merging changes from generated cxx file back to fl file 2023-10-23 18:32:26 +02:00
Matthias Melcher
b9758f564f FLUID: Fixes two minor bugs
* Fl_Grid mixed up gap_ro_ vs. gap_col_ once
* Code formatting warning
2023-10-23 18:28:52 +02:00
ManoloFLTK
975ebaaf8b Remove "double to int conversion" warnings 2023-10-23 16:42:08 +02:00
Matthias Melcher
667d5b9b72 FLUID: Fixes completion dialog, early shell read.
* when saving the source code from a shell command, the
  completion dialog is  suppressed because the shell window
  pops up anyway, confirming our action
* when reading no project at startup, the user shell commands
  were read, but the shell main menu was not updated
2023-10-23 11:46:56 +02:00
Matthias Melcher
17baeceb7a FLUID: Positioning grid cells intuitively.
User can now drag widgets from the toolbox into the grid
or use the context menu to add them into the corresponding
cell. If no position is indicated, now children are added at the
first free cell.
2023-10-23 01:36:55 +02:00
Matthias Melcher
ab6ef9d52f FLUID: Stops overriding Ctrl-0 shortcut. #802
Ctrl-0 is used by FLTK globally to zoom all windows back to 100%,
so FLUID should not override that. Loading the previous file is now
Ctrl-1 instead of Ctrl-0.
2023-10-23 00:52:30 +02:00
Matthias Melcher
d573bfe799 FLUID: Adds grid child positioning via +/- keys 2023-10-23 00:44:26 +02:00
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
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
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
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
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
Matthias Melcher
0fc3f7cd92 FLUID: fixes override handling and code duplication 2023-10-19 17:09:32 +02:00
Matthias Melcher
ca7844cf94 FLUID now recognizes override and FL_OVERRIDE keywords (#801) 2023-10-19 12:13:46 +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
Albrecht Schlosser
01038e832a Fix trailing whitespace and dependencies 2023-10-13 19:08:30 +02:00
Matthias Melcher
58b13b868e FLUID: allow mousewheel events on coordinate input
MACOS: make sure that even small mouse wheel deltas count at least as 1 unit
2023-10-13 13:59:01 +02:00
Matthias Melcher
d93b991e5c FLUID: Settings dialog is now resizable 2023-10-12 00:09:48 +02:00
Matthias Melcher
e2c2ba7773 FLUID: adds better zoom icon 2023-10-11 23:21:16 +02:00
Matthias Melcher
ac047172b9 Removes stray files. 2023-10-06 15:39:53 +02:00
Matthias Melcher
068e10326e FLUID: typo 2023-10-06 13:47:26 +02:00
Albrecht Schlosser
bb7c68a477 Update dependencies 2023-09-27 16:49:46 +02:00
Matthias Melcher
371ff17639 FLUID: fixing settings dialog update 2023-09-27 13:14:09 +02:00
Matthias Melcher
e68f5e6c42 FLUID: minor fixes 2023-09-27 12:57:12 +02:00
Matthias Melcher
71b8e77935
FLUID: adds greatly enhanced Shell Commands (#774)
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-26 16:01:03 +02:00
Matthias Melcher
2c528b816c FLUID: Typos in docs 2023-09-26 12:39:52 +02:00
Matthias Melcher
0a2f05a2fe FLUID: Fixes regression #777
Wrote wrong path in #inlude statement under certain
conditions. Also removed 'snap' tag if not needed.
2023-09-26 00:29:26 +02:00
Albrecht Schlosser
43ff6f0c32 Update dependencies 2023-09-22 14:03:34 +02:00
Albrecht Schlosser
ede381c005 Fix Visual Studio shared library build
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-12 23:18:46 +02:00
Matthias Melcher
14f85de28f FLUID: Fixes visibility of Compact button 2023-09-07 16:06:32 +02:00
Matthias Melcher
a683752e4b Fixes warning on unused variable. 2023-09-05 15:31:09 +02:00
Matthias Melcher
2e38007d1f FLUID: increases readability
- removed some direct filename manipulation
- central place to generate file names and paths
- fixes command line filename override if no actual
  batch command is given
2023-09-05 15:11:09 +02:00
Matthias Melcher
5e8adebac2 Adds compact buttons feature to create keypads.
See test/buttons for an example.
2023-09-03 00:09:40 +02:00
Matthias Melcher
6beddb9d5c FLUID: fixes resizing of preferences panel 2023-08-29 23:13:43 +02:00
Matthias Melcher
b5a1da9612 FLUID: minor fixes 2023-08-29 22:50:12 +02:00
Matthias Melcher
b92c8ed6ff FLUID: adds missing include for other platforms 2023-08-29 02:27:13 +02:00
Matthias Melcher
814d642e5d FLUID: separate SourceView panel into its own file
hereby removing almost 200 lines of unrelated code form fluid.cxx
and making the location of the panel code more obvious.
Needs a make depend on Linux.
2023-08-29 02:20:50 +02:00
Matthias Melcher
33353550d9 FLUID: code cleanup, redundancies, typos 2023-08-29 01:38:39 +02:00
Matthias Melcher
496289fd35 FLUID: simplifies filename handling 2023-08-29 01:38:39 +02:00
Matthias Melcher
5da15de174 FLUID: simplified worker handling 2023-08-29 01:38:39 +02:00
Matthias Melcher
3ed43363cd FLUID: fixes file path calculation bug 2023-08-26 16:10:02 +02:00
Matthias Melcher
94a75b012f Fixes a bunch of typos in comments. 2023-08-26 15:17:28 +02:00
Matthias Melcher
34db9e8bf7 FLUID fix: sets initial size range for windows 2023-08-15 23:12:39 +02:00