diff options
author | Sylvain Joubert <joubert.sy@gmail.com> | 2019-10-27 17:25:41 (GMT) |
---|---|---|
committer | Sylvain Joubert <joubert.sy@gmail.com> | 2019-11-04 17:59:20 (GMT) |
commit | 93b66735ac2092675eec7a636625df84ff306fdc (patch) | |
tree | b58c050ad714fa7ea5467f90d26873e764bfa7ea /Source/CursesDialog/cmCursesBoolWidget.cxx | |
parent | dbd14ecacf9b85dcdf5f566538167261dba224fe (diff) | |
download | CMake-93b66735ac2092675eec7a636625df84ff306fdc.zip CMake-93b66735ac2092675eec7a636625df84ff306fdc.tar.gz CMake-93b66735ac2092675eec7a636625df84ff306fdc.tar.bz2 |
ccmake: Use type-based colors to display cache values
The colors are based on the entry type (or value for booleans),
paths and filepaths sharing the same color.
Diffstat (limited to 'Source/CursesDialog/cmCursesBoolWidget.cxx')
-rw-r--r-- | Source/CursesDialog/cmCursesBoolWidget.cxx | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/Source/CursesDialog/cmCursesBoolWidget.cxx b/Source/CursesDialog/cmCursesBoolWidget.cxx index 97b0811..c4dbed8 100644 --- a/Source/CursesDialog/cmCursesBoolWidget.cxx +++ b/Source/CursesDialog/cmCursesBoolWidget.cxx @@ -4,6 +4,7 @@ #include <string> +#include "cmCursesColor.h" #include "cmCursesWidget.h" #include "cmStateTypes.h" @@ -12,8 +13,10 @@ cmCursesBoolWidget::cmCursesBoolWidget(int width, int height, int left, : cmCursesWidget(width, height, left, top) { this->Type = cmStateEnums::BOOL; - set_field_fore(this->Field, A_NORMAL); - set_field_back(this->Field, A_STANDOUT); + if (!cmCursesColor::HasColors()) { + set_field_fore(this->Field, A_NORMAL); + set_field_back(this->Field, A_STANDOUT); + } field_opts_off(this->Field, O_STATIC); this->SetValueAsBool(false); } @@ -42,8 +45,16 @@ void cmCursesBoolWidget::SetValueAsBool(bool value) { if (value) { this->SetValue("ON"); + if (cmCursesColor::HasColors()) { + set_field_fore(this->Field, COLOR_PAIR(cmCursesColor::BoolOn)); + set_field_back(this->Field, COLOR_PAIR(cmCursesColor::BoolOn)); + } } else { this->SetValue("OFF"); + if (cmCursesColor::HasColors()) { + set_field_fore(this->Field, COLOR_PAIR(cmCursesColor::BoolOff)); + set_field_back(this->Field, COLOR_PAIR(cmCursesColor::BoolOff)); + } } } |