mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-05-12 02:55:18 -04:00
Some more optimizations of SoundManager
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8392 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
acfa384f7f
commit
24a07702f2
7 changed files with 33 additions and 31 deletions
|
@ -70,8 +70,9 @@ SoundManager::SoundManager() : QObject()
|
||||||
|
|
||||||
void SoundManager::soundEvents(SoundEvents &events)
|
void SoundManager::soundEvents(SoundEvents &events)
|
||||||
{
|
{
|
||||||
QDir baseDir = QDir(qApp->applicationDirPath());
|
QDir baseDir = QDir(qApp->applicationDirPath() + "/sounds");
|
||||||
baseDir.cd("sounds");
|
|
||||||
|
events.mDefaultPath = baseDir.absolutePath();
|
||||||
|
|
||||||
/* add standard events */
|
/* add standard events */
|
||||||
events.addEvent(tr("Friend"), tr("Go Online"), SOUND_USER_ONLINE, QFileInfo(baseDir, "online1.wav").absoluteFilePath());
|
events.addEvent(tr("Friend"), tr("Go Online"), SOUND_USER_ONLINE, QFileInfo(baseDir, "online1.wav").absoluteFilePath());
|
||||||
|
@ -132,13 +133,13 @@ void SoundManager::initDefault()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SoundManager::setMute(bool mute)
|
void SoundManager::setMute(bool m)
|
||||||
{
|
{
|
||||||
Settings->beginGroup(GROUP_MAIN);
|
Settings->beginGroup(GROUP_MAIN);
|
||||||
Settings->setValue("mute", mute);
|
Settings->setValue("mute", m);
|
||||||
Settings->endGroup();
|
Settings->endGroup();
|
||||||
|
|
||||||
emit SoundManager::mute(mute);
|
emit mute(m);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SoundManager::isMute()
|
bool SoundManager::isMute()
|
||||||
|
|
|
@ -50,6 +50,7 @@ public:
|
||||||
void addEvent(const QString &groupName, const QString &eventName, const QString &event, const QString &defaultFilename);
|
void addEvent(const QString &groupName, const QString &eventName, const QString &event, const QString &defaultFilename);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
QString mDefaultPath;
|
||||||
QMap<QString, SoundEventInfo> mEventInfos;
|
QMap<QString, SoundEventInfo> mEventInfos;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -58,7 +59,7 @@ class SoundManager : public QObject
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void setMute(bool mute);
|
void setMute(bool m);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void mute(bool isMute);
|
void mute(bool isMute);
|
||||||
|
@ -66,23 +67,23 @@ signals:
|
||||||
public:
|
public:
|
||||||
static void create();
|
static void create();
|
||||||
|
|
||||||
void initDefault();
|
static void initDefault();
|
||||||
QString defaultFilename(const QString &event, bool check);
|
static QString defaultFilename(const QString &event, bool check);
|
||||||
static QString convertFilename(const QString &filename);
|
static QString convertFilename(const QString &filename);
|
||||||
static QString realFilename(const QString &filename);
|
static QString realFilename(const QString &filename);
|
||||||
|
|
||||||
void soundEvents(SoundEvents &events);
|
static void soundEvents(SoundEvents &events);
|
||||||
|
|
||||||
bool isMute();
|
static bool isMute();
|
||||||
|
|
||||||
void play(const QString &event);
|
static void play(const QString &event);
|
||||||
void playFile(const QString &filename);
|
static void playFile(const QString &filename);
|
||||||
|
|
||||||
bool eventEnabled(const QString &event);
|
static bool eventEnabled(const QString &event);
|
||||||
void setEventEnabled(const QString &event, bool enabled);
|
static void setEventEnabled(const QString &event, bool enabled);
|
||||||
|
|
||||||
QString eventFilename(const QString &event);
|
static QString eventFilename(const QString &event);
|
||||||
void setEventFilename(const QString &event, const QString &filename);
|
static void setEventFilename(const QString &event, const QString &filename);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
SoundManager();
|
SoundManager();
|
||||||
|
|
|
@ -170,7 +170,7 @@ void ChatDialog::init(ChatId id, const QString &title)
|
||||||
|
|
||||||
if(msg.incoming && (msg.chat_id.isPeerId() || msg.chat_id.isGxsId()))
|
if(msg.incoming && (msg.chat_id.isPeerId() || msg.chat_id.isGxsId()))
|
||||||
// play sound when recv a message
|
// play sound when recv a message
|
||||||
soundManager->play(SOUND_NEW_CHAT_MESSAGE);
|
SoundManager::play(SOUND_NEW_CHAT_MESSAGE);
|
||||||
|
|
||||||
ChatDialog *cd = getChat(msg.chat_id, Settings->getChatFlags());
|
ChatDialog *cd = getChat(msg.chat_id, Settings->getChatFlags());
|
||||||
if(cd)
|
if(cd)
|
||||||
|
|
|
@ -790,7 +790,7 @@ void NotifyQt::UpdateGUI()
|
||||||
switch(type)
|
switch(type)
|
||||||
{
|
{
|
||||||
case RS_POPUP_ENCRYPTED_MSG:
|
case RS_POPUP_ENCRYPTED_MSG:
|
||||||
soundManager->play(SOUND_MESSAGE_ARRIVED);
|
SoundManager::play(SOUND_MESSAGE_ARRIVED);
|
||||||
|
|
||||||
if ((popupflags & RS_POPUP_MSG) && !_disableAllToaster)
|
if ((popupflags & RS_POPUP_MSG) && !_disableAllToaster)
|
||||||
{
|
{
|
||||||
|
@ -798,7 +798,7 @@ void NotifyQt::UpdateGUI()
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case RS_POPUP_MSG:
|
case RS_POPUP_MSG:
|
||||||
soundManager->play(SOUND_MESSAGE_ARRIVED);
|
SoundManager::play(SOUND_MESSAGE_ARRIVED);
|
||||||
|
|
||||||
if ((popupflags & RS_POPUP_MSG) && !_disableAllToaster)
|
if ((popupflags & RS_POPUP_MSG) && !_disableAllToaster)
|
||||||
{
|
{
|
||||||
|
@ -806,7 +806,7 @@ void NotifyQt::UpdateGUI()
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case RS_POPUP_CONNECT:
|
case RS_POPUP_CONNECT:
|
||||||
soundManager->play(SOUND_USER_ONLINE);
|
SoundManager::play(SOUND_USER_ONLINE);
|
||||||
|
|
||||||
if ((popupflags & RS_POPUP_CONNECT) && !_disableAllToaster)
|
if ((popupflags & RS_POPUP_CONNECT) && !_disableAllToaster)
|
||||||
{
|
{
|
||||||
|
@ -814,7 +814,7 @@ void NotifyQt::UpdateGUI()
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case RS_POPUP_DOWNLOAD:
|
case RS_POPUP_DOWNLOAD:
|
||||||
soundManager->play(SOUND_DOWNLOAD_COMPLETE);
|
SoundManager::play(SOUND_DOWNLOAD_COMPLETE);
|
||||||
|
|
||||||
if ((popupflags & RS_POPUP_DOWNLOAD) && !_disableAllToaster)
|
if ((popupflags & RS_POPUP_DOWNLOAD) && !_disableAllToaster)
|
||||||
{
|
{
|
||||||
|
|
|
@ -95,9 +95,9 @@ QTreeWidgetItem *SoundPage::addItem(QTreeWidgetItem *groupItem, const QString &n
|
||||||
QTreeWidgetItem *item = new QTreeWidgetItem(TYPE_ITEM);
|
QTreeWidgetItem *item = new QTreeWidgetItem(TYPE_ITEM);
|
||||||
item->setData(COLUMN_DATA, ROLE_EVENT, event);
|
item->setData(COLUMN_DATA, ROLE_EVENT, event);
|
||||||
item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
|
item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
|
||||||
item->setCheckState(COLUMN_NAME, soundManager->eventEnabled(event) ? Qt::Checked : Qt::Unchecked);
|
item->setCheckState(COLUMN_NAME, SoundManager::eventEnabled(event) ? Qt::Checked : Qt::Unchecked);
|
||||||
item->setText(COLUMN_NAME, name);
|
item->setText(COLUMN_NAME, name);
|
||||||
item->setText(COLUMN_FILENAME, soundManager->eventFilename(event));
|
item->setText(COLUMN_FILENAME, SoundManager::eventFilename(event));
|
||||||
groupItem->addChild(item);
|
groupItem->addChild(item);
|
||||||
|
|
||||||
return item;
|
return item;
|
||||||
|
@ -113,8 +113,8 @@ bool SoundPage::save(QString &/*errmsg*/)
|
||||||
|
|
||||||
if (item->type() == TYPE_ITEM) {
|
if (item->type() == TYPE_ITEM) {
|
||||||
const QString event = item->data(COLUMN_DATA, ROLE_EVENT).toString();
|
const QString event = item->data(COLUMN_DATA, ROLE_EVENT).toString();
|
||||||
soundManager->setEventEnabled(event, item->checkState(COLUMN_NAME) == Qt::Checked);
|
SoundManager::setEventEnabled(event, item->checkState(COLUMN_NAME) == Qt::Checked);
|
||||||
soundManager->setEventFilename(event, item->text(COLUMN_FILENAME));
|
SoundManager::setEventFilename(event, item->text(COLUMN_FILENAME));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -128,7 +128,7 @@ void SoundPage::load()
|
||||||
|
|
||||||
/* add sound events */
|
/* add sound events */
|
||||||
SoundEvents events;
|
SoundEvents events;
|
||||||
soundManager->soundEvents(events);
|
SoundManager::soundEvents(events);
|
||||||
|
|
||||||
QString event;
|
QString event;
|
||||||
foreach (event, events.mEventInfos.keys()) {
|
foreach (event, events.mEventInfos.keys()) {
|
||||||
|
@ -165,7 +165,7 @@ void SoundPage::eventChanged(QTreeWidgetItem *current, QTreeWidgetItem */*previo
|
||||||
ui.eventName->setText(eventName);
|
ui.eventName->setText(eventName);
|
||||||
|
|
||||||
QString event = current->data(COLUMN_DATA, ROLE_EVENT).toString();
|
QString event = current->data(COLUMN_DATA, ROLE_EVENT).toString();
|
||||||
ui.defaultButton->setDisabled(soundManager->defaultFilename(event, true).isEmpty());
|
ui.defaultButton->setDisabled(SoundManager::defaultFilename(event, true).isEmpty());
|
||||||
}
|
}
|
||||||
|
|
||||||
void SoundPage::filenameChanged(QString filename)
|
void SoundPage::filenameChanged(QString filename)
|
||||||
|
@ -186,7 +186,7 @@ void SoundPage::defaultButtonClicked()
|
||||||
}
|
}
|
||||||
|
|
||||||
QString event = item->data(COLUMN_DATA, ROLE_EVENT).toString();
|
QString event = item->data(COLUMN_DATA, ROLE_EVENT).toString();
|
||||||
ui.filenameEdit->setText(soundManager->defaultFilename(event, true));
|
ui.filenameEdit->setText(SoundManager::defaultFilename(event, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
void SoundPage::browseButtonClicked()
|
void SoundPage::browseButtonClicked()
|
||||||
|
@ -206,5 +206,5 @@ void SoundPage::playButtonClicked()
|
||||||
}
|
}
|
||||||
|
|
||||||
QString filename = item->text(COLUMN_FILENAME);
|
QString filename = item->text(COLUMN_FILENAME);
|
||||||
soundManager->playFile(filename);
|
SoundManager::playFile(filename);
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,7 +44,7 @@ SoundStatus::SoundStatus(QWidget *parent)
|
||||||
|
|
||||||
setLayout(hbox);
|
setLayout(hbox);
|
||||||
|
|
||||||
bool isMute = soundManager->isMute();
|
bool isMute = SoundManager::isMute();
|
||||||
imageButton->setChecked(isMute);
|
imageButton->setChecked(isMute);
|
||||||
|
|
||||||
connect(soundManager, SIGNAL(mute(bool)), this, SLOT(mute(bool)));
|
connect(soundManager, SIGNAL(mute(bool)), this, SLOT(mute(bool)));
|
||||||
|
|
|
@ -335,7 +335,7 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
Settings->setValue(QString::fromUtf8("FirstRun"), false);
|
Settings->setValue(QString::fromUtf8("FirstRun"), false);
|
||||||
|
|
||||||
soundManager->initDefault();
|
SoundManager::initDefault();
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
/* For OSX, we set the default to "cleanlooks", as the AQUA style hides some input boxes
|
/* For OSX, we set the default to "cleanlooks", as the AQUA style hides some input boxes
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue