diff options
author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2012-06-14 22:51:32 +0200 |
---|---|---|
committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2012-06-14 22:54:30 +0200 |
commit | 96f63e6078ec3153b4db568a2fa7ed5efb546d12 (patch) | |
tree | ed0b8b47a978b6834e0cbc8b27cf3cb15d693df9 /rbutil/rbutilqt/installtalkwindow.cpp | |
parent | 537dfe482fc0378151406ee37a98c99283b5a3f0 (diff) | |
download | rockbox-96f63e6078ec3153b4db568a2fa7ed5efb546d12.tar.gz rockbox-96f63e6078ec3153b4db568a2fa7ed5efb546d12.zip |
Remove mountpoint when storing folders to talk.
When using Rockbox Utility some later time the mountpoint might have changed.
This would invalidate the list of folders to voice even if the folders are
still present on the player. Remove the mountpoint part before storing the
folders, and add it when loading the settings.
Change-Id: Ic4ed98b205d20f6a0b3a1e1da396bbdcd02c255e
Diffstat (limited to 'rbutil/rbutilqt/installtalkwindow.cpp')
-rw-r--r-- | rbutil/rbutilqt/installtalkwindow.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/rbutil/rbutilqt/installtalkwindow.cpp b/rbutil/rbutilqt/installtalkwindow.cpp index dedb19cb38..521cd0db7a 100644 --- a/rbutil/rbutilqt/installtalkwindow.cpp +++ b/rbutil/rbutilqt/installtalkwindow.cpp | |||
@@ -52,11 +52,13 @@ InstallTalkWindow::InstallTalkWindow(QWidget *parent) : QDialog(parent) | |||
52 | 52 | ||
53 | void InstallTalkWindow::saveSettings(void) | 53 | void InstallTalkWindow::saveSettings(void) |
54 | { | 54 | { |
55 | QString mp = RbSettings::value(RbSettings::Mountpoint).toString(); | ||
55 | QModelIndexList si = ui.treeView->selectionModel()->selectedIndexes(); | 56 | QModelIndexList si = ui.treeView->selectionModel()->selectedIndexes(); |
56 | QStringList foldersToTalk; | 57 | QStringList foldersToTalk; |
57 | for(int i = 0; i < si.size(); i++) { | 58 | for(int i = 0; i < si.size(); i++) { |
58 | if(si.at(i).column() == 0) { | 59 | if(si.at(i).column() == 0) { |
59 | foldersToTalk.append(fsm->filePath(si.at(i))); | 60 | QString current = fsm->filePath(si.at(i)); |
61 | foldersToTalk.append(current.remove(QRegExp("^" + mp))); | ||
60 | } | 62 | } |
61 | } | 63 | } |
62 | RbSettings::setValue(RbSettings::TalkFolders, foldersToTalk); | 64 | RbSettings::setValue(RbSettings::TalkFolders, foldersToTalk); |
@@ -118,6 +120,7 @@ void InstallTalkWindow::accept() | |||
118 | 120 | ||
119 | void InstallTalkWindow::updateSettings(void) | 121 | void InstallTalkWindow::updateSettings(void) |
120 | { | 122 | { |
123 | QString mp = RbSettings::value(RbSettings::Mountpoint).toString(); | ||
121 | QString ttsName = RbSettings::value(RbSettings::Tts).toString(); | 124 | QString ttsName = RbSettings::value(RbSettings::Tts).toString(); |
122 | TTSBase* tts = TTSBase::getTTS(this,ttsName); | 125 | TTSBase* tts = TTSBase::getTTS(this,ttsName); |
123 | if(tts->configOk()) | 126 | if(tts->configOk()) |
@@ -129,7 +132,7 @@ void InstallTalkWindow::updateSettings(void) | |||
129 | 132 | ||
130 | QStringList folders = RbSettings::value(RbSettings::TalkFolders).toStringList(); | 133 | QStringList folders = RbSettings::value(RbSettings::TalkFolders).toStringList(); |
131 | for(int i = 0; i < folders.size(); ++i) { | 134 | for(int i = 0; i < folders.size(); ++i) { |
132 | QModelIndex mi = fsm->index(folders.at(i)); | 135 | QModelIndex mi = fsm->index(mp + folders.at(i)); |
133 | ui.treeView->selectionModel()->select(mi, QItemSelectionModel::Select); | 136 | ui.treeView->selectionModel()->select(mi, QItemSelectionModel::Select); |
134 | // make sure all parent items are expanded. | 137 | // make sure all parent items are expanded. |
135 | while((mi = mi.parent()) != QModelIndex()) { | 138 | while((mi = mi.parent()) != QModelIndex()) { |