From 42b13c192982fed9f4384142c2d93126606e6bb5 Mon Sep 17 00:00:00 2001 From: WarmUpTill <19472752+WarmUpTill@users.noreply.github.com> Date: Sun, 28 Jun 2026 22:15:40 +0200 Subject: [PATCH] Add restart hint to recording folder/format actions --- data/locale/en-US.ini | 3 ++- data/locale/ja-JP.ini | 1 - plugins/base/macro-action-recording.cpp | 25 +++++++++++++++++-------- plugins/base/macro-action-recording.hpp | 2 ++ 4 files changed, 21 insertions(+), 10 deletions(-) diff --git a/data/locale/en-US.ini b/data/locale/en-US.ini index 63bc736a..0e6761f6 100644 --- a/data/locale/en-US.ini +++ b/data/locale/en-US.ini @@ -939,7 +939,8 @@ AdvSceneSwitcher.action.recording.type.changeOutputFileFormat="Change filename f AdvSceneSwitcher.action.recording.type.addChapter="Add chapter" AdvSceneSwitcher.action.recording.pause.hint="Note that depending on your recording settings you might not be able to pause recording" AdvSceneSwitcher.action.recording.split.hint="Make sure to enable automatic file splitting in the OBS settings first!" -AdvSceneSwitcher.action.recording.entry="{{actions}}{{recordFolder}}{{recordFileFormat}}{{chapterName}}{{pauseHint}}{{splitHint}}" +AdvSceneSwitcher.action.recording.outputNotActive.hint="This change will only take effect when the Recording, Replay Buffer, ... output is not active.\nThe output needs to be restarted for the change to apply." +AdvSceneSwitcher.action.recording.layout="{{actions}}{{recordFolder}}{{recordFileFormat}}{{outputNotActiveHelp}}{{chapterName}}{{pauseHint}}{{splitHint}}" AdvSceneSwitcher.action.replay="Replay buffer" AdvSceneSwitcher.action.replay.saveWarn="Warning: Saving too frequently might result in the replay buffer not actually being saved!" AdvSceneSwitcher.action.replay.durationWarn="Warning: Changing the maximum replay time will only apply the next time the replay buffer is started!" diff --git a/data/locale/ja-JP.ini b/data/locale/ja-JP.ini index 5fc8c5eb..f8fa24c0 100644 --- a/data/locale/ja-JP.ini +++ b/data/locale/ja-JP.ini @@ -830,7 +830,6 @@ AdvSceneSwitcher.action.recording.type.changeOutputFolder="出力フォルダの AdvSceneSwitcher.action.recording.type.changeOutputFileFormat="ファイル名の書式変更" AdvSceneSwitcher.action.recording.pause.hint="録画設定によっては録画を一時停止できない場合がありますのでご注意ください" AdvSceneSwitcher.action.recording.split.hint="まずOBS設定で自動ファイル分割を有効にしてください!" -; AdvSceneSwitcher.action.recording.entry="{{actions}}{{recordFolder}}{{recordFileFormat}}{{pauseHint}}{{splitHint}}" AdvSceneSwitcher.action.replay="リプレイバッファー" AdvSceneSwitcher.action.replay.saveWarn="警告: 頻繁に保存しすぎると、リプレイ バッファーが実際には保存されなくなる可能性があります。" AdvSceneSwitcher.action.replay.durationWarn="注意: 最大リプレイ時間の変更は、次回再生バッファを開始したときから適用されます!" diff --git a/plugins/base/macro-action-recording.cpp b/plugins/base/macro-action-recording.cpp index 03fdacea..f57b63f7 100644 --- a/plugins/base/macro-action-recording.cpp +++ b/plugins/base/macro-action-recording.cpp @@ -171,6 +171,10 @@ MacroActionRecordEdit::MacroActionRecordEdit( "AdvSceneSwitcher.action.recording.split.hint"))), _recordFolder(new FileSelection(FileSelection::Type::FOLDER, this)), _recordFileFormat(new VariableLineEdit(this)), + _outputNotActiveHelp(new HelpIcon( + obs_module_text( + "AdvSceneSwitcher.action.recording.outputNotActive.hint"), + this)), _chapterName(new VariableLineEdit(this)) { populateActionSelection(_actions); @@ -185,14 +189,16 @@ MacroActionRecordEdit::MacroActionRecordEdit( SLOT(ChapterNameChanged())); auto mainLayout = new QHBoxLayout; - PlaceWidgets(obs_module_text("AdvSceneSwitcher.action.recording.entry"), - mainLayout, - {{"{{actions}}", _actions}, - {"{{pauseHint}}", _pauseHint}, - {"{{splitHint}}", _splitHint}, - {"{{recordFolder}}", _recordFolder}, - {"{{recordFileFormat}}", _recordFileFormat}, - {"{{chapterName}}", _chapterName}}); + PlaceWidgets( + obs_module_text("AdvSceneSwitcher.action.recording.layout"), + mainLayout, + {{"{{actions}}", _actions}, + {"{{pauseHint}}", _pauseHint}, + {"{{splitHint}}", _splitHint}, + {"{{recordFolder}}", _recordFolder}, + {"{{recordFileFormat}}", _recordFileFormat}, + {"{{outputNotActiveHelp}}", _outputNotActiveHelp}, + {"{{chapterName}}", _chapterName}}); setLayout(mainLayout); _entryData = entryData; @@ -245,6 +251,9 @@ void MacroActionRecordEdit::SetWidgetVisibility() MacroActionRecord::Action::FOLDER); _recordFileFormat->setVisible(_entryData->_action == MacroActionRecord::Action::FILE_FORMAT); + _outputNotActiveHelp->setVisible( + _entryData->_action == MacroActionRecord::Action::FOLDER || + _entryData->_action == MacroActionRecord::Action::FILE_FORMAT); _chapterName->setVisible(_entryData->_action == MacroActionRecord::Action::ADD_CHAPTER); } diff --git a/plugins/base/macro-action-recording.hpp b/plugins/base/macro-action-recording.hpp index af8e7d3e..2515348b 100644 --- a/plugins/base/macro-action-recording.hpp +++ b/plugins/base/macro-action-recording.hpp @@ -1,6 +1,7 @@ #pragma once #include "macro-action-edit.hpp" #include "file-selection.hpp" +#include "help-icon.hpp" #include "variable-line-edit.hpp" #include @@ -70,6 +71,7 @@ protected: QLabel *_splitHint; FileSelection *_recordFolder; VariableLineEdit *_recordFileFormat; + HelpIcon *_outputNotActiveHelp; VariableLineEdit *_chapterName; std::shared_ptr _entryData;