mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-26 02:35:38 +08:00
Utility functions for notification sounds
This commit is contained in:
committed by
Mat Sutcliffe
parent
9450dfc3b0
commit
77a898c9ec
@@ -10,6 +10,7 @@
|
|||||||
#include "blackmisc/math/mathutils.h"
|
#include "blackmisc/math/mathutils.h"
|
||||||
#include "blackmisc/worker.h"
|
#include "blackmisc/worker.h"
|
||||||
#include "blackmisc/fileutils.h"
|
#include "blackmisc/fileutils.h"
|
||||||
|
#include "blackmisc/directoryutils.h"
|
||||||
#include "blackconfig/buildconfig.h"
|
#include "blackconfig/buildconfig.h"
|
||||||
|
|
||||||
#include <QCoreApplication>
|
#include <QCoreApplication>
|
||||||
@@ -574,4 +575,16 @@ namespace BlackMisc
|
|||||||
if (fileName.isEmpty()) { return false; }
|
if (fileName.isEmpty()) { return false; }
|
||||||
return fileName.contains("swift", Qt::CaseInsensitive) && fileName.contains("installer");
|
return fileName.contains("swift", Qt::CaseInsensitive) && fileName.contains("installer");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString CFileUtils::soundFilePathAndFileName(const QString &name)
|
||||||
|
{
|
||||||
|
if (name.isEmpty()) { return {}; }
|
||||||
|
return CFileUtils::appendFilePaths(CDirectoryUtils::soundFilesDirectory(), name);
|
||||||
|
}
|
||||||
|
|
||||||
|
QUrl CFileUtils::soundFileQUrl(const QString &name)
|
||||||
|
{
|
||||||
|
if (name.isEmpty()) { return {}; }
|
||||||
|
return QUrl::fromLocalFile(CFileUtils::soundFilePathAndFileName(name));
|
||||||
|
}
|
||||||
} // ns
|
} // ns
|
||||||
|
|||||||
@@ -13,12 +13,13 @@
|
|||||||
|
|
||||||
#include "blackmisc/blackmiscexport.h"
|
#include "blackmisc/blackmiscexport.h"
|
||||||
|
|
||||||
|
#include <QUrl>
|
||||||
#include <QDir>
|
#include <QDir>
|
||||||
#include <QFileInfo>
|
#include <QFileInfo>
|
||||||
#include <QFileInfoList>
|
#include <QFileInfoList>
|
||||||
#include <QLockFile>
|
#include <QLockFile>
|
||||||
#include <QString>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
|
#include <QString>
|
||||||
#include <Qt>
|
#include <Qt>
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
@@ -197,6 +198,12 @@ namespace BlackMisc
|
|||||||
|
|
||||||
//! swift installer
|
//! swift installer
|
||||||
static bool isSwiftInstaller(const QString &fileName);
|
static bool isSwiftInstaller(const QString &fileName);
|
||||||
|
|
||||||
|
//! Returns the full path and file name for a sound file
|
||||||
|
static QString soundFilePathAndFileName(const QString &name);
|
||||||
|
|
||||||
|
//! QUrl of soundFilePathAndFileName
|
||||||
|
static QUrl soundFileQUrl(const QString &name);
|
||||||
};
|
};
|
||||||
} // ns
|
} // ns
|
||||||
|
|
||||||
|
|||||||
@@ -7,60 +7,58 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "notificationplayer.h"
|
#include "notificationplayer.h"
|
||||||
#include "blackmisc/directoryutils.h"
|
#include "blackmisc/fileutils.h"
|
||||||
#include <QUrl>
|
|
||||||
|
|
||||||
using namespace BlackMisc;
|
using namespace BlackMisc;
|
||||||
using namespace BlackMisc::Audio;
|
using namespace BlackMisc::Audio;
|
||||||
|
|
||||||
namespace BlackSound
|
namespace BlackSound
|
||||||
{
|
{
|
||||||
|
|
||||||
CNotificationPlayer::CNotificationPlayer(QObject *parent) :
|
CNotificationPlayer::CNotificationPlayer(QObject *parent) :
|
||||||
QObject(parent)
|
QObject(parent)
|
||||||
{
|
{
|
||||||
QSoundEffect *effect = new QSoundEffect(this);
|
QSoundEffect *effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/error.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("error.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationError] = effect;
|
m_effects[CNotificationSounds::NotificationError] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/login.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("login.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationLogin] = effect;
|
m_effects[CNotificationSounds::NotificationLogin] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/logoff.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("logoff.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationLogoff] = effect;
|
m_effects[CNotificationSounds::NotificationLogoff] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/privatemessage.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("privatemessage.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationTextMessagePrivate] = effect;
|
m_effects[CNotificationSounds::NotificationTextMessagePrivate] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/supervisormessage.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("supervisormessage.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationTextMessageSupervisor] = effect;
|
m_effects[CNotificationSounds::NotificationTextMessageSupervisor] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/callsignmentioned.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("callsignmentioned.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationTextCallsignMentioned] = effect;
|
m_effects[CNotificationSounds::NotificationTextCallsignMentioned] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/voiceroomjoined.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("voiceroomjoined.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationVoiceRoomJoined] = effect;
|
m_effects[CNotificationSounds::NotificationVoiceRoomJoined] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/voiceroomleft.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("voiceroomleft.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationVoiceRoomLeft] = effect;
|
m_effects[CNotificationSounds::NotificationVoiceRoomLeft] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/noaudiotransmission.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("noaudiotransmission.wav"));
|
||||||
m_effects[CNotificationSounds::NotificationNoAudioTransmission] = effect;
|
m_effects[CNotificationSounds::NotificationNoAudioTransmission] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/pttclick.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("pttclick.wav"));
|
||||||
m_effects[CNotificationSounds::PTTClickKeyDown] = effect;
|
m_effects[CNotificationSounds::PTTClickKeyDown] = effect;
|
||||||
|
|
||||||
effect = new QSoundEffect(this);
|
effect = new QSoundEffect(this);
|
||||||
effect->setSource(QUrl::fromLocalFile(CDirectoryUtils::soundFilesDirectory() + "/pttclick.wav"));
|
effect->setSource(CFileUtils::soundFileQUrl("pttclick.wav"));
|
||||||
m_effects[CNotificationSounds::PTTClickKeyUp] = effect;
|
m_effects[CNotificationSounds::PTTClickKeyUp] = effect;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -73,5 +71,4 @@ namespace BlackSound
|
|||||||
effect->play();
|
effect->play();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} // ns
|
||||||
}
|
|
||||||
|
|||||||
@@ -18,8 +18,6 @@
|
|||||||
#include <QHash>
|
#include <QHash>
|
||||||
#include <QSoundEffect>
|
#include <QSoundEffect>
|
||||||
|
|
||||||
class QTimer;
|
|
||||||
|
|
||||||
namespace BlackSound
|
namespace BlackSound
|
||||||
{
|
{
|
||||||
//! Player for notification sounds
|
//! Player for notification sounds
|
||||||
|
|||||||
Reference in New Issue
Block a user