On Wed, Jul 8, 2020 at 10:30 PM Maxime Chretien
<maxime.chretien@xxxxxxxxxxx> wrote:
This is useful to see which configuration parameters can be editedI like the idea, but
or not when "Show All Options" is enabled.
Signed-off-by: Maxime Chretien<maxime.chretien@xxxxxxxxxxx>
---
scripts/kconfig/qconf.cc | 7 +++++++
scripts/kconfig/qconf.h | 4 ++++
2 files changed, 11 insertions(+)
maybe this patch could be improved?
For example, in the following test code,
BAR is correctly painted grey when CONFIG_FOO=n,
but "my menu" is always white despite of
"depends on FOO"
----(test code)------
config FOO
bool "foo"
config BAR
bool "bar"
depends on FOO
menu "my menu"
depends on FOO
endmenu
-------(test code end)----
diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.ccI think all the columns should be grey-grounded.
index c0ac8f7b5f1a..be9ff4651da1 100644
--- a/scripts/kconfig/qconf.cc
+++ b/scripts/kconfig/qconf.cc
@@ -208,6 +208,13 @@ void ConfigItem::updateMenu(void)
}
if (!sym_has_value(sym) && visible)
prompt += " (NEW)";
+
+ if(!visible) {
+ setBackground(promptColIdx, QBrush(QColor("#E0E0E0")));
+ } else {
+ setBackground(promptColIdx, QBrush());
+ }
+
Please note you can click other columns to
toggle y/m/n.
How about something like this?
QBrush brush;
if (visible)
brush = QBrush()
else
brush = QBrush(QColor("#E0E0E0"));
setBackground(promptColIdx, brush);
setBackground(nameColIdx, brush);
setBackground(noColIdx, brush);
setBackground(modColIdx, brush);
setBackground(yesColIdx, brush);
setBackground(dataColIdx, brush);
set_prompt:I do not understand why this wrapper is useful...
setText(promptColIdx, prompt);
}
diff --git a/scripts/kconfig/qconf.h b/scripts/kconfig/qconf.h
index c879d79ce817..79e47e8c1ae7 100644
--- a/scripts/kconfig/qconf.h
+++ b/scripts/kconfig/qconf.h
@@ -174,6 +174,10 @@ class ConfigItem : public QTreeWidgetItem {
{
return Parent::text(idx);
}
+ void setBackground(colIdx idx, const QBrush& brush)
+ {
+ Parent::setBackground(idx, brush);
+ }
void setPixmap(colIdx idx, const QIcon &icon)
{
Parent::setIcon(idx, icon);
--
2.27.0