Commit Graph

218 Commits

Author SHA1 Message Date
Markus Gans 96cdaa2450 Print function can set the cursor position with an FPoint 2019-01-27 13:44:13 +01:00
Markus Gans c4df64c5bc Refactoring of some methods in FVTerm and FDialog 2019-01-24 00:23:00 +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 4dcc573be7 New class FSize for storing dimensions 2019-01-16 16:00:15 +01:00
Markus Gans 838ba23c46 Integration of an output filter to replace missing characters 2019-01-03 07:36:18 +01:00
Markus Gans 4135215df5 Improved PC encoding for Cygwin and Linux 2019-01-02 03:00:07 +01:00
Markus Gans 250c04cefd Small data type changes 2018-12-28 22:57:43 +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 ac9ed260f5 some fixes 2018-12-22 15:33:23 +01:00
Markus Gans ae38a45a5e Improve FButton mouse click animation 2018-12-17 00:50:24 +01:00
Markus Gans fd924233c3 Code reduction by using of Range-based for loop 2018-12-15 22:10:31 +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 9ba1b77069 Easier handling of fc::SpecialCharacter 2018-12-06 02:28:24 +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 167b7c97bc install fix with final/ftermdata.h 2018-11-20 21:11:04 +01:00
Markus Gans e40a233d64 FColor fix 2018-11-13 02:51:41 +01:00
Markus Gans cd8e4f78ae Use new type FColor for color values 2018-11-07 22:06:58 +01:00
Markus Gans baabf9546e FButton now uses the widget flags directly 2018-11-05 23:19:03 +01:00
Markus Gans 1f8d16791a New method rgb2ColorIndex() to converts a 24-bit RGB color to a 256-color compatible approximation 2018-11-03 01:32:51 +01:00
Markus Gans c1b304e429 Looser coupling between examples and FTerm 2018-10-29 23:57:35 +01:00
Markus Gans 7a2abc9421 Fix FListBox prevListItem() 2018-10-29 02:59:41 +01:00
Markus Gans 5d134793cf FTerm is now a data member of FVTerm 2018-10-29 00:45:45 +01:00
Markus Gans c4e333bc8b Fix the build on CentOS 6 2018-10-24 08:51:38 +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 0b51df32b5 Move all termcap code into FTermcap 2018-10-08 04:14:20 +02:00
Markus Gans ca9bdad88a Fix va_start format passing 2018-10-05 05:35:33 +02:00
Markus Gans 8e2c32ebdc Remove redundant program code from FString 2018-10-05 05:15:54 +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 9f0ed5bb26 Compiles now with newer gcc 2018-09-02 03:57:57 +02:00
Markus Gans c36da9e799 Keyboard functions are now in a separate class 2018-07-15 19:52:59 +02:00
Markus Gans bdb30c5a96 Struct to pass the FOptiMove environment 2018-07-01 14:48:53 +02:00
Markus Gans 03c3c79946 Struct to pass the FOptiAttr environment 2018-06-25 00:14:53 +02:00
Markus Gans 0927e4e1fb Move FreeBSD, NetBSD and OpenBSD functions to separate classes 2018-05-27 19:43:18 +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 2f89a8e454 Remove Cygwin bold color quirks fix in FOptiAttr 2018-04-11 21:41:22 +02:00
Markus Gans d22ff10a28 Unit tests update 2018-03-16 01:05:45 +01:00
Markus Gans 0f16b51e04 Refactoring FListView::onMouseMove 2018-02-18 21:49:58 +01:00
Markus Gans 2af1b1d0d4 Refactoring FOptiMove::verticalMove and FOptiMove::horizontalMove 2018-02-10 17:35:09 +01:00
Markus Gans c2d7f8b8ee Refactoring of some functions 2018-02-08 00:25:51 +01:00
Markus Gans d1083b6a95 Refactoring of some functions 2018-02-04 19:42:30 +01:00
Markus Gans 2ef3d84829 Avoids flickering when redrawing a focused widget 2018-02-03 00:04:24 +01:00
Markus Gans 1fc960f672 UTF-8 fix for Solaris 2018-01-25 09:31:59 +01:00
Markus Gans 3419e9e908 Refactoring FVTerm::restoreVTerm 2018-01-05 00:49:00 +01:00
Markus Gans 06bfb8bc64 Refactoring of secondary device attributes parsing 2018-01-02 20:38:45 +01:00
Markus Gans fd5404ba57 Refactoring FButton::draw + Passing more strings by reference 2017-12-25 21:17:08 +01:00
Markus Gans ef5970b09c Refactoring FMenu::drawItems 2017-12-19 02:06:27 +01:00
Markus Gans ec57ec6f74 The Final Cut now also compiles under Solaris 2017-12-17 01:06:53 +01:00
Markus Gans c10a88008c Add Sun Microsystems workstation console support 2017-12-14 00:35:10 +01:00
Markus Gans fd75f5af42 Refactoring of the FMenu mouse event handler 2017-12-10 15:36:02 +01:00
Markus Gans a173f2bc1e More individual arithmetic operations methods in the calculator example 2017-12-08 23:51:56 +01:00
Markus Gans 937cd8a0f0 Fix dereference before null check in FVTerm::updateVTerm 2017-12-03 21:34:07 +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 abf89f1538 Refactoring FVTerm::updateTerminalLine 2017-11-30 02:38:55 +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 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 1bf4f2f906 Small NewFont improvements 2017-11-03 20:12:27 +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 37f8ee81c9 Fix overrunning array 2017-09-16 01:21:16 +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 1cd1e521c3 Wrong UTF-8 string length fixed when attaching to FString 2017-09-09 22:03:17 +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 2a85f7e977 Some code improvements 2017-08-12 20:10:27 +02:00
Markus Gans 48e737818c Some code changes for GCC 7 2017-08-11 10:50:39 +02:00
Markus Gans a998706e5e New class FTermBuffer to buffer terminal outputs 2017-07-12 01:16:57 +02:00
Markus Gans b36fc80f51 Use more static const variables where it makes sense 2017-07-03 16:56:32 +02:00
Markus Gans c6dba0b4ac Rename preprocessor macro names with leading underscore 2017-04-09 20:08:53 +02:00
Markus Gans 0a581cb58b Change cursor style on a FreeBSD console 2017-04-06 01:31:21 +02:00
Markus Gans 7f134ccada New Method setInsertCursorStyle() 2017-04-05 22:25:20 +02:00
Markus Gans bcfa7fb731 termcap "me" does not reset the alternate character set 2017-03-30 00:46:52 +02:00
Markus Gans 48b2e6a816 compiles now under FreeBSD 2017-03-26 20:40:04 +02:00
Markus Gans ef5ca7d5f8 Add the "mouse" example 2017-03-19 17:18:07 +01:00
Markus Gans e66171ee73 More constant character pointers 2017-03-17 23:22:13 +01: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 bd06df8987 Corrected swapped top and left offset variables in the class FVTerm 2017-02-25 15:18:29 +01:00
Markus Gans 784afc5a07 Add the missing access method FListBoxItem::getData() 2017-02-24 23:16:05 +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 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 49e36e5203 Add scrollTo and scrollBy methods to FScrollView 2017-01-07 22:09:09 +01:00
Markus Gans 87ca58b898 FScrollView now has on-demand scroll bars 2017-01-03 05:19:44 +01:00
Markus Gans b2e4a59f54 FScrollView provides a scrollable viewport to change area 2017-01-02 08:07:46 +01:00
Markus Gans 628bec0b29 Reduce public methods in FVTerm 2016-12-28 16:29:49 +01:00
Markus Gans 386e91563a Add the ability to stream text into a widget's virtual window with print() or *this 2016-12-26 01:15:32 +01:00
Markus Gans c4a8886da2 VTerm marks printed characters for a correct determination of unchanged characters 2016-12-22 02:02:40 +01:00
Markus Gans b9f3be782f Skipping the print of characters without changes 2016-12-18 23:34:11 +01:00
Markus Gans fedb5f64f3 Reduce the character output by using character erase and character repeat 2016-12-15 23:11:34 +01:00
Markus Gans e4284615db Accelerates text line drawing by clear with CSI sequences 2016-12-11 16:42:50 +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 8beed7b330 Add the opti-move test program 2016-11-26 15:18:44 +01:00
Markus Gans 082bbfbaa2 Improve tty settings 2016-11-20 18:26:15 +01:00
Markus Gans e66f00ea92 Determine xterm maximum number of colors via OSC 4 2016-11-05 23:12:05 +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
Markus Gans e6368749d4 Fix: Dereference of null pointer in fvterm.cpp 2016-10-14 17:37:26 +02:00
Markus Gans 17b59cf50d Virtual windows can now store their own offset information 2016-10-14 13:02:35 +02:00
Markus Gans cae1a742ea Reduces in the code the number of friend classes 2016-10-13 02:16:51 +02:00
Markus Gans b668f7011c Separate the virtual terminal into a own class vterm 2016-10-11 04:57:36 +02:00