Skip to content

Commit

Permalink
Add hotkey release signal
Browse files Browse the repository at this point in the history
  • Loading branch information
cg2121 committed Jun 9, 2024
1 parent 628a962 commit 82ba7be
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 6 deletions.
13 changes: 10 additions & 3 deletions src/media-data.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,9 @@ MediaObj::MediaObj(const QString &name_, const QString &path_)
MediaObj *sound = static_cast<MediaObj *>(data);

if (pressed)
QMetaObject::invokeMethod(sound, "PlaySound");
QMetaObject::invokeMethod(sound, "Pressed");
else
QMetaObject::invokeMethod(sound, "Released");
};

hotkey = obs_hotkey_register_frontend(QT_TO_UTF8(hotkeyName),
Expand Down Expand Up @@ -120,7 +122,12 @@ float MediaObj::GetVolume()
return volume;
}

void MediaObj::PlaySound()
void MediaObj::Pressed()
{
emit Play(this);
emit HotkeyPressed(this);
}

void MediaObj::Released()
{
emit HotkeyReleased(this);
}
7 changes: 5 additions & 2 deletions src/media-data.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ class MediaObj : public QObject {
obs_hotkey_id hotkey = OBS_INVALID_HOTKEY_ID;

private slots:
void PlaySound();
void Pressed();
void Released();

public:
MediaObj(const QString &name, const QString &path);
Expand All @@ -46,6 +47,8 @@ private slots:
float GetVolume();

signals:
void Play(MediaObj *obj);
void HotkeyPressed(MediaObj *obj);
void HotkeyReleased(MediaObj *obj);

void Renamed(MediaObj *obj, QString newName);
};
2 changes: 1 addition & 1 deletion src/soundboard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ MediaObj *Soundboard::Add(const QString &name_, const QString &path)
ui->list->addItem(item);
ui->list->setCurrentItem(item);

connect(obj, &MediaObj::Play, this, &Soundboard::Play);
connect(obj, &MediaObj::HotkeyPressed, this, &Soundboard::Play);
connect(obj, &MediaObj::Renamed, this, &Soundboard::ItemRenamed);

UpdateActions();
Expand Down
1 change: 1 addition & 0 deletions src/soundboard.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ private slots:

MediaObj *Add(const QString &name, const QString &path);
void Play(MediaObj *obj);
void Stop(MediaObj *obj);

void EditMediaName();
void MediaNameEdited(QWidget *editor);
Expand Down

0 comments on commit 82ba7be

Please sign in to comment.