diff options
author | Dominik Wenger <domonoky@googlemail.com> | 2007-10-19 21:49:07 +0000 |
---|---|---|
committer | Dominik Wenger <domonoky@googlemail.com> | 2007-10-19 21:49:07 +0000 |
commit | 04f1eaf4f0828cb5018a005a58ba4bb675b15419 (patch) | |
tree | bffe234247a60705852d123281136477e9ee04b5 | |
parent | 5d066590cc1285f4cbefef60267f0942e58a4cb0 (diff) | |
download | rockbox-04f1eaf4f0828cb5018a005a58ba4bb675b15419.tar.gz rockbox-04f1eaf4f0828cb5018a005a58ba4bb675b15419.zip |
rbutil: try to fix all Bugs from FS#7982 in the talkfile creation. Additionally fix the positon of the _dirname.talk file and uninstallation of talkfiles.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15212 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | rbutil/rbutilqt/installtalkwindow.cpp | 5 | ||||
-rw-r--r-- | rbutil/rbutilqt/talkfile.cpp | 27 | ||||
-rw-r--r-- | rbutil/rbutilqt/talkfile.h | 7 |
3 files changed, 20 insertions, 19 deletions
diff --git a/rbutil/rbutilqt/installtalkwindow.cpp b/rbutil/rbutilqt/installtalkwindow.cpp index fbe2a2749b..bd05911035 100644 --- a/rbutil/rbutilqt/installtalkwindow.cpp +++ b/rbutil/rbutilqt/installtalkwindow.cpp | |||
@@ -114,7 +114,8 @@ void InstallTalkWindow::accept() | |||
114 | 114 | ||
115 | userSettings->sync(); | 115 | userSettings->sync(); |
116 | 116 | ||
117 | talkcreator->setDir(folderToTalk); | 117 | talkcreator->setDir(QDir(folderToTalk)); |
118 | talkcreator->setMountPoint(userSettings->value("mountpoint").toString()); | ||
118 | talkcreator->setTTSexe(pathTTS); | 119 | talkcreator->setTTSexe(pathTTS); |
119 | talkcreator->setTTsOpts(ttsOpts); | 120 | talkcreator->setTTsOpts(ttsOpts); |
120 | talkcreator->setTTsLanguage(ttsLanguage); | 121 | talkcreator->setTTsLanguage(ttsLanguage); |
@@ -166,8 +167,6 @@ void InstallTalkWindow::setUserSettings(QSettings *user) | |||
166 | { | 167 | { |
167 | userSettings = user; | 168 | userSettings = user; |
168 | 169 | ||
169 | talkcreator->setMountPoint(userSettings->value("mountpoint").toString()); | ||
170 | |||
171 | setTalkFolder(userSettings->value("last_talked_folder").toString()); | 170 | setTalkFolder(userSettings->value("last_talked_folder").toString()); |
172 | 171 | ||
173 | } | 172 | } |
diff --git a/rbutil/rbutilqt/talkfile.cpp b/rbutil/rbutilqt/talkfile.cpp index 3b99b2c52c..e13647deb2 100644 --- a/rbutil/rbutilqt/talkfile.cpp +++ b/rbutil/rbutilqt/talkfile.cpp | |||
@@ -43,7 +43,7 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
43 | { | 43 | { |
44 | m_abort = false; | 44 | m_abort = false; |
45 | m_logger = logger; | 45 | m_logger = logger; |
46 | m_logger->addItem("Starting Talkfile generation",LOGINFO); | 46 | m_logger->addItem("Starting Talk file generation",LOGINFO); |
47 | 47 | ||
48 | if(m_curTTS == "sapi") | 48 | if(m_curTTS == "sapi") |
49 | m_tts = new TTSSapi(); | 49 | m_tts = new TTSSapi(); |
@@ -78,7 +78,7 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
78 | { | 78 | { |
79 | if(m_abort) | 79 | if(m_abort) |
80 | { | 80 | { |
81 | m_logger->addItem("Talkfile creation aborted",LOGERROR); | 81 | m_logger->addItem("Talk file creation aborted",LOGERROR); |
82 | m_tts->stop(); | 82 | m_tts->stop(); |
83 | return false; | 83 | return false; |
84 | } | 84 | } |
@@ -88,13 +88,15 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
88 | QString toSpeak; | 88 | QString toSpeak; |
89 | QString filename; | 89 | QString filename; |
90 | QString wavfilename; | 90 | QString wavfilename; |
91 | 91 | ||
92 | if(fileInf.fileName() == "." || fileInf.fileName() == ".." || fileInf.suffix() == "talk") | 92 | //! skip dotdot and .talk files |
93 | if(fileInf.fileName() == ".." || fileInf.suffix() == "talk") | ||
93 | { | 94 | { |
94 | it.next(); | 95 | it.next(); |
95 | continue; | 96 | continue; |
96 | } | 97 | } |
97 | if(fileInf.isDir()) // if it is a dir | 98 | //! if it is a dir |
99 | if(fileInf.isDir()) | ||
98 | { | 100 | { |
99 | // skip entry if folder talking isnt enabled | 101 | // skip entry if folder talking isnt enabled |
100 | if(m_talkFolders == false) | 102 | if(m_talkFolders == false) |
@@ -102,7 +104,7 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
102 | it.next(); | 104 | it.next(); |
103 | continue; | 105 | continue; |
104 | } | 106 | } |
105 | toSpeak = fileInf.fileName(); | 107 | toSpeak = fileInf.absoluteDir().dirName(); |
106 | filename = fileInf.absolutePath() + "/_dirname.talk"; | 108 | filename = fileInf.absolutePath() + "/_dirname.talk"; |
107 | } | 109 | } |
108 | else // if it is a file | 110 | else // if it is a file |
@@ -124,6 +126,7 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
124 | QFileInfo filenameInf(filename); | 126 | QFileInfo filenameInf(filename); |
125 | QFileInfo wavfilenameInf(wavfilename); | 127 | QFileInfo wavfilenameInf(wavfilename); |
126 | 128 | ||
129 | //! the actual generation of the .talk files | ||
127 | if(!filenameInf.exists() || m_overwriteTalk) | 130 | if(!filenameInf.exists() || m_overwriteTalk) |
128 | { | 131 | { |
129 | if(!wavfilenameInf.exists() || m_overwriteWav) | 132 | if(!wavfilenameInf.exists() || m_overwriteWav) |
@@ -146,7 +149,8 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
146 | return false; | 149 | return false; |
147 | } | 150 | } |
148 | } | 151 | } |
149 | 152 | ||
153 | //! remove the intermedia wav file, if requested | ||
150 | QString now = QDate::currentDate().toString("yyyyMMdd"); | 154 | QString now = QDate::currentDate().toString("yyyyMMdd"); |
151 | if(m_removeWav) | 155 | if(m_removeWav) |
152 | { | 156 | { |
@@ -155,15 +159,16 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger) | |||
155 | installlog.remove(wavfilename); | 159 | installlog.remove(wavfilename); |
156 | } | 160 | } |
157 | else | 161 | else |
158 | installlog.setValue(wavfilename.remove(m_mountpoint),now); | 162 | installlog.setValue(wavfilename.remove(0,m_mountpoint.length()),now); |
159 | 163 | ||
160 | installlog.setValue(filename.remove(m_mountpoint),now); | 164 | //! add the .talk file to the install log |
165 | installlog.setValue(filename.remove(0,m_mountpoint.length()),now); | ||
161 | it.next(); | 166 | it.next(); |
162 | } | 167 | } |
163 | 168 | ||
164 | installlog.endGroup(); | 169 | installlog.endGroup(); |
165 | m_tts->stop(); | 170 | m_tts->stop(); |
166 | m_logger->addItem("Finished creating Talkfiles",LOGOK); | 171 | m_logger->addItem("Finished creating Talk files",LOGOK); |
167 | m_logger->setProgressMax(1); | 172 | m_logger->setProgressMax(1); |
168 | m_logger->setProgressValue(1); | 173 | m_logger->setProgressValue(1); |
169 | m_logger->abort(); | 174 | m_logger->abort(); |
diff --git a/rbutil/rbutilqt/talkfile.h b/rbutil/rbutilqt/talkfile.h index 1b8d9ca2e2..54819c80f8 100644 --- a/rbutil/rbutilqt/talkfile.h +++ b/rbutil/rbutilqt/talkfile.h | |||
@@ -67,7 +67,7 @@ public: | |||
67 | void setEncOpts(QString opts) {m_EncOpts=opts;} | 67 | void setEncOpts(QString opts) {m_EncOpts=opts;} |
68 | void setEncTemplate(QString t) { m_curEncTemplate = t; } | 68 | void setEncTemplate(QString t) { m_curEncTemplate = t; } |
69 | 69 | ||
70 | void setDir(QString dir){m_dir = dir; } | 70 | void setDir(QDir dir){m_dir = dir; } |
71 | void setMountPoint(QString mountpoint) {m_mountpoint =mountpoint; } | 71 | void setMountPoint(QString mountpoint) {m_mountpoint =mountpoint; } |
72 | 72 | ||
73 | void setOverwriteTalk(bool ov) {m_overwriteTalk = ov;} | 73 | void setOverwriteTalk(bool ov) {m_overwriteTalk = ov;} |
@@ -83,14 +83,11 @@ private slots: | |||
83 | 83 | ||
84 | private: | 84 | private: |
85 | TTSBase* m_tts; | 85 | TTSBase* m_tts; |
86 | //bool initTTS(); | ||
87 | //bool stopTTS(); | ||
88 | bool initEncoder(); | 86 | bool initEncoder(); |
89 | 87 | ||
90 | bool encode(QString input,QString output); | 88 | bool encode(QString input,QString output); |
91 | //bool voice(QString text,QString wavfile); | ||
92 | 89 | ||
93 | QString m_dir; | 90 | QDir m_dir; |
94 | QString m_mountpoint; | 91 | QString m_mountpoint; |
95 | QString m_curTTS; | 92 | QString m_curTTS; |
96 | QString m_TTSexec; | 93 | QString m_TTSexec; |