Mercurial > hg > svgui
diff widgets/ColourComboBox.h @ 1580:a2ff9c01889e
Merge from branch background-mode
author | Chris Cannam |
---|---|
date | Fri, 24 Jan 2020 15:11:08 +0000 |
parents | 85f04c956f03 |
children |
line wrap: on
line diff
--- a/widgets/ColourComboBox.h Wed Jan 15 13:58:33 2020 +0000 +++ b/widgets/ColourComboBox.h Fri Jan 24 15:11:08 2020 +0000 @@ -29,7 +29,32 @@ public: ColourComboBox(bool withAddNewColourEntry, QWidget *parent = 0); + /** + * Add an entry at the top of the combo for "no colour selected", + * with the given label. + */ + void includeUnsetEntry(QString label); + + /** + * Get the current colour index. This is the same as + * QComboBox::currentIndex() if there is no unset entry, or 1 less + * than it if includeUnsetEntry() has been used. So if there is an + * unset entry, and it is selected, this returns -1. + */ + int getCurrentColourIndex() const { + int index = currentIndex(); + if (m_unsetEntry == "") { + return index; + } else { + return index - 1; + } + } + signals: + /** + * Emitted when the current index is changed. The argument is the + * value returned by getCurrentColourIndex() + */ void colourChanged(int colourIndex); private slots: @@ -38,6 +63,7 @@ private: bool m_withAddNewColourEntry; + QString m_unsetEntry; }; #endif