Allow selecting source type for scene visibility action

This should allow to simplify some setups which required showing /
hiding all sources of a particular type.
This commit is contained in:
WarmUpTill
2021-11-07 12:21:07 +01:00
committed by WarmUpTill
parent fbc9818764
commit e452d8cc8c
5 changed files with 161 additions and 19 deletions

View File

@@ -8,6 +8,11 @@ enum class SceneVisibilityAction {
HIDE,
};
enum class SceneItemSourceType {
SOURCE,
SOURCE_GROUP,
};
class MacroActionSceneVisibility : public MacroAction {
public:
bool PerformAction();
@@ -22,7 +27,9 @@ public:
}
SceneSelection _scene;
SceneItemSourceType _sourceType = SceneItemSourceType::SOURCE;
OBSWeakSource _source;
std::string _sourceGroup = "";
SceneVisibilityAction _action = SceneVisibilityAction::SHOW;
private:
@@ -49,6 +56,7 @@ public:
private slots:
void SceneChanged(const SceneSelection &);
void SourceTypeChanged(int value);
void SourceChanged(const QString &text);
void ActionChanged(int value);
signals:
@@ -56,6 +64,7 @@ signals:
protected:
SceneSelectionWidget *_scenes;
QComboBox *_sourceTypes;
QComboBox *_sources;
QComboBox *_actions;
std::shared_ptr<MacroActionSceneVisibility> _entryData;

View File

@@ -78,3 +78,4 @@ void populateFilterSelection(QComboBox *list,
void populateSceneItemSelection(QComboBox *list,
OBSWeakSource sceneWeakSource = nullptr);
void populateSceneItemSelection(QComboBox *list, SceneSelection &s);
void populateSourceTypeSelection(QComboBox *list);