diff --git a/CMakeLists.txt b/CMakeLists.txt index 60dd9844..c8721624 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -174,6 +174,8 @@ target_sources( lib/utils/item-selection-helpers.hpp lib/utils/layout-helpers.cpp lib/utils/layout-helpers.hpp + lib/utils/list-controls.cpp + lib/utils/list-controls.hpp lib/utils/list-editor.cpp lib/utils/list-editor.hpp lib/utils/log-helper.cpp diff --git a/data/locale/en-US.ini b/data/locale/en-US.ini index 3c7ab785..7381b0e0 100644 --- a/data/locale/en-US.ini +++ b/data/locale/en-US.ini @@ -1117,6 +1117,11 @@ AdvSceneSwitcher.item.emptyName="Empty name not allowed!" AdvSceneSwitcher.item.nameNotAvailable="Name not available!" AdvSceneSwitcher.item.nameReserved="Name reserved!" +AdvSceneSwitcher.listControls.add="Add" +AdvSceneSwitcher.listControls.remove="Remove" +AdvSceneSwitcher.listControls.up="Up" +AdvSceneSwitcher.listControls.down="Down" + AdvSceneSwitcher.macroSegmentSelection.invalid="Invalid selection!" AdvSceneSwitcher.validation.text.maxLength="Only %1 characters are allowed in this field!" diff --git a/forms/advanced-scene-switcher.ui b/forms/advanced-scene-switcher.ui index 48d67c66..e10c6535 100644 --- a/forms/advanced-scene-switcher.ui +++ b/forms/advanced-scene-switcher.ui @@ -68,7 +68,7 @@ 0 0 962 - 1033 + 1040 @@ -572,40 +572,22 @@ - - - - 22 - 22 - - + ../../../forms/images/up.png../../../forms/images/up.png - - true - upArrowIconSmall - - - - 22 - 22 - - + ../../../forms/images/down.png../../../forms/images/down.png - - true - downArrowIconSmall @@ -739,135 +721,47 @@ - + - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.macroAddButton - - true - addIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.macroRemoveButton - - true - removeIconSmall - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - Qt::Vertical - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.macroUpButton - - true - upArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.macroDownButton - - true - downArrowIconSmall - - - - Qt::Horizontal - - - - 40 - 20 - - - - @@ -960,22 +854,13 @@ - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.openMacroSettingsButton - - true - propertiesIconSmall @@ -1013,173 +898,67 @@ - + 9 - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.conditionAddButton - - true - addIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.conditionRemoveButton - - true - removeIconSmall - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - Qt::Vertical - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.conditionTopButton - - true - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.conditionUpButton - - true - upArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.conditionDownButton - - true - downArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.conditionBottomButton - - true - - - - - Qt::Horizontal - - - - 40 - 20 - - - - @@ -1213,155 +992,62 @@ - + 9 - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.actionAddButton - - true - addIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.actionRemoveButton - - true - removeIconSmall - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - Qt::Vertical - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.actionTopButton - - true - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.actionUpButton - - true - upArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.actionDownButton - - true - downArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.actionBottomButton - - true - @@ -1378,22 +1064,13 @@ - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.toggleShowElseSection true - - true - @@ -1425,170 +1102,64 @@ - + 9 - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.elseActionAddButton - - true - addIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.elseActionRemoveButton - - true - removeIconSmall - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - Qt::Vertical - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 5 - 20 - - - - - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.elseActionTopButton - - true - - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.elseActionUpButton - - true - upArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.elseActionDownButton - - true - downArrowIconSmall - - - - 22 - 16777215 - - + AdvSceneSwitcher.macroTab.tooltip.elseActionBottomButton - - true - - - - - Qt::Horizontal - - - - 40 - 20 - - - - diff --git a/lib/macro/macro-list.cpp b/lib/macro/macro-list.cpp index 4656c731..49a5ad9c 100644 --- a/lib/macro/macro-list.cpp +++ b/lib/macro/macro-list.cpp @@ -40,9 +40,12 @@ void MacroList::SetContent(const std::vector ¯os) UpdateListSize(); } -void MacroList::AddControl(QWidget *widget) +QAction *MacroList::AddControl(QWidget *widget, bool addSeperator) { - _controlsLayout->insertWidget(_controlsLayout->count() - 1, widget); + if (addSeperator) { + _controls->addSeparator(); + } + return _controls->addWidget(widget); } int MacroList::CurrentRow() diff --git a/lib/macro/macro-list.hpp b/lib/macro/macro-list.hpp index cbaf10b4..b0527e8a 100644 --- a/lib/macro/macro-list.hpp +++ b/lib/macro/macro-list.hpp @@ -9,7 +9,7 @@ class ADVSS_EXPORT MacroList final : public ListEditor { public: MacroList(QWidget *parent, bool allowDuplicates, bool reorder); void SetContent(const std::vector &); - void AddControl(QWidget *); + QAction *AddControl(QWidget *, bool addSeperator = true); int CurrentRow(); private slots: diff --git a/lib/macro/macro-tab.cpp b/lib/macro/macro-tab.cpp index 407267a5..50ead5af 100644 --- a/lib/macro/macro-tab.cpp +++ b/lib/macro/macro-tab.cpp @@ -774,10 +774,12 @@ void AdvSceneSwitcher::on_macroSettings_clicked() static void moveControlsToSplitter(QSplitter *splitter, int idx, QLayoutItem *item) { - static int splitterHandleWidth = 38; + static int splitterHandleWidth = 32; auto handle = splitter->handle(idx); auto layout = item->layout(); - layout->setContentsMargins(7, 7, 7, 7); + int leftMargin, rightMargin; + layout->getContentsMargins(&leftMargin, nullptr, &rightMargin, nullptr); + layout->setContentsMargins(leftMargin, 0, rightMargin, 0); handle->setLayout(layout); splitter->setHandleWidth(splitterHandleWidth); splitter->setStyleSheet("QSplitter::handle {background: transparent;}"); @@ -827,6 +829,32 @@ static void runSegmentHighligtChecks(AdvSceneSwitcher *ss) } } +static QToolBar * +setupToolBar(const std::initializer_list> + &widgetGroups) +{ + auto toolbar = new QToolBar(); + toolbar->setIconSize({16, 16}); + + QAction *lastSeperator = nullptr; + + for (const auto &widgetGroup : widgetGroups) { + for (const auto &widget : widgetGroup) { + toolbar->addWidget(widget); + } + lastSeperator = toolbar->addSeparator(); + } + + if (lastSeperator) { + toolbar->removeAction(lastSeperator); + } + + // Prevent "extension" button from showing up + toolbar->setSizePolicy(QSizePolicy::MinimumExpanding, + QSizePolicy::Preferred); + return toolbar; +} + void AdvSceneSwitcher::SetupMacroTab() { ui->macroElseActions->installEventFilter(this); @@ -835,6 +863,11 @@ void AdvSceneSwitcher::SetupMacroTab() if (GetMacros().size() == 0 && !switcher->disableHints) { addPulse = HighlightWidget(ui->macroAdd, QColor(Qt::green)); } + + auto macroControls = setupToolBar({{ui->macroAdd, ui->macroRemove}, + {ui->macroUp, ui->macroDown}}); + ui->macroControlLayout->addWidget(macroControls); + ui->macros->Reset(GetMacros(), GetGlobalMacroSettings()._highlightExecuted); connect(ui->macros, SIGNAL(MacroSelectionAboutToChange()), this, @@ -886,13 +919,7 @@ void AdvSceneSwitcher::SetupMacroTab() SLOT(HighlightOnChange())); onChangeHighlightTimer.start(); - // Move condition controls into splitter handle layout - moveControlsToSplitter(ui->macroActionConditionSplitter, 1, - ui->macroConditionsLayout->takeAt(1)); - moveControlsToSplitter(ui->macroElseActionSplitter, 1, - ui->macroActionsLayout->takeAt(1)); - - // Set action and condition control icons + // Set action and condition toolbars const std::string pathPrefix = GetDataFilePath("res/images/" + GetThemeTypeName()); SetButtonIcon(ui->actionTop, (pathPrefix + "DoubleUp.svg").c_str()); @@ -907,6 +934,28 @@ void AdvSceneSwitcher::SetupMacroTab() SetButtonIcon(ui->toggleElseActions, (pathPrefix + "NotEqual.svg").c_str()); + auto conditionToolbar = + setupToolBar({{ui->conditionAdd, ui->conditionRemove}, + {ui->conditionTop, ui->conditionUp, + ui->conditionDown, ui->conditionBottom}}); + auto actionToolbar = setupToolBar({{ui->actionAdd, ui->actionRemove}, + {ui->actionTop, ui->actionUp, + ui->actionDown, ui->actionBottom}}); + auto elseActionToolbar = + setupToolBar({{ui->elseActionAdd, ui->elseActionRemove}, + {ui->elseActionTop, ui->elseActionUp, + ui->elseActionDown, ui->elseActionBottom}}); + + ui->conditionControlsLayout->addWidget(conditionToolbar); + ui->actionControlsLayout->insertWidget(0, actionToolbar); + ui->elseActionControlsLayout->addWidget(elseActionToolbar); + + // Move condition controls into splitter handle layout + moveControlsToSplitter(ui->macroActionConditionSplitter, 1, + ui->macroConditionsLayout->takeAt(1)); + moveControlsToSplitter(ui->macroElseActionSplitter, 1, + ui->macroActionsLayout->takeAt(1)); + // Reserve more space for macro edit area than for the macro list ui->macroListMacroEditSplitter->setStretchFactor(0, 1); ui->macroListMacroEditSplitter->setStretchFactor(1, 4); @@ -1400,7 +1449,7 @@ static void fade(QWidget *widget, bool fadeOut) animation->start(QPropertyAnimation::DeleteWhenStopped); } -void fadeWidgets(const std::vector &widgets, bool fadeOut) +static void fadeWidgets(const std::vector &widgets, bool fadeOut) { for (const auto &widget : widgets) { fade(widget, fadeOut); diff --git a/lib/utils/list-controls.cpp b/lib/utils/list-controls.cpp new file mode 100644 index 00000000..44818903 --- /dev/null +++ b/lib/utils/list-controls.cpp @@ -0,0 +1,44 @@ +#include "list-controls.hpp" +#include "obs-module-helper.hpp" +#include "ui-helpers.hpp" + +#include +#include + +namespace advss { + +ListControls::ListControls(QWidget *parent, bool reorder) : QToolBar(parent) +{ + setObjectName("listControls"); + setStyleSheet("#listControls { background-color: transparent; }"); + + setIconSize({16, 16}); + + AddActionHelper("addIconSmall", "AdvSceneSwitcher.listControls.add", + [this]() { Add(); }); + AddActionHelper("removeIconSmall", + "AdvSceneSwitcher.listControls.remove", + [this]() { Remove(); }); + + if (reorder) { + addSeparator(); + AddActionHelper("upArrowIconSmall", + "AdvSceneSwitcher.listControls.up", + [this]() { Up(); }); + AddActionHelper("downArrowIconSmall", + "AdvSceneSwitcher.listControls.down", + [this]() { Down(); }); + } +} + +void ListControls::AddActionHelper(const char *theme, const char *tooltip, + const std::function &signal) +{ + auto button = new QToolButton(this); + button->setToolTip(obs_module_text(tooltip)); + button->setProperty("themeID", QVariant(QString(theme))); + auto action = addWidget(button); + button->connect(button, &QToolButton::clicked, this, signal); +} + +} // namespace advss diff --git a/lib/utils/list-controls.hpp b/lib/utils/list-controls.hpp new file mode 100644 index 00000000..3ae2adf2 --- /dev/null +++ b/lib/utils/list-controls.hpp @@ -0,0 +1,25 @@ +#pragma once +#include "export-symbol-helper.hpp" + +#include + +namespace advss { + +class ADVSS_EXPORT ListControls final : public QToolBar { + Q_OBJECT + +public: + ListControls(QWidget *parent = nullptr, bool reorder = true); + +signals: + void Add(); + void Remove(); + void Up(); + void Down(); + +private: + void AddActionHelper(const char *theme, const char *tooltip, + const std::function &signal); +}; + +} // namespace advss diff --git a/lib/utils/list-editor.cpp b/lib/utils/list-editor.cpp index c87ca4f6..e325b0bf 100644 --- a/lib/utils/list-editor.cpp +++ b/lib/utils/list-editor.cpp @@ -6,53 +6,19 @@ namespace advss { ListEditor::ListEditor(QWidget *parent, bool reorder) : QWidget(parent), _list(new QListWidget()), - _add(new QPushButton()), - _remove(new QPushButton()), - _up(new QPushButton()), - _down(new QPushButton()), - _controlsLayout(new QHBoxLayout()), + _controls(new ListControls(this, reorder)), _mainLayout(new QVBoxLayout()) { - _add->setMaximumWidth(22); - _add->setProperty("themeID", - QVariant(QString::fromUtf8("addIconSmall"))); - _add->setFlat(true); - _remove->setMaximumWidth(22); - _remove->setProperty("themeID", - QVariant(QString::fromUtf8("removeIconSmall"))); - _remove->setFlat(true); - _up->setMaximumWidth(22); - _up->setProperty("themeID", - QVariant(QString::fromUtf8("upArrowIconSmall"))); - _up->setFlat(true); - _down->setMaximumWidth(22); - _down->setProperty("themeID", - QVariant(QString::fromUtf8("downArrowIconSmall"))); - _down->setFlat(true); - - QWidget::connect(_add, SIGNAL(clicked()), this, SLOT(Add())); - QWidget::connect(_remove, SIGNAL(clicked()), this, SLOT(Remove())); - QWidget::connect(_up, SIGNAL(clicked()), this, SLOT(Up())); - QWidget::connect(_down, SIGNAL(clicked()), this, SLOT(Down())); + QWidget::connect(_controls, SIGNAL(Add()), this, SLOT(Add())); + QWidget::connect(_controls, SIGNAL(Remove()), this, SLOT(Remove())); + QWidget::connect(_controls, SIGNAL(Up()), this, SLOT(Up())); + QWidget::connect(_controls, SIGNAL(Down()), this, SLOT(Down())); QWidget::connect(_list, SIGNAL(itemDoubleClicked(QListWidgetItem *)), this, SLOT(Clicked(QListWidgetItem *))); - _controlsLayout->setContentsMargins(0, 0, 0, 0); - _controlsLayout->addWidget(_add); - _controlsLayout->addWidget(_remove); - if (reorder) { - auto line = new QFrame(); - line->setFrameShape(QFrame::VLine); - line->setFrameShadow(QFrame::Sunken); - _controlsLayout->addWidget(line); - _controlsLayout->addWidget(_up); - _controlsLayout->addWidget(_down); - } - _controlsLayout->addStretch(); - _mainLayout->setContentsMargins(0, 0, 0, 0); _mainLayout->addWidget(_list); - _mainLayout->addLayout(_controlsLayout); + _mainLayout->addWidget(_controls); setLayout(_mainLayout); } diff --git a/lib/utils/list-editor.hpp b/lib/utils/list-editor.hpp index d89554aa..966207c2 100644 --- a/lib/utils/list-editor.hpp +++ b/lib/utils/list-editor.hpp @@ -1,7 +1,7 @@ #pragma once #include "export-symbol-helper.hpp" +#include "list-controls.hpp" -#include #include #include @@ -27,11 +27,7 @@ protected: void UpdateListSize(); QListWidget *_list; - QPushButton *_add; - QPushButton *_remove; - QPushButton *_up; - QPushButton *_down; - QHBoxLayout *_controlsLayout; + ListControls *_controls; QVBoxLayout *_mainLayout; }; diff --git a/lib/utils/regex-config.cpp b/lib/utils/regex-config.cpp index 8c8a5f0d..2bfa9e24 100644 --- a/lib/utils/regex-config.cpp +++ b/lib/utils/regex-config.cpp @@ -88,12 +88,10 @@ RegexConfig RegexConfig::PartialMatchRegexConfig() RegexConfigWidget::RegexConfigWidget(QWidget *parent, bool showEnable) : QWidget(parent), - _openSettings(new QPushButton()), + _openSettings(new QToolButton()), _enable(new QPushButton()) { - _openSettings->setMaximumWidth(22); SetButtonIcon(_openSettings, ":/settings/images/settings/general.svg"); - _openSettings->setFlat(true); _openSettings->setToolTip( obs_module_text("AdvSceneSwitcher.regex.configure")); diff --git a/lib/utils/regex-config.hpp b/lib/utils/regex-config.hpp index c110237d..12fd44ce 100644 --- a/lib/utils/regex-config.hpp +++ b/lib/utils/regex-config.hpp @@ -2,12 +2,13 @@ #include "export-symbol-helper.hpp" #include -#include #include -#include #include #include +#include #include +#include +#include namespace advss { @@ -63,7 +64,7 @@ signals: private: void SetVisibility(); - QPushButton *_openSettings; + QToolButton *_openSettings; QPushButton *_enable; RegexConfig _config; }; diff --git a/lib/utils/resource-table.cpp b/lib/utils/resource-table.cpp index fd976204..0751626d 100644 --- a/lib/utils/resource-table.cpp +++ b/lib/utils/resource-table.cpp @@ -15,20 +15,16 @@ ResourceTable::ResourceTable(QTabWidget *parent, const QString &help, const std::function &openSettings) : QWidget(parent), _table(new QTableWidget()), - _add(new QPushButton()), - _remove(new QPushButton()), + _add(new QToolButton()), + _remove(new QToolButton()), _help(new QLabel(help)) { - _add->setMaximumWidth(22); _add->setProperty("themeID", QVariant(QString::fromUtf8("addIconSmall"))); - _add->setFlat(true); _add->setToolTip(addToolTip); - _remove->setMaximumWidth(22); _remove->setProperty("themeID", QVariant(QString::fromUtf8("removeIconSmall"))); - _remove->setFlat(true); _remove->setToolTip(removeToolTip); _help->setWordWrap(true); diff --git a/lib/utils/resource-table.hpp b/lib/utils/resource-table.hpp index 23c1421d..db19636b 100644 --- a/lib/utils/resource-table.hpp +++ b/lib/utils/resource-table.hpp @@ -2,8 +2,8 @@ #include "export-symbol-helper.hpp" #include -#include #include +#include #include class QResizeEvent; @@ -33,8 +33,8 @@ protected: private: QTableWidget *_table; - QPushButton *_add; - QPushButton *_remove; + QToolButton *_add; + QToolButton *_remove; QLabel *_help; QObject *_highlightConnection = nullptr; diff --git a/lib/utils/ui-helpers.cpp b/lib/utils/ui-helpers.cpp index ca0bb7ba..3a91c3cc 100644 --- a/lib/utils/ui-helpers.cpp +++ b/lib/utils/ui-helpers.cpp @@ -70,7 +70,7 @@ void SetHeightToContentHeight(QListWidget *list) list->setMaximumHeight(height); } -void SetButtonIcon(QPushButton *button, const char *path) +void SetButtonIcon(QAbstractButton *button, const char *path) { QIcon icon; icon.addFile(QString::fromUtf8(path), QSize(), QIcon::Normal, diff --git a/lib/utils/ui-helpers.hpp b/lib/utils/ui-helpers.hpp index fed73e1a..89742946 100644 --- a/lib/utils/ui-helpers.hpp +++ b/lib/utils/ui-helpers.hpp @@ -1,11 +1,11 @@ #pragma once #include "export-symbol-helper.hpp" +#include #include #include #include #include -#include #include #include #include @@ -19,7 +19,7 @@ EXPORT QObject *HighlightWidget(QWidget *widget, QColor startColor, bool once = false); EXPORT void SetHeightToContentHeight(QListWidget *list); -EXPORT void SetButtonIcon(QPushButton *button, const char *path); +EXPORT void SetButtonIcon(QAbstractButton *button, const char *path); EXPORT int FindIdxInRagne(QComboBox *list, int start, int stop, const std::string &value, Qt::MatchFlags = Qt::MatchExactly | Qt::MatchCaseSensitive); diff --git a/plugins/base/macro-action-sequence.cpp b/plugins/base/macro-action-sequence.cpp index 316156c4..d98b57a0 100644 --- a/plugins/base/macro-action-sequence.cpp +++ b/plugins/base/macro-action-sequence.cpp @@ -197,11 +197,7 @@ MacroActionSequenceEdit::MacroActionSequenceEdit( _resetIndex->setMinimum(1); - auto line = new QFrame(); - line->setFrameShape(QFrame::VLine); - line->setFrameShadow(QFrame::Sunken); - _macroList->AddControl(line); - _macroList->AddControl(_continueFrom); + (void)_macroList->AddControl(_continueFrom); QWidget::connect(_macroList, SIGNAL(Added(const std::string &)), this, SLOT(Add(const std::string &))); diff --git a/plugins/twitch/category-selection.cpp b/plugins/twitch/category-selection.cpp index 61eaf705..4325c991 100644 --- a/plugins/twitch/category-selection.cpp +++ b/plugins/twitch/category-selection.cpp @@ -281,9 +281,8 @@ void ProgressDialog::CategoryCountUpdated(int value) } TwitchCategorySearchButton::TwitchCategorySearchButton(QWidget *parent) - : QPushButton(parent) + : QToolButton(parent) { - setMaximumWidth(22); const std::string pathPrefix = GetDataFilePath("res/images/" + GetThemeTypeName()); SetButtonIcon(this, (pathPrefix + "Search.svg").c_str()); diff --git a/plugins/twitch/category-selection.hpp b/plugins/twitch/category-selection.hpp index a9f2f88e..4c7e47e7 100644 --- a/plugins/twitch/category-selection.hpp +++ b/plugins/twitch/category-selection.hpp @@ -6,7 +6,7 @@ #include #include #include -#include +#include namespace advss { @@ -94,7 +94,7 @@ private: static std::map _streamingCategories; }; -class TwitchCategorySearchButton : public QPushButton { +class TwitchCategorySearchButton : public QToolButton { Q_OBJECT public: diff --git a/tests/mocks/ui-helpers.cpp b/tests/mocks/ui-helpers.cpp index 8b0ce42a..ea2d5625 100644 --- a/tests/mocks/ui-helpers.cpp +++ b/tests/mocks/ui-helpers.cpp @@ -12,7 +12,7 @@ QObject *HighlightWidget(QWidget *widget, QColor startColor, QColor endColor, void SetHeightToContentHeight(QListWidget *list) {} -void SetButtonIcon(QPushButton *button, const char *path) {} +void SetButtonIcon(QAbstractButton *button, const char *path) {} int FindIdxInRagne(QComboBox *list, int start, int stop, const std::string &value, Qt::MatchFlags flags)