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)