Commit Graph

231 Commits

Author SHA1 Message Date
Markus Gans 298755a0fe Replacing null-terminated wide strings with FString objects 2019-10-01 23:14:00 +02:00
Markus Gans 8c67f64db4 Support for displaying full-width characters 2019-09-28 03:13:06 +02:00
Markus Gans e15f1a344a Minor code changes 2019-09-09 19:13:38 +02:00
Markus Gans bc3afa6235 Remove #pragma pack() directive lines 2019-09-08 02:04:24 +02:00
Markus Gans 69db7417ad Removing public + protected data members from classes 2019-09-01 23:29:27 +02:00
Markus Gans 37ed970319 More use of direct initializations 2019-08-25 22:16:00 +02:00
Markus Gans ad2766e706 Solved problem detecting terminal size on quick changes 2019-08-18 02:04:44 +02:00
Markus Gans 44e157e493 Converts getHotkeyPos() for sharing into a non-member function 2019-08-11 20:07:39 +02:00
Markus Gans 5a43a018cf FRect has now got a scaleBy() method 2019-08-11 18:15:57 +02:00
Markus Gans 77b76b7a2a Reduce the number of interface parameters 2019-08-04 23:38:47 +02:00
Markus Gans 2b9c64a445 Reduce include entries in the header files 2019-07-21 23:31:21 +02:00
Markus Gans c49252ab45 Add a unit test for FTermOpenBSD to test the OpenBSD and NetBSD console 2019-07-14 23:05:54 +02:00
Markus Gans ff9673d262 Reduces the use of raw loops 2019-07-14 18:30:35 +02:00
Markus Gans d91cd10311 Printing FColorPair to change foreground and background color 2019-01-30 12:17:48 +01:00
Markus Gans 96cdaa2450 Print function can set the cursor position with an FPoint 2019-01-27 13:44:13 +01:00
Markus Gans eeb32bd66e More accurate interfaces through the strict use of FPoint() and FSize() 2019-01-21 03:42:18 +01:00
Markus Gans 016f15c860 Generalize hide() method 2019-01-11 22:16:59 +01:00
Markus Gans 60e64be37b Better widget visibility handling with the methods hide() and show() 2019-01-09 20:05:29 +01:00
Markus Gans 6a91738f48 Improvement in widget focusing 2019-01-07 05:03:00 +01:00
Markus Gans c365f07298 Better background color for all terminals with a fixed color palette 2019-01-03 20:56:09 +01:00
Markus Gans 250c04cefd Small data type changes 2018-12-28 22:57:43 +01:00
Markus Gans 831e9fe05e Global use of FDataPtr for void* 2018-12-27 00:14:46 +01:00
Markus Gans 2a06915f1c Use constexpr for fixed values 2018-12-26 23:41:49 +01:00
Markus Gans 9a694ab267 New event FUserEvent for user-defined events 2018-12-24 18:11:16 +01:00
Markus Gans 81a4e72916 bool on -> bool enable 2018-12-22 23:50:10 +01:00
Markus Gans ae38a45a5e Improve FButton mouse click animation 2018-12-17 00:50:24 +01:00
Markus Gans cef13611d1 Use of the C++11 auto specifier in the program code 2018-12-15 00:50:09 +01:00
Markus Gans 6ce8c5cb27 Use nullptr instead of 0 to initialize a pointer values 2018-12-10 01:48:26 +01:00
Markus Gans 7ef9b154b9 Better handling of the scrollbar maximum 2018-12-09 18:24:31 +01:00
Markus Gans 3537152c28 Use delegated constructors and in-class default member initializers 2018-12-03 03:22:36 +01:00
Markus Gans 820ef81377 bad_alloc_str in now usable in the entire namespace finalcut 2018-11-22 21:51:32 +01:00
Markus Gans 1f64843fb6 New type FKey for key inputs 2018-11-21 20:07:08 +01:00
Markus Gans baabf9546e FButton now uses the widget flags directly 2018-11-05 23:19:03 +01:00
Markus Gans f7a75247ef struct widget_flags is now a public type 2018-11-04 23:12:41 +01:00
Markus Gans 5a356664b2 The widget flags are now stored in a bit field 2018-11-04 23:00:06 +01:00
Markus Gans 5d134793cf FTerm is now a data member of FVTerm 2018-10-29 00:45:45 +01:00
Markus Gans e359d16417 Some code formatting 2018-10-24 00:16:45 +02:00
Markus Gans 540291b410 Moving static attributes from FApplication to FWidget 2018-10-21 21:06:52 +02:00
Markus Gans cfc1c4ef25 change from int to std::size_t for width or height 2018-10-14 06:25:33 +02:00
Markus Gans 8407a9d2b6 Extract FTerm data members into the data class FTermData 2018-10-01 22:27:54 +02:00
Markus Gans b0039e78c4 The entire library source code is now encapsulated under the namespace finalcut 2018-09-20 23:59:01 +02:00
Markus Gans 0a5d5aa59c Removes the deprecated keyword "register" 2018-09-12 22:51:15 +02:00
Markus Gans 03c3c79946 Struct to pass the FOptiAttr environment 2018-06-25 00:14:53 +02:00
Markus Gans b05873babb Methods outsourcing from FTerm to FTermXTerminal 2018-05-20 15:15:42 +02:00
Markus Gans a41f8a611c Some protected data members in FTerm moved to private 2018-05-06 21:41:55 +02:00
Markus Gans dff46376bf Unit tests update 2018-03-30 00:12:20 +02:00
Markus Gans d8a6c25ce0 Refactoring of some functions 2018-02-11 23:41:23 +01:00
Markus Gans 2af1b1d0d4 Refactoring FOptiMove::verticalMove and FOptiMove::horizontalMove 2018-02-10 17:35:09 +01:00
Markus Gans bce4021f45 Refactoring FSwitch::drawCheckButton and FWidget::redraw 2018-01-31 00:17:00 +01:00
Markus Gans 421314e89a Fixes compiler errors for latest Cygwin versions 2018-01-24 00:25:32 +01:00
Markus Gans d84132816f The Final Cut can now also be compiled under Cygwin 2018-01-21 16:25:19 +01:00
Markus Gans ec63b0039e The Final Cut can now also be compiled under Cygwin 2018-01-21 16:21:41 +01:00
Markus Gans 3b90af9efb Replace the switch-case in the calculator example by an STL map with method pointers 2017-12-30 21:27:17 +01:00
Markus Gans 212172f522 Refactoring FListBox::drawList and FListBox::onKeyPress 2017-12-03 21:06:21 +01:00
Markus Gans 1f8894b801 Refactoring FApplication::linuxModifierKeyCorrection and FVTerm::updateVTerm 2017-12-02 18:52:51 +01:00
Markus Gans 6be608ba57 Improved code alignment 2017-11-26 22:37:18 +01:00
Markus Gans 051fbab046 Remove duplicated code in FVTerm::print 2017-11-22 23:56:21 +01:00
Markus Gans d8759ff51d Splitting the FString example into sub-functions 2017-11-19 19:47:24 +01:00
Markus Gans 9c987ca49c Improved command line paramenter handlin 2017-11-18 02:34:41 +01:00
Markus Gans 129384d416 Version 0.4.0 2017-11-04 07:03:53 +01:00
Markus Gans aa4caf4fcb Bug: The window example called a callback method after child data was deleted 2017-11-03 22:57:40 +01:00
Markus Gans 19c8dd50a9 Move fonts into the root directory 2017-11-02 16:05:34 +01:00
Markus Gans b0b44582e8 Fix scrollview functionality with new inheritance structure 2017-10-30 20:29:00 +01:00
Markus Gans 3746dac885 FWidget now inherits directly from FObject 2017-10-27 23:28:37 +02:00
Markus Gans 975212bac0 mouse support for coordinates > 255 and copyright informations 2017-10-02 10:01:58 +02:00
Markus Gans 28f3de0971 All include files were moved to a separate director 2017-09-17 21:32:46 +02:00
Markus Gans 4df0418aee FObject has received the iterator child access methods begin() and end() 2017-09-17 01:50:41 +02:00
Markus Gans 0e4ba28544 Fix byte access in data type char_data 2017-09-15 01:31:02 +02:00
Markus Gans dc3c5d19e4 Some code improvements 2017-09-11 03:06:02 +02:00
Markus Gans 5f7737bf64 Improve code readability through spaces between the operands and the operators 2017-08-27 09:50:30 +02:00
Markus Gans 3f8b9d774b Rename fapp.{cpp,h} to fapplication.{cpp,h} 2017-08-24 00:47:35 +02:00
Markus Gans 37e4f7e222 Screen characters got a union structure for a faster attribute compare operation 2017-08-20 17:30:30 +02:00
Markus Gans abd501b558 Add some bad allocation checks 2017-08-12 22:55:29 +02:00
Markus Gans 55070bfc39 Advanced streaming functionality for FTermBuffer and FVTerm::print() 2017-08-06 17:02:19 +02:00
Markus Gans 82869a95b7 Better check at focusNextChild for the last element 2017-06-19 02:12:11 +02:00
Markus Gans bd10bc74c5 initialize next and prev in FWidget 2017-06-14 01:06:48 +02:00
Markus Gans e116197f62 initialize next and prev in FWidget 2017-06-14 01:02:02 +02:00
Markus Gans b1d323ef76 New method FObject::isWidget() 2017-06-11 17:47:50 +02:00
Markus Gans 526e193fb7 The focus and active flag is set centrally in FWidget 2017-06-05 16:11:25 +02:00
Markus Gans c6dba0b4ac Rename preprocessor macro names with leading underscore 2017-04-09 20:08:53 +02:00
Markus Gans 6b5f033b7b Replace non-printable chars for Tera Term and Cygwin 2017-04-05 00:30:52 +02:00
Markus Gans 8de22dc903 Avoid non-printable ASCII codes < 0x1c on FreeBSD 2017-04-02 21:32:48 +02:00
Markus Gans 0e5b1dfebd Remap meta key to left alt on FreeBSD console 2017-04-02 13:30:23 +02:00
Markus Gans 48b2e6a816 compiles now under FreeBSD 2017-03-26 20:40:04 +02:00
Markus Gans 05c61f1901 More constant character pointers 2017-03-17 22:59:06 +01:00
Markus Gans 56df867ef7 Improve input cursor positioning in FScrollView 2017-03-08 23:48:30 +01:00
Markus Gans 7c11ba1707 FListBox saves data pointer in FListBoxItems 2017-02-24 00:30:07 +01:00
Markus Gans 3f8ed6e78e Allows a window to have more than one FScrollView widget 2017-02-18 23:37:10 +01:00
Markus Gans 36bba82e9f Allow to change the focus out from FScrollView 2017-01-28 22:03:15 +01:00
Markus Gans 59189160fd FScrollView now scrolls automatically to the focused widget 2017-01-26 00:31:07 +01:00
Markus Gans 51b1d18a84 FScrollView now allows client widget 2017-01-22 23:04:40 +01:00
Markus Gans 5cb7b77f4e Virtual window gets a preprocessing handler 2017-01-15 19:48:27 +01:00
Markus Gans b9f3be782f Skipping the print of characters without changes 2016-12-18 23:34:11 +01:00
Markus Gans 4012cdb7b0 Version 0.3.0 2016-11-27 19:16:52 +01:00
Markus Gans 4da63ebcac Improvements for ansi terminal emulators 2016-11-27 00:41:34 +01:00
Markus Gans fc8ee51e72 Do not draw shadows on a linux console if not all characters are available 2016-11-13 22:08:40 +01:00
Markus Gans 04a483526f Optimized input cursor positioning for terminals without hidden cursor 2016-11-12 22:59:48 +01:00
Markus Gans 125c4b961b The use of xterm default colors now is configurable 2016-11-06 16:36:21 +01:00
Markus Gans 75b452bf52 The class declaration now has a consistent order 2016-11-02 00:37:58 +01:00
Markus Gans ff6deaf4ab Each virtual window gets its own virtual print cursor 2016-10-15 03:32:30 +02:00