This is useful to see which configuration parameters can be edited
or not when "Show All Options" is enabled.

Signed-off-by: Maxime Chretien <[email protected]>
---
 scripts/kconfig/qconf.cc | 7 +++++++
 scripts/kconfig/qconf.h  | 4 ++++
 2 files changed, 11 insertions(+)

diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.cc
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());
+       }
+
 set_prompt:
        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

Reply via email to