Commit Graph

794 Commits

Author SHA1 Message Date
Markus Gans 8dd23d1673 Unit tests update 2018-03-21 00:02:43 +01:00
Markus Gans d1b57fe94c .travis.yml 2018-03-18 16:20:12 +01:00
Markus Gans b1a532aefc .travis.yml 2018-03-18 15:45:04 +01:00
Markus Gans 3a3717fa7a Unit tests update 2018-03-18 15:03:07 +01:00
Markus Gans 3a652a0d9e Added unit test for FObject 2018-03-17 14:16:12 +01:00
Markus Gans d22ff10a28 Unit tests update 2018-03-16 01:05:45 +01:00
Markus Gans 1d21c0ded9 Unit tests update 2018-03-15 00:01:31 +01:00
Markus Gans 12aeafb3d1 Unit tests update 2018-03-14 23:56:44 +01:00
Markus Gans 61f2a4677c Unit tests update 2018-03-14 00:53:28 +01:00
Markus Gans 380d3d625c Added unit test for FRect 2018-03-13 01:04:46 +01:00
Markus Gans d2a688fdc2 Added unit test for FPoint 2018-03-11 19:20:36 +01:00
Markus Gans 9da31a7d7b Unit tests for the FString class completed 2018-03-10 16:24:39 +01:00
Markus Gans 46c03bb7bb Unit tests update 2018-03-10 13:17:57 +01:00
Markus Gans 16bbda2099 Unit tests update 2018-03-10 05:27:55 +01:00
Markus Gans c270b39698 Unit tests update 2018-03-09 00:37:31 +01:00
Markus Gans 27cefbf99b Unit tests update 2018-03-08 17:57:17 +01:00
Markus Gans a0bf6bd00c Unit tests update 2018-03-07 00:48:06 +01:00
Markus Gans 4241c7afaf Unit tests update 2018-03-06 00:48:43 +01:00
Markus Gans 7f5dc3bfe2 Unit tests update 2018-03-05 22:26:44 +01:00
Markus Gans dfbe632d26 Unit tests update 2018-03-05 21:27:30 +01:00
Markus Gans d97f03027e Unit tests update 2018-03-05 03:15:16 +01:00
Markus Gans 2459126924 Unit tests update 2018-03-05 00:25:05 +01:00
Markus Gans f343945ff7 Unit tests update 2018-03-03 22:24:57 +01:00
Markus Gans 2bc3fe4dd1 Unit tests update 2018-03-02 00:02:54 +01:00
Markus Gans b51d7a399c Unit tests update 2018-03-01 01:05:32 +01:00
Markus Gans f42175c8da Unit tests update 2018-03-01 00:00:30 +01:00
Markus Gans 74629b9ffb Unit tests update 2018-02-28 23:52:34 +01:00
Markus Gans 8d946b073d Unit tests update 2018-02-28 00:18:49 +01:00
Markus Gans 1d6526fe1b Unit tests update 2018-02-27 01:03:33 +01:00
Markus Gans 91f6e566f4 Unit tests update 2018-02-27 00:55:51 +01:00
Markus Gans 3f0f262bc8 Unit tests update 2018-02-27 00:45:02 +01:00
Markus Gans 68a63061ef build.sh 2018-02-25 22:48:18 +01:00
Markus Gans f89258fa84 libcppunit-dev 2018-02-25 21:49:04 +01:00
Markus Gans a00f052e4d First CppUnit tests implemented 2018-02-25 21:42:18 +01:00
Markus Gans 67f2cbcf76 Update Better Code Hub config 2018-02-24 19:19:28 +01:00
Markus Gans e0f4872d6e Refactoring of some functions 2018-02-24 18:13:42 +01:00
Markus Gans 1435d9d362 Generalize mouse event passing in FMenuItem 2018-02-22 01:15:57 +01:00
Markus Gans 8bc40459e0 Refactoring FListView scroll bar callbacks 2018-02-20 23:35:10 +01:00
Markus Gans 4778de5c52 Refactoring FTerm::init_encoding 2018-02-19 23:02:54 +01:00
Markus Gans aa18e5b5ba Refactoring FScrollView::init 2018-02-19 23:02:19 +01:00
Markus Gans 9426657c43 Refactoring FTerm::init_termcaps 2018-02-19 01:36:38 +01:00
Markus Gans 4322e957c9 Refactoring FDialog::initDialogMenu 2018-02-18 22:45:49 +01:00
Markus Gans 69956ce76f Avoid scroll bar overshooting 2018-02-18 21:50:24 +01:00
Markus Gans 0f16b51e04 Refactoring FListView::onMouseMove 2018-02-18 21:49:58 +01:00
Markus Gans 4da8982f42 Generalize scroll functions in FTextView 2018-02-17 19:12:48 +01: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 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 7424dd74b4 Refactoring FMessageBox::init and FFileDialog::init 2018-01-31 23:37:03 +01:00
Markus Gans bce4021f45 Refactoring FSwitch::drawCheckButton and FWidget::redraw 2018-01-31 00:17:00 +01:00
Markus Gans 10275c0953 Refactoring FLabel::draw and FFileDialog::readDir 2018-01-30 00:11:58 +01:00
Markus Gans 7eb6bfa587 Refactoring FApplication::processKeyboardEvent 2018-01-28 19:54:52 +01:00
Markus Gans 1fc960f672 UTF-8 fix for Solaris 2018-01-25 09:31:59 +01:00
Markus Gans ac8ac70b9c The color palette redefinition now has its own class 2018-01-24 23:02:45 +01:00
Markus Gans 421314e89a Fixes compiler errors for latest Cygwin versions 2018-01-24 00:25:32 +01:00
Markus Gans 97f8d998a7 Fixes compiler errors for latest Cygwin versions 2018-01-22 19:47:20 +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 2d9103c102 macOS build fix 2018-01-16 16:16:29 +01:00
Markus Gans 460dff3291 Mouse functions are now in a separate class 2018-01-14 22:39:17 +01:00
Markus Gans afe15753f7 Mouse functions are now in a separate class 2018-01-14 22:24:15 +01:00
Markus Gans 8addcbbcb7 Mouse functions are now in a separate class 2018-01-14 21:53:45 +01:00
Markus Gans 48cdd9bb0a Mouse functions are now in a separate class 2018-01-14 21:21:08 +01:00
Markus Gans 3419e9e908 Refactoring FVTerm::restoreVTerm 2018-01-05 00:49:00 +01:00
Markus Gans f53efc90c5 Refactoring FOptiMove::relativeMove 2018-01-03 22:58:07 +01:00
Markus Gans 9bb22e7d7b Refactoring attribute settings in FOptiAttr 2018-01-03 20:06:22 +01:00
Markus Gans 76d72208e5 Refactoring FTerm::parseKeyString and timeout settings 2018-01-03 08:42:10 +01:00
Markus Gans 06bfb8bc64 Refactoring of secondary device attributes parsing 2018-01-02 20:38:45 +01:00
Markus Gans 2e64c0da32 Refactoring of the FMenuBar mouse event handler 2017-12-31 03:25:50 +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 61f824f54d Refactoring of the FListBox mouse event handler 2017-12-30 03:54:05 +01:00
Markus Gans a880684432 Refactoring of the FDialog mouse event handler 2017-12-29 02:10:05 +01:00
Markus Gans 260bf9ac91 fix FScrollbar initialize the variable 'z' 2017-12-28 00:00:56 +01:00
Markus Gans 9bd711dc0e Generalize scroll functions in FScrollView 2017-12-27 23:51:32 +01:00
Markus Gans b91f76710b fix wrong inline 2017-12-27 01:51:28 +01:00
Markus Gans c41ecde590 Some methods refactored + new FDialog methods 2017-12-27 01:38:28 +01:00
Markus Gans fd5404ba57 Refactoring FButton::draw + Passing more strings by reference 2017-12-25 21:17:08 +01:00
Markus Gans b886143701 (de)allocation functions in FTerm 2017-12-21 00:45:04 +01:00
Markus Gans ff1fe44132 Refactoring FMenuBar::drawItems 2017-12-21 00:25:58 +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 6921171616 Refactoring FApplication::processKeyboardEvent 2017-12-05 23:55:12 +01:00
Markus Gans 6d3231a498 Refactoring FApplication::processMouseEvent 2017-12-05 01:03:59 +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 8c970c88dd non build linux fix 2017-12-02 19:06:27 +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 6ef36ac7f7 Splitting FOptiMove::moveCursor into sub-functions 2017-11-26 19:00:04 +01:00
Markus Gans 64aa8d18b8 Splitting quirks in serperate methods 2017-11-25 18:37:40 +01:00
Markus Gans 0c45d7d8bc Color palette defined for 8 colors 2017-11-24 23:57:41 +01:00
Markus Gans 607294c71a Refactor some functions 2017-11-24 00:28:25 +01:00
Markus Gans 3ced63510c Remove duplicated code from FOptiAttr::changeAttribute 2017-11-23 00:59:58 +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 0864055cab Splitting init_termcaps() into multiple submethods 2017-11-18 21:03:02 +01:00
Markus Gans 9c987ca49c Improved command line paramenter handlin 2017-11-18 02:34:41 +01:00
Markus Gans a5de52b7a5 Improved code coverage tests 2017-11-11 14:52:33 +01:00
Markus Gans c9b346f419 Simulate invisible characters on terminals that do not support this attribute 2017-11-08 17:19:29 +01:00
Markus Gans ed73858196 Simulate invisible characters on terminals that do not support this attribute 2017-11-08 01:00:44 +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 1bf4f2f906 Small NewFont improvements 2017-11-03 20:12:27 +01:00
Markus Gans 19c8dd50a9 Move fonts into the root directory 2017-11-02 16:05:34 +01:00
Markus Gans d821631d87 Better Code Hub config 2017-10-31 17:27:38 +01:00
Markus Gans 3a36ca3dbd Only <final/final.h> can now be directly integrated in programs 2017-10-31 00:41:59 +01:00
Markus Gans 686283cb01 Add a standardized close confirmation dialog 2017-10-30 20:56:00 +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 d1f2de254d A FListView tree branch can now be expand and collapsed with a single click 2017-10-23 16:16:06 +02:00
Markus Gans 4d955bc204 Optimized Color palette 2017-10-19 23:20:04 +02:00
Markus Gans b11e37a921 Expand or collapse a tree element with a double-click 2017-10-18 23:07:15 +02:00
Markus Gans 1cb6a5f73d FObject double free prevention of fc::empty_string 2017-10-15 23:22:13 +02:00
Markus Gans af2caf8fcf Minor tree view improvements 2017-10-15 15:27:36 +02:00
Markus Gans 2e506a1367 First implementation of a tree view in the FListView class 2017-10-14 22:20:19 +02:00
Markus Gans 1543d042cb Replace the deprecated readdir_r function 2017-10-14 20:29:29 +02:00
Markus Gans 9e0b6f8b53 Fixed a bug in the FObject check of parent objects 2017-10-14 20:21:44 +02:00
Markus Gans 0277abcbdb DECSCUSR - Set Cursor Style support for VTE >= 0.40.0 and gnome-terminal >= 3.16 2017-10-06 12:19:39 +02:00
Markus Gans 975212bac0 mouse support for coordinates > 255 and copyright informations 2017-10-02 10:01:58 +02:00
Markus Gans b9f6a6bee6 Stream and assignment operator support for FLineEdit 2017-09-21 07:22:08 +02:00
Markus Gans b3e9a0bba1 New data type FStringList introduced 2017-09-20 16:56:20 +02:00
Markus Gans a6c30bb2b5 Stream and assignment operator support for FLabel 2017-09-20 05:44:41 +02:00
Markus Gans b41411e764 Streaming support for FString 2017-09-20 02:51:17 +02:00
Markus Gans fc113795b4 The command line help text is now available in all applications 2017-09-19 06:18:03 +02:00
Markus Gans 82f1b7e44c std::scanf used now fields with width limit 2017-09-18 00:10:14 +02:00
Markus Gans 59e8dd65c4 new + delete in the same scope 2017-09-17 21:44:22 +02:00
Markus Gans 28f3de0971 All include files were moved to a separate director 2017-09-17 21:32:46 +02:00
Markus Gans ab26baa47c All include files were moved to a separate directory 2017-09-17 21:30:04 +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 0ce3868e74 Fix handling of negative numbers in FString::toLong() 2017-09-11 22:50:07 +02:00
Markus Gans 01a4fb9db7 Some code improvements 2017-09-11 03:48:21 +02:00
Markus Gans 745e3677ed Some code improvements 2017-09-11 03:23:50 +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 f941da79e7 Type definition exported into a separate header file 2017-09-07 23:35:24 +02:00
Markus Gans 92af0e811c Class diagram update 2017-09-06 02:15:00 +02:00
Markus Gans 5a077e73c4 Fixes wrong maximum line width in FListView 2017-09-03 18:32:43 +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 12c0d53192 FMenuItem accelerator fix 2017-08-24 22:58:34 +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 3854de73d3 Add some bad allocation checks 2017-08-12 23:11:21 +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 55070bfc39 Advanced streaming functionality for FTermBuffer and FVTerm::print() 2017-08-06 17:02:19 +02:00
Markus Gans ba17c529ff New methods to set and get FListViewItem and FListView text for a column 2017-08-01 00:56:12 +02:00
Markus Gans 0240d782ca Possibility for a FListView column to set the alignment 2017-07-28 22:18:42 +02:00
Markus Gans 30515db9ec Check an object with isInstanceOf(...) whether it is an instance of a specified class 2017-07-23 01:19:59 +02:00
Markus Gans d8c41b879d New Widget class FListView to allow a multi-column data view 2017-07-18 23:50:51 +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 b0b5282c9a FString::rtrim() and FString::left() now return an FString object with the correct character length 2017-06-26 23:35:34 +02:00
Markus Gans 82869a95b7 Better check at focusNextChild for the last element 2017-06-19 02:12:11 +02:00
Markus Gans ddb1c884e4 Move the dragScroll enumeration into the fc namespace 2017-06-18 19:36:22 +02:00
Markus Gans 28cdbc77af Dereferencing pointer focused_widget 2017-06-14 01:23:10 +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 b4b95f7b45 Recalculate the horizontal FListBox scroll bar size on lazy conversion 2017-05-20 22:43:55 +02:00
Markus Gans baea344b3c FListBox: Import of data from a container via "lazy conversion" during item print 2017-05-19 22:47:13 +02:00
Markus Gans b3505af040 FListBox: Import of data from a container via "lazy conversion" during item print 2017-05-19 22:16:50 +02:00
Markus Gans ca7ba6ae7e Data import from a standard container in FListBox 2017-04-23 18:54:46 +02:00
Markus Gans a7a11083d5 FString allocates no new memory if the size sufficient 2017-04-17 22:49:42 +02:00
Markus Gans 0c3668573d Speed up FString::setNumber() by using a decimal string lookup table 2017-04-17 01:03:14 +02:00
Markus Gans 09d6c2879d Fix unsigned integer underflow in FString::_insert() 2017-04-15 19:32:43 +02:00
Markus Gans cb2e2e2045 Open/NetBSD (wscons): Alt key generate Esc prefix 2017-04-14 23:55:44 +02:00
Markus Gans 2ec425480a Enable xterm "metaSendsEscape" switch 2017-04-11 00:30:27 +02:00
Markus Gans c6dba0b4ac Rename preprocessor macro names with leading underscore 2017-04-09 20:08:53 +02:00
Markus Gans 68c4b8385a Fix: Dereference of null pointer in ffiledialog.cpp 2017-04-08 14:25:55 +02:00
Markus Gans 56fe0720ef Fix: Dereference of null pointer in ffiledialog.cpp 2017-04-08 14:23:52 +02:00
Markus Gans 62e00b69fc Fix: Dereference of null pointer in ffiledialog.cpp 2017-04-08 13:41:37 +02:00
Markus Gans 7ead64f2b8 Looking in /etc/ttys for the type of terminal 2017-04-08 02:40:22 +02:00
Markus Gans 278ac9d921 Change cursor style on a FreeBSD console 2017-04-06 01:33:10 +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 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 bcfa7fb731 termcap "me" does not reset the alternate character set 2017-03-30 00:46:52 +02:00
Markus Gans d5b2c9dc99 Improved alternate character set for FreeBSD console 2017-03-28 08:50:37 +02:00
Markus Gans d7aa8f3a70 termtype was not null terminated 2017-03-26 21:44:09 +02:00
Markus Gans 4b93b71a6d add missing debug switch 2017-03-26 21:10:43 +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 06ec274d00 Corrects directly the input cursor position on window moving 2017-03-12 20:29:10 +01:00
Markus Gans 7ab1a6b353 Fixed bug in FString copy constructor 2017-03-12 01:26:08 +01:00
Markus Gans 4107227119 on-demand scroll bars for FButtonGroup 2017-03-12 00:29:56 +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 34961037f8 Fixes incorrect return value of FString::toString() 2017-02-24 23:31:56 +01:00
Markus Gans 784afc5a07 Add the missing access method FListBoxItem::getData() 2017-02-24 23:16:05 +01:00
Markus Gans 7c11ba1707 FListBox saves data pointer in FListBoxItems 2017-02-24 00:30:07 +01:00
Markus Gans b35d225ff5 FButtonGroup now inherits from FScrollView 2017-02-20 00:00:53 +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 09021d9c0a Check of the termcap capability U8 2017-02-07 17:15:01 +01:00
Markus Gans a67eeaa94f Small makefile fix 2017-02-06 02:21:40 +01:00
Markus Gans dbbf811993 Better monochrome support in scrollview example 2017-01-28 23:20:38 +01:00
Markus Gans 36bba82e9f Allow to change the focus out from FScrollView 2017-01-28 22:03:15 +01:00
Markus Gans d2ba29d842 FScrollView now scrolls automatically to the focused widget 2017-01-26 00:37:02 +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 49e36e5203 Add scrollTo and scrollBy methods to FScrollView 2017-01-07 22:09:09 +01:00
Markus Gans 99ff28cbbe Add FScrollView arrow keys support 2017-01-03 19:02:04 +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 2c8d58f803 Avoid non-working tab-moves on Linux terminals with PC or VT100 encoding 2016-12-27 23:03:32 +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 b10cf800bd Restore window titl only if it could be read before 2016-11-29 00:23:45 +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 1895dc001b Optimized the terminal clear screen 2016-11-26 18:15:31 +01:00
Markus Gans 8beed7b330 Add the opti-move test program 2016-11-26 15:18:44 +01:00
Markus Gans 5530c99d22 Increase speed on cygwin terminals 2016-11-20 21:15:43 +01:00
Markus Gans 082bbfbaa2 Improve tty settings 2016-11-20 18:26:15 +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 e66f00ea92 Determine xterm maximum number of colors via OSC 4 2016-11-05 23:12:05 +01:00
Markus Gans b9cc271765 xterm should be able to use at least 16 colors 2016-11-03 23:26:19 +01:00
Markus Gans 75b452bf52 The class declaration now has a consistent order 2016-11-02 00:37:58 +01:00
Markus Gans 1613d5bb55 Refactor the VGA attribute controller access code 2016-10-17 08:44:38 +02: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 d9e5aac828 remove dead return code 2016-10-13 02:57:11 +02:00
Markus Gans cae1a742ea Reduces in the code the number of friend classes 2016-10-13 02:16:51 +02:00
Markus Gans 560e8c9811 Fix linking problem 2016-10-11 05:31:12 +02:00
Markus Gans b668f7011c Separate the virtual terminal into a own class vterm 2016-10-11 04:57:36 +02:00
Markus Gans e14cd1af83 Remove some duplicate code 2016-10-09 02:06:06 +02:00
Markus Gans 8328af4132 Add the possibility to scroll text up and down in a virtual window 2016-10-08 02:54:32 +02:00
Markus Gans 605194b69e input cursor is now controlled by the vterm 2016-10-06 23:15:09 +02:00
Markus Gans 1231b9f65d FStatusBar and FMenuBar use now the always-on-top window option 2016-10-02 21:26:25 +02:00
Markus Gans 9ccc5a4f27 New FToolTip widget to show assisted information 2016-10-01 23:18:49 +02:00
Markus Gans c25ee14fe7 Move or resize a window with the arrow keys 2016-09-30 04:55:28 +02:00
Markus Gans c43a7f9bad The window size is now changeable with the mouse 2016-09-29 04:29:12 +02:00
Markus Gans 7369ed1a10 FLabel now transmits the Click events to the parent widget 2016-09-27 00:46:05 +02:00
Markus Gans 9475f34499 Replacing the widget position variables by FRect objects 2016-09-25 23:53:48 +02:00
Markus Gans 9551924b73 Fix: Dereference of null pointer in FDialog 2016-09-11 17:26:41 +02:00
Markus Gans e462db30a9 New zoom interaction-elements to maximize a FDialog 2016-09-11 16:48:39 +02:00
Markus Gans 6749164aca FButton, FDialog, FLineEdit and FProgressbar has now shadow as default 2016-09-04 18:31:31 +02:00
Markus Gans 3d0f046de9 clearFlatBorder() replace now a double flatline with a single flatline 2016-09-03 15:17:48 +02:00
Markus Gans 817e033d57 setGeometry assigns now the full widget size to the double_flatline_mask 2016-09-02 23:06:47 +02:00
Markus Gans be96aea0d8 incorrect parameter can now return an error message 2016-08-28 22:52:55 +02:00
Markus Gans 44cb96e732 incorrect parameter can now return an error message 2016-08-28 22:43:14 +02:00
Markus Gans 2904ed31b9 new inherit background option for characters 2016-08-27 23:23:42 +02:00
Markus Gans 98fbce5de6 Use the new transparent shadow option in drawShadow() 2016-08-25 01:54:10 +02:00
Markus Gans f493f7d480 Fix: Dereference of null pointer in FButtonGroup 2016-08-21 22:47:45 +02:00
Markus Gans 7d0cf3383e Add a transparent example program + improve transparent shadow 2016-08-21 21:27:44 +02:00
Markus Gans f870506194 switchToPrevWindow() is looking for another window if no previous window was found 2016-08-21 00:16:34 +02:00
Markus Gans 5f3f8468ea Switch back to the own dialog when you closing a dialog menu 2016-08-20 22:33:59 +02:00
Markus Gans bbfbde465f Switch back to the own dialog when you closing a dialog menu 2016-08-20 22:27:23 +02:00
Markus Gans b08d064226 Screen characters now have a transparent and a transparent shadow option 2016-08-14 23:27:34 +02:00
Markus Gans 485b8e25aa Fix: Dereference of null pointer in FMenu 2016-08-06 22:46:37 +02:00
Markus Gans 4deede746f Fix: Dereference of null pointer in FMenu 2016-08-06 22:01:22 +02:00
Markus Gans 5606d66404 widget clearing updates now only non-covered characters 2016-08-06 21:43:39 +02:00
Markus Gans f81370f8cf Do not redraw the dialog on activate 2016-07-31 22:49:09 +02:00
Markus Gans 0ad1228b1a Fix method setPos in the class FRect 2016-07-31 20:25:25 +02:00
Markus Gans d5685aaafc Remove dialog list item callback from the associated dialog window 2016-07-30 23:00:37 +02:00
Markus Gans 9b7918f2f6 Delete all callbacks from a widget, when it will be destroyed 2016-07-30 14:34:13 +02:00
Markus Gans 15793868fe Improvements for the window focus 2016-07-28 23:38:17 +02:00
Markus Gans d3f5979873 Segmentation fault fix 2016-07-28 01:04:27 +02:00
Markus Gans 94c297ba88 Widget focus at window change 2016-07-28 00:06:32 +02:00
Markus Gans 95f1bdc23a Widget focus at window change 2016-07-27 23:47:12 +02:00
Markus Gans a91d0566fc Improvements for the window focus 2016-07-27 04:55:10 +02:00
Markus Gans cb468c59d2 Improvements for the window focus 2016-07-25 23:50:57 +02:00
Markus Gans 4ba7af7cdc Remove callbacks and accelerator keys from FDialogListMenu on closing a dialog window 2016-07-24 20:18:23 +02:00
Markus Gans 7d6d5cf71f Fix: Dereference of null pointer in FOptiAttr 2016-07-24 13:51:36 +02:00
Markus Gans add402c5ac Fix: Dereference of null pointer in FOptiAttr 2016-07-24 01:08:22 +02:00
Markus Gans 4cccc6527b Small code improvements 2016-07-23 20:56:20 +02:00
Markus Gans 8b0ac17b63 Add a modifier key correction for the linux tty 2016-07-23 19:59:55 +02:00
Markus Gans 3a822e3f3b Add a modifier key correction for the linux tty 2016-07-23 19:50:28 +02:00
Markus Gans c16d3dc3c5 Support to read meta+tab from keyboard 2016-07-17 20:30:00 +02:00
Markus Gans 75b6ac477e Switch to a specific dialog with meta + 1..9 2016-07-16 20:39:38 +02:00
Markus Gans ef201a1a33 Adding a dialog list with the entries in the chronological order of the generation 2016-07-14 23:55:22 +02:00
Markus Gans 9ef3bd3243 Bind accelerator key from the FMenuItem to the root widget 2016-07-14 00:12:16 +02:00
Markus Gans 2acda53224 Status and menu bar insert accelerator keys into root widget 2016-07-12 23:35:33 +02:00
Markus Gans fbb3c8ef11 FDialog focus fix 2016-07-10 03:51:20 +02:00
Markus Gans 07bcf76bf4 Remove obsolete code from FDialog destructor 2016-07-10 00:23:39 +02:00
Markus Gans 9766ee4b6f Better code readability: control structures (if/else, while, switch) are now separated by a blank line. 2016-07-09 00:01:59 +02:00
Markus Gans 2b40854e2f Stop terminal updates during processCloseWidget() is working 2016-07-06 23:11:49 +02:00
Markus Gans 11a7aad0ee Fix unchecked dynamic_cast 2016-07-03 20:27:27 +02:00
Markus Gans b7c11c7c90 Code simplification 2016-07-03 20:16:43 +02:00
Markus Gans 71b5b16865 Add the new class FDialogListMenu to switch between dialog menus 2016-07-03 20:08:39 +02:00
Markus Gans 0c4b3a3a14 Fix the use-after-free bug for previous_widget 2016-06-27 23:08:32 +02:00
Markus Gans a179e190f9 Bug fix for FWindow::activatePrevWindow() 2016-06-26 16:08:03 +02:00
Markus Gans e29e58acb6 Move processNextEvent() code into sub functions 2016-06-25 14:33:43 +02:00
Markus Gans 396525d80f Adding required updateTerminal() calls for FMenuBar 2016-06-22 00:48:33 +02:00
Markus Gans 8ffa221e5f Fixes some status bar update issues and focus problems 2016-06-19 23:18:53 +02:00
Markus Gans 7dd7455b23 Fixes some status bar update issues and focus problems 2016-06-19 20:32:03 +02:00
Markus Gans 4e447a6096 Improved status bar text updating at window change 2016-06-18 19:10:41 +02:00
Markus Gans 203c50f4e6 Bug fix in FDialog onWindowActive() for combined setFocus() and activateWindow() 2016-06-16 22:50:34 +02:00
Markus Gans 07fbe91cea Bug fix in FTerm updateVTerm() for updates from vdesktop 2016-06-16 00:39:01 +02:00
Markus Gans 28c4a61997 Improved title bar menu integration 2016-06-13 22:44:15 +02:00
Markus Gans b576b8dcad Add a title bar menu to close dialogs 2016-06-12 23:06:58 +02:00
Markus Gans 29dfeafa87 Add some comments 2016-06-12 11:56:06 +02:00
Markus Gans 0146ae9d99 Use nl_langinfo to determine the numeric thousands separator 2016-05-24 22:30:01 +02:00
Markus Gans 6ff2fb0b32 Fix for menus in modal dialogs 2016-05-22 19:18:16 +02:00
Markus Gans dcfd7c6246 Remove duplicate code 2016-05-16 23:36:13 +02:00
Markus Gans 8ca888b063 Don't focus menus with focusFirstChild() and focusLastChild() 2016-05-16 23:26:04 +02:00
Markus Gans 9df9eb5961 Improve adjustSize() 2016-05-16 21:11:32 +02:00
Markus Gans d40b5f22a4 Better terminal identification 2016-05-01 22:18:54 +02:00
Markus Gans f77c2b3ff1 Better terminal identification 2016-05-01 21:45:27 +02:00
Markus Gans ed518a8e2d Improve 256 color terminal detection 2016-04-30 12:52:18 +02:00
Markus Gans c0af243403 small shell script improvements 2016-04-02 18:35:34 +02:00
Markus Gans 9c378151a3 TODO update 2016-02-07 22:02:38 +01:00
Markus Gans 4dca45036e OSC sequence support for GNU Screen and tmux 2016-02-04 01:27:15 +01:00
Markus Gans ffff3aa5ca Better escape sequences readability 2016-01-31 21:06:29 +01:00
Markus Gans 56e5847d41 Moving widget flags into the class fc 2016-01-24 14:53:09 +01:00
Markus Gans e35340114b Avoid height and width underflow in adjustSize 2016-01-17 23:37:52 +01:00
Markus Gans b21fe6a405 moving events into the class fc 2016-01-17 02:57:08 +01:00
Markus Gans 65047855e9 some code improvements 2016-01-10 10:42:55 +01:00
Markus Gans 8ba652eb07 code improvement 2016-01-10 07:08:55 +01:00
Markus Gans df5e7e7ccf code improvement 2016-01-10 06:47:40 +01:00
Markus Gans 9bc6ec6f96 Better default color handling 2016-01-10 00:56:52 +01:00
Markus Gans db463c686f better understandable code 2016-01-08 12:39:38 +01:00
Markus Gans 472fb1bbf3 small linker fix 2016-01-08 02:30:21 +01:00
Markus Gans e5003ac8d1 New class FOptiAttr to control video attributes and colors 2016-01-08 02:19:38 +01:00
Markus Gans 978f14bbf8 New class FOptiAttr to control video attributes and colors 2016-01-08 01:10:32 +01:00
Markus Gans 49629a995a New class FOptiAttr to control video attributes and colors 2016-01-08 01:00:05 +01:00
Markus Gans 6b789b16a0 Add video attribute support for dim (half-bright) and italic 2015-12-24 02:34:30 +01:00
Markus Gans 33fbbd3bc6 activate the menu with ctrl+space 2015-12-21 18:48:38 +01:00
Markus Gans 7590d2101d Add the possibility to switch off the cursor optimization 2015-12-21 18:37:20 +01:00
Markus Gans a1b7e34d7d Fix missing eat_newline_glitch (xn) in TeraTerm 2015-12-21 01:10:32 +01:00
Markus Gans 27d8b515f1 Some bug fixes 2015-12-20 23:27:33 +01:00
Markus Gans 54c45a6501 Version 0.2.0 2015-12-19 22:01:48 +01:00
Markus Gans 7dc30f7c70 Version 0.2.0 2015-12-19 20:51:04 +01:00
Markus Gans 16a2477b74 Add delOwnTimer() for FObject 2015-12-19 20:49:01 +01:00
Markus Gans bf606f3f23 Close sub-menu on right and middle click 2015-12-19 20:48:08 +01:00
Markus Gans 9cc95d952b Optimize menu example 2015-12-18 21:48:27 +01:00
Markus Gans 6074c78516 More string types for FString relational operators 2015-12-18 21:47:19 +01:00
Markus Gans 0ffe405dd6 little font fix 2015-12-17 00:28:29 +01:00
Markus Gans cc58f61480 Avoid to show menus outside of the screen 2015-12-16 23:57:14 +01:00