diff --git a/app/assets/sound/alarm-poehali.wav b/app/assets/sound/alarm-poehali.wav
new file mode 100644
index 0000000..c3338c3
Binary files /dev/null and b/app/assets/sound/alarm-poehali.wav differ
diff --git a/app/mainwindow.cpp b/app/mainwindow.cpp
index 6371ebb..50a6957 100644
--- a/app/mainwindow.cpp
+++ b/app/mainwindow.cpp
@@ -319,13 +319,16 @@ void MainWindow::onLongBreakEnd()
onUpdateUI();
// Play audio
- if (mAppConfig.play_audio != Empty_Play_Audio)
+ if (mAppConfig.play_audio != Audio_Empty && mAppConfig.play_audio != Audio_Custom)
{
- if (mAppConfig.play_audio == Embedded_Play_Audio)
- QSound::play(":/assets/sound/alarm-retro.wav");
- else
- QSound::play(mAppConfig.play_audio);
+ auto iter = AudioMap.find(mAppConfig.play_audio);
+ if (iter != AudioMap.end())
+ QSound::play(iter->second);
}
+ else
+ if (mAppConfig.play_audio == Audio_Custom)
+ QSound::play(mAppConfig.play_audio_custom);
+
// Run script
if (!mAppConfig.script_on_break_finish.isEmpty())
diff --git a/app/qbreak.qrc b/app/qbreak.qrc
index a3c7d68..e86d5a4 100644
--- a/app/qbreak.qrc
+++ b/app/qbreak.qrc
@@ -13,5 +13,6 @@
assets/images/coffee_cup/icon_128x128.png
assets/images/coffee_cup/icon_512x512.png
assets/sound/alarm-retro.wav
+ assets/sound/alarm-poehali.wav
diff --git a/app/settings.cpp b/app/settings.cpp
index 96b4afb..c439076 100644
--- a/app/settings.cpp
+++ b/app/settings.cpp
@@ -10,8 +10,9 @@ const QString Key_Window_On_Top = "Window_On_Top";
const QString Key_Verbose = "Verbose";
const QString Key_Autostart = "Autostart";
const QString Key_PreferredMonitor = "Preferred_Monitor";
-const QString Key_Audio_On_Break_Finish = "Audio_On_Break_Finish";
-const QString Key_Script_On_Break_Finish = "Script_On_Break_Finish";
+const QString Key_Audio = "Audio";
+const QString Key_Audio_Custom = "Audio_Custom";
+const QString Key_Script = "Script";
void app_settings::save(const config &cfg)
{
@@ -24,8 +25,9 @@ void app_settings::save(const config &cfg)
s.setValue(Key_Verbose, cfg.verbose);
s.setValue(Key_Autostart, cfg.autostart);
s.setValue(Key_PreferredMonitor, cfg.preferred_monitor);
- s.setValue(Key_Audio_On_Break_Finish, cfg.play_audio);
- s.setValue(Key_Script_On_Break_Finish, cfg.script_on_break_finish);
+ s.setValue(Key_Audio, cfg.play_audio);
+ s.setValue(Key_Audio_Custom, cfg.play_audio_custom);
+ s.setValue(Key_Script, cfg.script_on_break_finish);
}
app_settings::config app_settings::load()
@@ -40,8 +42,9 @@ app_settings::config app_settings::load()
r.verbose = s.value(Key_Verbose, Default_Verbose).toBool();
r.autostart = s.value(Key_Autostart, Default_Autostart).toBool();
r.preferred_monitor = s.value(Key_PreferredMonitor, Default_Monitor).toString();
- r.play_audio = s.value(Key_Audio_On_Break_Finish, Empty_Play_Audio).toString();
- r.script_on_break_finish = s.value(Key_Script_On_Break_Finish, QString()).toString();
+ r.play_audio = s.value(Key_Audio, Audio_Empty).toString();
+ r.play_audio_custom = s.value(Key_Audio_Custom, Audio_Custom).toString();
+ r.script_on_break_finish = s.value(Key_Script, QString()).toString();
return r;
}
diff --git a/app/settings.h b/app/settings.h
index a6372b8..08bf7fc 100644
--- a/app/settings.h
+++ b/app/settings.h
@@ -2,6 +2,7 @@
#define SETTINGS_H
#include
+#include