summaryrefslogtreecommitdiffstats
path: root/Source/CursesDialog
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'ccmake-fix-pdcurses-windows'Brad King2022-07-071-2/+4
|\ | | | | | | | | | | | | a78d10220c ccmake: Fix mangled configuration log with PDCurses on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7458
| * ccmake: Fix mangled configuration log with PDCurses on WindowsDuncan Ogilvie2022-07-061-2/+4
| | | | | | | | | | | | This fix seems to work on both Windows and Ubuntu (WSL). Issue: #18053
* | Source: Replace uses of sprintf with safer snprintfSean McBride2022-06-223-3/+3
| |
* | Source: Tell Git not to check whitespace in third-party curses form codeBrad King2022-06-221-0/+1
|/
* cmSystemTools: Fix 'ErrorOccurred' spellingFeRD (Frank Dana)2022-06-131-6/+6
| | | | | | | | Rename the booleans 's_ErrorOccured' and 's_FatalErrorOccured' to 's_ErrorOccurred' and 's_FatalErrorOccurred', respectively. Rename the getters and setters to 'Get[Fatal]ErrorOccurred' and 'Set[Fatal]ErrorOccurred', and fix all uses across the codebase.
* clang-tidy: fix `performance-unnecessary-copy-initialization` lintsBen Boeckel2022-05-241-1/+1
|
* clang-tidy: address `google-readability-casting` lintsBen Boeckel2022-05-241-1/+1
| | | | At least those involving `static_cast`.
* Merge topic 'ccmake-fix-infinite-loop-search'Brad King2022-05-182-7/+8
|\ | | | | | | | | | | | | 432a8ab739 ccmake: Fix infinite loop during invalid search Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7269
| * ccmake: Fix infinite loop during invalid searchMartin Duffy2022-05-182-7/+8
| | | | | | | | | | | | | | | | | | Fix issue introduced in commit 2defe9ff95 (ccmake: Fix crash when deleting all cache entries, 2022-05-12). Leaving the Empty Cache widget always on the Entry list had unforeseen consequences, including that it caused an infinite loop when searching for a string that did not match any variables.
* | Merge topic 'ccmake-delete-cache'Brad King2022-05-132-21/+17
|\ \ | |/ | | | | | | | | | | | | | | 2defe9ff95 ccmake: Fix crash when deleting all cache entries e1c85e29f4 ccmake: Move Initialization of Fields Inline Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7257
| * ccmake: Fix crash when deleting all cache entriesMartin Duffy2022-05-122-9/+11
| | | | | | | | | | | | | | | | Prevents crash when deleting all cache entries. Additionally, if advanced entries are hidden, no longer show the first advanced entry when deleting all visible entries. Fixes: #23499
| * ccmake: Move Initialization of Fields InlineMartin Duffy2022-05-122-12/+6
| | | | | | | | Move initialization of simple fields in cmCursesMainForm inline.
* | ccmake: Allow Vim keys in cmCursesLongMessageFormMartin Duffy2022-04-071-2/+2
| | | | | | | | | | | | | | | | | | | | Added support for navigation of cmCursesLongMessageForm with j and k which affects the help and log screens. These keys were already supported for cmCursesMainForm since commit e34e9c2705 (ccmake: Add VIM-like bindings for navigation, 2016-07-21, v3.7.0-rc1~295^2), adding them here for consistency. Fixes: #5233
* | ccmake: Fix typo in curses form commentDimitris Apostolou2022-02-171-1/+1
|/
* Utilities: Suppress warnings in third-party code with IBMClangAaron Liu2022-01-271-1/+1
|
* ccmake: Add Windows support using PDCursesDuncan Ogilvie2022-01-184-1/+24
|
* ccmake: Refactor resizing logic into cmCursesFormDuncan Ogilvie2022-01-183-18/+27
|
* Merge topic 'warnings-cleanup'Brad King2021-10-271-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | 7e4e192ce2 Source: fix clang-tidy modernize-redundant-void-arg warning 8d671dd94c Source: fix more -Wmissing-prototypes warnings 1cf14f8c03 Source: fix many -Wmissing-prototypes warnings by marking functions static 319944b3d2 Source: fix some -Wunused-macros warnings 5257d9e71a Source: fix only -Wshorten-64-to-32 warning with explicit cast Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6648
| * Source: fix many -Wmissing-prototypes warnings by marking functions staticSean McBride2021-10-251-1/+1
| |
* | Merge topic 'purge-sprintf'Brad King2021-10-273-16/+21
|\ \ | | | | | | | | | | | | | | | | | | | | | b7e9cd05cd Replace the only non-standard _snprintf with snprintf 5ba6e8ac59 Source: Replace most calls to sprintf with snprintf Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6649
| * | Source: Replace most calls to sprintf with snprintfSean McBride2021-10-253-16/+21
| |/
* | Source: Simplify some boolean expressionsRose2021-10-231-2/+2
|/
* LCC: Add dedicated support for MCST LCC compilermakise-homura2021-10-151-1/+1
| | | | | | | | | | | | | | | | | | | | | Divert LCC compiler as a new one, instead of treating it as GNU. Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been passing checks for GNU compilers, so it has been identified as GNU. Now, with intent of seriously upstreaming its support, it has been added as a separate LCC compiler, and its version displays not a supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead of GNU 7.3.0). This commit adds its support for detection, and also converts basically every check like 'is this compiler GNU?' to 'is this compiler GNU or LCC?'. The only places where this check is untouched, is where it regards other platforms where LCC is unavailable (primarily non-Linux), and where it REALLY differs from GNU compiler. Note: this transition may break software that are already ported to Elbrus, but hardly relies that LCC will be detected as GNU; still such software is not known.
* Rename cmProp in cmValueMarc Chevrier2021-09-212-13/+13
|
* cmMessenger: Pass title inside a metadata structureMarius Messerschmidt2021-05-191-2/+3
|
* Utilities: Suppress warnings in third-party code with NVHPCBrad King2021-04-201-1/+1
|
* Utilities: Suppress warnings in third-party code when using IntelLLVMBrad King2021-01-281-1/+1
|
* clang-tidy: fix `readability-qualified-auto` warningsBen Boeckel2021-01-271-2/+2
|
* Modernize: Use #pragma once in all header filesKitware Robot2020-09-0314-56/+14
| | | | | | | | | | | | | | | | #pragma once is a widely supported compiler pragma, even though it is not part of the C++ standard. Many of the issues keeping #pragma once from being standardized (distributed filesystems, build farms, hard links, etc.) do not apply to CMake - it is easy to build CMake on a single machine. CMake also does not install any header files which can be consumed by other projects (though cmCPluginAPI.h has been deliberately omitted from this conversion in case anyone is still using it.) Finally, #pragma once has been required to build CMake since at least August 2017 (7f29bbe6 enabled server mode unconditionally, which had been using #pragma once since September 2016 (b13d3e0d)). The fact that we now require C++11 filters out old compilers, and it is unlikely that there is a compiler which supports C++11 but does not support #pragma once.
* ccmake: suppress warnings in third-party form codeBrad King2020-08-181-0/+8
|
* Fix typos identified using codespellJean-Christophe Fillion-Robin2020-07-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://github.com/codespell-project/codespell#readme The following command was used: ``` codespell -q6 --skip="\ .git,\ *.json,\ ./Copyright.txt,\ ./Help/command/foreach.rst,\ ./Help/prop_test/REQUIRED_FILES.rst,\ ./Help/variable/CTEST_COVERAGE_COMMAND.rst,\ ./Modules/CMakeCheckCompilerFlagCommonPatterns.cmake,\ ./Modules/CMakeRCInformation.cmake,\ ./Modules/Internal/CPack/NSIS.template.in,\ ./Modules/FindMatlab.cmake,\ ./Modules/MatlabTestsRedirect.cmake,\ ./Modules/Platform/Windows-Clang.cmake,\ ./Modules/Platform/Windows-Intel-Fortran.cmake,\ ./Modules/Platform/Windows-MSVC.cmake,\ ./Source/CMakeVersion.cmake,\ ./Source/cmConvertMSBuildXMLToJSON.py,\ ./Source/cmCreateTestSourceList.cxx,\ ./Source/cmGlobalVisualStudio10Generator.cxx,\ ./Source/cmExportBuildFileGenerator.cxx,\ ./Source/cmExportInstallAndroidMKGenerator.cxx,\ ./Source/cmExportInstallFileGenerator.cxx,\ ./Source/cmExportSet.cxx,\ ./Source/cmExportTryCompileFileGenerator.cxx,\ ./Source/cmFindPackageCommand.cxx,\ ./Source/cmInstallCommand.cxx,\ ./Source/cmGeneratorExpressionLexer.cxx,\ ./Source/cmLocalVisualStudio7Generator.cxx,\ ./Source/cmOrderDirectories.cxx,\ ./Source/cmTarget.cxx,\ ./Source/kwsys/*,\ ./Source/QtDialog/CMakeSetupDialog.ui,\ ./Source/CPack/WiX/cmWIXRichTextFormatWriter.cxx,\ ./Source/CTest/cmParseCoberturaCoverage.h,\ ./Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/English.license.rtf,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.license.txt,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.menu.txt,\ ./Tests/RunCMake/GoogleTest/xml_output.cpp,\ ./Tests/RunCMake/Make/TargetMessages*,\ ./Utilities/*,\ " \ -L "\ dependees,\ endwhile,\ fo,\ filetest,\ helpfull,\ nd,\ objext,\ stoll,\ supercedes,\ superceded,\ vas,\ varn,\ " ```
* ccmake: Display an error and interrupt execution if ncurses failedBartosz Kosiorek2020-06-111-2/+14
|
* Merge topic 'gitlab-ci-ninja-multi'Brad King2020-06-022-11/+5
|\ | | | | | | | | | | | | | | | | | | | | e1b2c0108f gitlab-ci: add a Ninja Multi-Config test job 1e8ecfccdd gitlab-ci: also build ncurses and Qt code on Linux 95721f0a82 ci: install ncurses and Qt development into the Fedora 31 image ed2fe558b0 CursesDialog: resolve clang-tidy warnings 44f1744bed QtDialog: avoid using deprecated APIs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4832
| * CursesDialog: resolve clang-tidy warningsBen Boeckel2020-06-022-11/+5
| | | | | | | | | | | | | | | | | | Fixes: - unnecessary bool expression (cmCursesMainForm) - removes a duplicate if/else branch (RegexExplorer) - collapses redundant if/else branch logic (CMakeSetupDialog and cmCursesStringWidget)
* | Single location for cmProp typedefVitaly Stakhovsky2020-06-012-0/+2
|/
* ccmake: Check that getmaxyx result width is non-negativeBrad King2020-05-191-1/+1
| | | | | Otherwise GCC 10.1 issues a `-Wstringop-overflow=` diagnostic when we use the width for indexing.
* ccmake: Improve coloring, allow customizationMatthew Woehlke2020-04-242-5/+57
| | | | | | | | | | Change the default color for strings from BLUE (which is nearly illegible on any terminals using the standard color palette which has been around since at least CGA, almost 40 years ago) to CYAN. Add ability to customize the colors via an environment variable (inspired by LS_COLORS and using similar syntax). Fixes: #20596
* ccmake: Rename cmCursesColor::{Options => Choice}Matthew Woehlke2020-04-243-4/+4
| | | | | Rename the internal name for the color applied to multiple-choice options to avoid use of the overloaded term 'option'.
* cmCursesLongMessageForm: avoid unnecessary string allocationBen Boeckel2020-04-091-1/+2
| | | | | The addition makes a temporary string and then drops it after adding it to `this->Messages`. Instead, just incrementally append.
* Merge topic 'ccmake_incremental_log_display'Brad King2020-04-094-19/+48
|\ | | | | | | | | | | | | | | | | 60bfaa8fe6 ccmake: Use incremental rendering for the logs e9b36731e9 cmCursesLongMessageForm: Factor out helper to draw message to form Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Robert Maynard <robert.maynard@kitware.com> Merge-request: !4573
| * ccmake: Use incremental rendering for the logsSylvain Joubert2020-04-084-11/+33
| | | | | | | | | | | | | | | | | | This should avoid an exponential slowdown in the display time for projects with lots of output. This is still slower than cmake due to the ncurses drawing, but it should now be O(L) in total and not O(L^2) wrt to output length. Fixes: #20535
| * cmCursesLongMessageForm: Factor out helper to draw message to formBrad King2020-04-082-8/+15
| |
* | Merge topic 'cmprop-state'Brad King2020-03-272-6/+7
|\ \ | | | | | | | | | | | | | | | | | | a7f2ff16a4 cmState::GetCacheEntryProperty: return cmProp Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4522
| * | cmState::GetCacheEntryProperty: return cmPropVitaly Stakhovsky2020-03-252-6/+7
| | |
* | | replace "std::string::find(x) == 0" with cmHasPrefix()Rolf Eike Beer2020-03-231-2/+3
|/ /
* | cmState::GetCacheEntryValue: return cmPropVitaly Stakhovsky2020-03-172-14/+14
|/
* ccmake: Fix crash with cache entries almost the size of the windowSylvain Joubert2019-11-192-86/+43
| | | | | | | | | | | | | | | The previous code: if (curFieldLen < width) { ... strncpy(bar + curFieldLen + 2, help, width - curFieldLen - 2); was not correctly guarded against cache entries whose size were exactly 1 or 2 characters short of the window size. "if (curFieldLen - 2 < width)" would have prevented a copy of negative/max_int characters and a subsequent crash. The whole method was modernized with std::string instead of char*
* ccmake: Fix rendering on window resizeSylvain Joubert2019-11-181-12/+8
| | | | | | | | | Repro steps: configure (without errors), the logs are displayed then the cache is displayed again, resize the window up -> the logs are redisplayed after resize instead of the cache The 'CurrentForm' pointer were left pointed to the last log message form, this resets it to the main form when configure or generate is done
* ccmake: redirect stdout/stderr to the displayed logsSylvain Joubert2019-11-164-33/+50
| | | | | | | | | | | | | | | | | Use cmSystemTools to report some messages. These should now be caught and displayed properly, both in ccmake and cmake-gui Avoid log display flickering during processing - Don't clear the screen each time the long message form is rendered. It always renders the whole screen again so clearing it only causes flickering. - Add scroll down capabilities to the long message form so that it can draw itself directly in the correct state. This removes the need to programatically scroll down just after that also caused flickering. Fixes #19882 Fixes #13288
* ccmake: Identify the current cache entrySylvain Joubert2019-11-041-0/+9
|