Releases: gansm/finalcut
Releases · gansm/finalcut
0.9.1
0.9.0
What's new:
- Switched to the C++14 language standard
- Strict use of trailing return type
- The virtual window management has been completely rewritten and is now much faster
- The way a widget gets focus has been changed. Sending focus events is no longer a separate step
- Reduced number of cycles to save CPU time
- Speed up parsing of UTF-8 input
- Added a ring buffer to hold unprocessed keyboard and mouse input. Benefits: pre-allocated memory and no expensive data copying or clearing
- The output buffer queue has also been replaced with a ring buffer to improve performance
- Key sequences are now identified using a hash map to speed up escape sequence searches
- Speed up the drawing of shadows and boxes
- Text highlighting (color and style) for the
FTextView
widget FDialogListMenu
is now automatically enabled and disabled depending on the number of dialogsFFileDialog
now shows the file filter in the title bar- Virtual windows can now also be moved up from the virtual terminal area
FLineEdit
andFTextView
widgets now have additional public methods for more controlFLineEdit
can set the alignment (left, center, or right) for the content of the entry- Individual columns can now be shown and hidden in
FListView
- Widget flags are now grouped in a hierarchical structure
- New methods
removeColumn()
andremoveAllColumns()
for theFListView
to remove columns - The terminal output class (derived from
FOutput
) can now be changed using the constructor of theFVTerm
class - A new example demonstrates parallax scrolling with multi-layered stars
- A new example to view X PixMap (XPM) images in a terminal
FObject
now supports reverse iterators- The application is now notified when the focus changes in the terminal window through the new
onTermFocusIn()
andonTermFocusOut()
event methods FDialog
size and position changes are now executed immediately before terminal output to redraw mouse-based changes just before output
0.8.0
What's new:
- Support for combined unicode characters
- An FDialog object is now minimizable
- Better support for kitty terminals
- FINAL CUT now runs on GNU Hurd
- Faster key string parsing
- All buttons in the title bar are now hideable
- Dynamic adjustment of the refresh rate from 5 to 60 Hz
- A generic output queue for strings, control characters, and control sequences
- A specific padding print method sends all control codes to the terminal
- Wide strings get converted to UTF-8 text before pushing them to the output buffer to speed up the character output.
- Widgets now have the virtual method initLayout() to initialize the layout before the first drawing on the terminal
- Correct processing of multiple SIGWINCH signals sent by the gnome-terminal under Wayland.
- Prevent flickering on terminal scrolling, resizing and redrawing via ctrl-l
- Change timer from timeval to std::chrono::time_point
- The source code components are now better structured by several subdirectories
0.7.1
0.7.0
What's new:
- FWidgetColors and FColorPalette now have virtual methods so you can easily create your own color theme.
- FINAL CUT now has a dark theme
- FStyle objects for manipulating video attributes in output streams
- New widget class FSpinBox to provide spin boxes
- New widget class FComboBox to provide a dropdown list with an input field
- New widget FBusyIndicator to indicate background activity
- New class FStringStream implements input and output operations on FString based streams
- FLineEdit can obscure password inputs
- Unicode support for 8x16graph font
- The new SGRoptimizer makes it possible to combine several consecutive parameters
- A lazy initialization that is executed when show() is called
- The new class FLogger for logging, which can be redirected to different I/O channels. std::clog now streams everything to the FLogger object
- A new callback backend was implemented, which allows to call functions with an arbitrary number of arguments
- The generic data type FDataPtr is now deprecated and was completely replaced by the template class FData
- Many code improvements...
0.6.0
What's new:
- Switch the entire code base to C++11
- The Cygwin and Linux console does not use cp437 character encoding by default anymore
- print() can now get an FPoint object as an argument to change the cursor position
- By printing the new FColorPair object, you can change the foreground and background color together
- PC speaker control for the FreeBSD, NetBSD and OpenBSD consoles
- FLineEdit is now able to define a character input filter via regular expression (regex)