Commit Graph

751 Commits

Author SHA1 Message Date
Markus Gans 63366b7ef9
Merge pull request #34 from grendello/flistview_segfault
Fix a segfault when processing input to empty FListView
2019-05-27 08:31:06 +02:00
Markus Gans 622eb7089c debug switch build fix 2019-05-27 01:35:32 +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
Marek Habersack c4d9b33628 Fix a segfault when processing input to empty FListView
If the application has a list view with no items and the user clicks the widget
or sends any key (space, plus, minus etc) which acts on the items, the
application will segfault as the item returned from `getCurrentItem()` is
`nullptr` and there's no check made for this condition.

Instead of checking whether current item `!= nullptr` just check whether the
item list is empty and avoid running any code at all in such case.
2019-05-26 23:35:39 +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 5bd8590dee Revision of some comments 2019-04-28 20:57:08 +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 7f206e88f0 Using namespace aliases finalcut::fc in some exemple programs 2019-04-26 21:06:04 +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 e3fb0c4a56 Drawing of the progress bar has been improved 2019-02-25 23:35:27 +01:00
Markus Gans b0febda5b4 Added the 7-segment example 2019-02-24 20:21:12 +01:00
Markus Gans 2270f4cde5 Three new methods in FLineEdit 2019-02-24 00:25:36 +01:00
Markus Gans a3e3cf22d8 Add a "dynamic layout" Chapter into the first steps document 2019-02-07 23:05:50 +01:00
Markus Gans d91cd10311 Printing FColorPair to change foreground and background color 2019-01-30 12:17:48 +01:00
Markus Gans bd4d8bd3a2 FFileDialog geometry fix 2019-01-27 22:19:33 +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 6a91738f48 Improvement in widget focusing 2019-01-07 05:03:00 +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 652dc67e6e Improved UTF-8 encoding for Cygwin 2019-01-03 21:38:19 +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 43f97a0d6a Add a "signals and callbacks" chapter into the first steps document 2018-12-28 08:09:05 +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 8e618812ac Bugfix in FTermDetection::getXTermColorName 2018-12-26 23:39:15 +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 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 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 c3847b6b05 Correct vertical scrollbar position after sorting in FListView 2018-11-27 01:32:21 +01:00
Markus Gans 7f5901d237 Fix compiler warning on non-x86 architectures 2018-11-25 16:27:13 +01:00
Markus Gans 541f127088 Version 0.5.0 2018-11-25 04:48:57 +01:00
Markus Gans 642e61b6e1 Namespace fix in FTermFreeBSD and FTermOpenBSD 2018-11-25 01:20:51 +01:00
Markus Gans c15cb0ba24 memory management + handling environment variables with numbers 2018-11-24 23:43:09 +01:00
Markus Gans 6c4ba7af89 fkeyboard_test fix 2018-11-24 03:22:47 +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 2cb08ce928 checkable FListViewItem now shows the input cursor 2018-11-18 22:48:55 +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 9b3f30f006 Clicking on the column header in FListView now changes the sort order 2018-11-12 23:22:45 +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
Markus Gans deb62c2914 Moved FTerm debug access methods to FTermDebugData 2018-11-02 01:17:57 +01:00
Markus Gans c2df8ac7d9 Moved FTerm debug access methods to FTermDebugData 2018-11-01 21:29:54 +01:00
Markus Gans 4afa988232 Add the file faq.md 2018-11-01 00:49:13 +01:00
Markus Gans 77ad698c45 Looser coupling between examples and FTerm 2018-10-30 01:13:32 +01:00
Markus Gans c1b304e429 Looser coupling between examples and FTerm 2018-10-29 23:57:35 +01:00
Markus Gans 4d42804059 Don't print empty streams 2018-10-29 23:10:48 +01:00
Markus Gans d35c3c0cdc Setting the value can_change_color_palette in FTermcapQuirks 2018-10-29 21:12:03 +01:00
Markus Gans ce9d05ec7b Fix FListBox prevListItem() + nextListItem() 2018-10-29 19:10:42 +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 98bff1e45b Adding the capacity() method to the FString class 2018-10-27 00:13:31 +02:00
Markus Gans 96edb762c7 Building Fix for a negative value check for gcc < 4.8 2018-10-26 07:43:23 +02:00
Markus Gans c4e333bc8b Fix the build on CentOS 6 2018-10-24 08:51:38 +02:00
Markus Gans e359d16417 Some code formatting 2018-10-24 00:16:45 +02:00
Markus Gans 3678d52766 Small code fixes 2018-10-22 01:26:24 +02:00
Markus Gans 540291b410 Moving static attributes from FApplication to FWidget 2018-10-21 21:06:52 +02:00