Commit Graph

293 Commits

Author SHA1 Message Date
Markus Gans 4840978273 Static code for the special built-in key sequences 2020-04-29 00:37:29 +02:00
Markus Gans 1c3c687878 Adding the missing method getClientSize() 2020-04-28 01:46:26 +02:00
Markus Gans 0de0676092 A few inline and const changes 2020-04-26 20:45:57 +02:00
Markus Gans 159d086af4 macOS build fix 2020-04-25 02:32:33 +02:00
Markus Gans 2b1774e578 More internal use of const char* strings 2020-04-24 00:34:26 +02:00
Markus Gans 803e54d456 Further small code improvements 2020-04-20 01:01:20 +02:00
Markus Gans d08dd8e9f4 Further small code improvements 2020-04-19 20:38:52 +02:00
Markus Gans 136b57eac6 Correction of some virtual methods 2020-04-18 13:33:42 +02:00
Markus Gans defc1714e4 CERT, OOP50-CPP: Avoids calling a virtual function from the constructor 2020-04-17 02:49:33 +02:00
Markus Gans fd92d7f4d8 Update comments for the copy assignment operator 2020-04-15 23:44:08 +02:00
Markus Gans 7d4de8e46f Improved event handling code 2020-04-15 23:17:42 +02:00
Markus Gans 7a520dc944 Add destructor 2020-04-15 01:01:16 +02:00
Markus Gans 90b389035e Several small code improvements 2020-04-14 23:46:42 +02:00
Markus Gans 3bb001677f Several small code improvements 2020-04-13 12:40:11 +02:00
Markus Gans 20c3cf218e Dialogs can now be displayed without a border 2020-04-09 12:38:35 +02:00
Markus Gans bb52b6fd7e Correction of methods that were unnecessarily declared as virtual 2020-04-04 20:58:47 +02:00
Markus Gans 53f1059312 Minor bug fixes 2020-04-02 09:59:34 +02:00
Markus Gans 4c0404ac60 A small benchmakt test was added to the Rotozoomer example 2020-03-22 21:53:27 +01:00
Markus Gans 77638fcaa0 Fixes keyboard input buffer problem when opening a modal dialog 2020-03-07 21:32:18 +01:00
Markus Gans 925f106846 Unbuffered reading of keystrokes for better latency 2020-03-05 21:30:54 +01:00
Markus Gans e5902a6ee6 New command line switch "--no-terminal-data-request" 2020-02-25 23:42:31 +01:00
Markus Gans 164487096c Some small code improvements 2020-02-19 21:59:13 +01:00
Markus Gans a33a9e1b6b Printing FStyle object to change attributes 2020-02-16 00:01:36 +01:00
Markus Gans 43bda37f71 Rename setTransShadow() to setColorOverlay() 2020-02-13 08:21:48 +01:00
Markus Gans dd625e0822 Adding a tty check for stdin 2020-02-09 21:58:17 +01:00
Markus Gans b810b51e65 Fix in FListViewIterator 2020-02-05 08:57:13 +01:00
Markus Gans 60009d8f4b clear() and remove() were added to FListView 2020-02-02 22:34:27 +01:00
Markus Gans 06d65ed676 Fix metadata 2020-01-20 21:40:00 +01:00
Markus Gans eeac24aef2 Methods setText() and clearText() for FComboBox 2020-01-09 20:20:37 +01:00
Markus Gans c0b1dc5924 Add setCurrentItem() to the FComboBox widget class 2020-01-09 19:21:16 +01:00
Markus Gans fc1b9ebdf3 Small code improvements 2020-01-03 01:33:18 +01:00
Markus Gans d126c4996a Adding an ANSI X3.64 SGR optimizer 2019-12-31 06:32:51 +01:00
Markus Gans 3a391f5fe5 Better setSize() implementation in some widgets 2019-12-23 03:53:32 +01:00
Markus Gans b7639f5301 Fixed the drawing of FLabel widget with the default size of 1×1 character 2019-12-20 19:36:18 +01:00
Markus Gans 867dabf637
Merge pull request #42 from grendello/fspinbox-inlines
Make FSPinBox::get{Prefix,Suffix} functions inline
2019-12-16 11:47:48 +01:00
Markus Gans 74d8585561 New widget class FComboBox to provide a dropdown list with an input field 2019-12-16 11:14:24 +01:00
Marek Habersack d34e839f83 Make FSPinBox::get{Prefix,Suffix} functions inline
Otherwise, if more than one file includes the header, we will have
duplicate symbols during link time.
2019-12-15 20:32:36 +01:00
Markus Gans cbe1179443 clang++ compile fix 2019-11-18 16:43:07 +01:00
Markus Gans 3de8e73281 Revision of FString number input stream 2019-11-18 01:18:15 +01:00
Markus Gans 8c434777bc Revision of FString number input stream 2019-11-17 22:06:07 +01:00
Markus Gans 5bb3f1ac9b Fixes the numerical streaming value for FLineEdit and FLabel 2019-11-16 22:33:21 +01:00
Markus Gans 7ba294c496 Fixes the numerical streaming value for FLineEdit and FLabel 2019-11-16 21:48:59 +01:00
Markus Gans 4540a6f455 Fixes the numerical streaming value for FLineEdit and FLabel 2019-11-16 19:57:45 +01:00
Markus Gans b3c367a168 Fixes the numerical streaming value for FLineEdit and FLabel 2019-11-16 19:10:08 +01:00
Markus Gans dedc1f3410 New Widget class FSpinBox to provide spin boxes 2019-11-16 15:16:44 +01:00
Markus Gans 18ec10ffd1 Update Travis CI coverity scan test 2019-11-07 02:48:27 +01:00
Markus Gans d76dcf2e9c Small NewFont midline fixes 2019-11-06 20:09:45 +01:00
Markus Gans 88d5c0d050 Improved display of the NewFont midline 2019-11-06 02:40:47 +01:00
Markus Gans b116fa5930 Newfont specialization for 8x16 and 9x16 pixel character 2019-11-03 23:34:47 +01:00
Markus Gans 1671a5ff3e Unicode support for 8x16graph font 2019-10-29 01:42:10 +01:00
Markus Gans 5ceee8b4c8 New method setInputType() in FLineEdit that allows to obscure password entries 2019-10-20 20:06:33 +02:00
Markus Gans 5e4a71dc0d Version 0.6.0 2019-10-17 01:13:18 +02:00
Markus Gans 7499f424dc Compile fix for some architectures 2019-10-14 01:44:24 +02:00
Markus Gans b0080b00cf More code cleanups 2019-10-08 04:37:19 +02:00
Markus Gans 937654710b Code cleaning 2019-10-06 22:35:00 +02:00
Markus Gans a279a0981a Internal redesign of the callback call 2019-10-05 23:20:07 +02:00
Markus Gans 298755a0fe Replacing null-terminated wide strings with FString objects 2019-10-01 23:14:00 +02:00
Markus Gans 6b9336d6c1 Streaming into an FTextView() object 2019-09-29 22:28:58 +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 81e00a22d3 Outsourcing the initialization data to a separate struct 2019-09-06 08:21:10 +02:00
Markus Gans d1fedfec9f Cygwin and Linux console do not use cp437 character encoding by default 2019-09-04 23:57:31 +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 43de8d6150 add missing override 2019-08-18 21:46:38 +02:00
Markus Gans 8c90cd2a4c Fixes print() << FPoint() behavior in FScrollView 2019-08-18 21:36:10 +02:00
Markus Gans 248cf8a0ba Update VTerm information only in case of changes 2019-08-18 21:35:36 +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 bd81fdb069 set OpenBSD pitch and duration of the system speaker 2019-08-10 20:14:44 +02:00
Markus Gans 3c5c2aa69e Fixes the Cygwin build 2019-08-07 11:47:03 +02:00
Markus Gans 5257beb73a Small cleanups 2019-08-06 23:45:28 +02:00
Markus Gans 77b76b7a2a Reduce the number of interface parameters 2019-08-04 23:38:47 +02:00
Markus Gans aac2231898 remove debug output from code 2019-08-01 00:28:36 +02:00
Markus Gans 0e12be93cc Unit test for the move assignment operator and move constructor in FPoint, FSize and FRect 2019-07-31 23:57:35 +02:00
Markus Gans 0ba913a23e small fixes 2019-07-29 02:34:58 +02:00
Markus Gans f78aba0395 Add unit test for the FTermFreeBSD class 2019-07-28 23:12:01 +02:00
Markus Gans 2b9c64a445 Reduce include entries in the header files 2019-07-21 23:31:21 +02:00
Markus Gans 8d9e92023a minor fixes 2019-07-14 23:21:49 +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 38df039235 Expanding the unit test for FTermLinux 2019-07-04 15:26:26 +02:00
Markus Gans 340d78e433 Expanding the Unit Test for FTermLinux 2019-07-01 01:07:54 +02:00
Markus Gans 4cd92ea36e Add a unit test for FTermLinux with a Linux console emulation and a dedicated FSystem test instance 2019-06-19 16:28:55 +02:00
Markus Gans 52c5b412f7 Fixes problem with scroll bar view after first draw 2019-06-12 11:37:34 +02:00
Markus Gans 5e436e91dc Use the Singleton design pattern to get a single object instance via FTerm 2019-05-27 01:10:10 +02:00
Markus Gans 22e47adbcb Use the Singleton design pattern to get a single object instance via FTerm 2019-05-27 00:50:11 +02:00
Markus Gans 75ec596323 macOS build fix 2019-05-17 22:52:01 +02:00
Markus Gans 66fe27e5bc macOS build fix 2019-05-17 22:44:44 +02:00
Markus Gans 6811b32e8a macOS build fix 2019-05-17 22:29:22 +02:00
Markus Gans fa66a7091e Move system calls to the new class FSystem 2019-05-17 15:48:09 +02:00
Markus Gans 83fbc0a4f5 Use shrink_to_fit() to save memory space 2019-04-27 01:23:30 +02:00
Markus Gans ec502d208a Add the reserve() method to FListBox to increase the capacity of the list 2019-04-27 00:38:15 +02:00
Markus Gans cc720dc7db Travis CI - Work around incomplete ca-chain of scan.coverity.com
See also
https://travis-ci.community/t/certificate-issue-during-coverity-build/3153
2019-04-26 23:48:38 +02:00
Markus Gans 439b8310ef Add a "scroll view" chapter to the first steps document 2019-03-24 20:15:17 +01:00
Markus Gans 2270f4cde5 Three new methods in FLineEdit 2019-02-24 00:25:36 +01: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 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 cb090e8aff A bit of refactoring 2019-01-12 09:11:22 +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 2b110d87d8 Use of initializer_list for FListBox, FListView and FTextView 2019-01-05 22:58:06 +01:00
Markus Gans a56ba6274e Use the final specifier 2019-01-04 02:18:54 +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 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 719e9b0586 Use the override specifier 2018-12-31 06:18:39 +01:00
Markus Gans 0d1f6a5e51 Cygwin compiled fix for C++11 2018-12-30 04:24:46 +01:00
Markus Gans 3ad4652883 Replace redundant FString code with templates 2018-12-29 22:10:24 +01:00
Markus Gans bd3b2b31bb Adding horizontal and vertical scrollability checks in FTextView 2018-12-29 19:01:47 +01:00
Markus Gans 250c04cefd Small data type changes 2018-12-28 22:57:43 +01:00
Markus Gans 17540c9581 Add a "signals and callbacks" chapter into the first steps document 2018-12-28 07:46:28 +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 ac9ed260f5 some fixes 2018-12-22 15:33:23 +01:00
Markus Gans f6c21db7e7 Use of smart pointers 2018-12-20 01:41:04 +01:00
Markus Gans f3bdc3b410 Use of smart pointers 2018-12-19 22:04:02 +01:00
Markus Gans 554d26ca00 Reactivate the event queue 2018-12-17 02:06:22 +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 fe0c22abe4 Deactivate copy constructor and assignment operator with "= delete" 2018-12-09 22:04:55 +01:00
Markus Gans 7ef9b154b9 Better handling of the scrollbar maximum 2018-12-09 18:24:31 +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 4046f05a0c Switched to the language standard C++11 2018-12-02 14:13:52 +01:00
Markus Gans 635d7c691e Improved gpm wheel mouse support 2018-12-01 21:28:25 +01:00
Markus Gans 541f127088 Version 0.5.0 2018-11-25 04:48:57 +01:00
Markus Gans ca90fb64bd Improved Sun Microsystems workstation console quirks 2018-11-24 02:59:56 +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 f6df9585f5 The integer type of FPoint and FRect changed from short to int 2018-11-21 22:15:14 +01:00
Markus Gans 1f64843fb6 New type FKey for key inputs 2018-11-21 20:07:08 +01:00
Markus Gans 167b7c97bc install fix with final/ftermdata.h 2018-11-20 21:11:04 +01:00
Markus Gans 3953dc19fa FListViewItem now provides checkable list view items 2018-11-18 01:15:38 +01:00
Markus Gans e40a233d64 FColor fix 2018-11-13 02:51:41 +01:00
Markus Gans b451f0047a Clicking on the column header in FListView now changes the sort order 2018-11-12 22:40:16 +01:00
Markus Gans d39e85d4c5 FListView now has a sort indicator (▼/▲) to display the sort order 2018-11-10 00:53:57 +01:00
Markus Gans cd8e4f78ae Use new type FColor for color values 2018-11-07 22:06:58 +01:00
Markus Gans 9fc1910c18 strncpy boundary 2018-11-06 01:27: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 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