rbutil: add options to create .talk files only for Folders or only for Files or for Both.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15087 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Dominik Wenger 2007-10-12 15:52:04 +00:00
parent 983409383f
commit 611f2bc77a
4 changed files with 74 additions and 18 deletions

View file

@ -78,39 +78,77 @@
<string>Generation options</string>
</property>
<layout class="QGridLayout" >
<item row="0" column="0" >
<item row="2" column="0" >
<widget class="QCheckBox" name="OverwriteWav" >
<property name="text" >
<string>Overwrite Wavefiles</string>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QCheckBox" name="RemoveWav" >
<property name="text" >
<string>Remove Wavefiles</string>
</property>
</widget>
</item>
<item row="2" column="0" >
<widget class="QCheckBox" name="recursive" >
<property name="text" >
<string>Run recursive</string>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="3" column="0" >
<widget class="QCheckBox" name="StripExtensions" >
<widget class="QCheckBox" name="RemoveWav" >
<property name="text" >
<string>Strip Extensions</string>
<string>Remove Wavefiles</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="0" >
<widget class="QCheckBox" name="recursive" >
<property name="text" >
<string>Run recursive</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="5" column="0" >
<widget class="QCheckBox" name="StripExtensions" >
<property name="text" >
<string>Strip Extensions</string>
</property>
<property name="checked" >
<bool>false</bool>
</property>
</widget>
</item>
<item row="6" column="0" >
<widget class="QCheckBox" name="OverwriteTalk" >
<property name="text" >
<string>Overwrite Talkfiles</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QCheckBox" name="talkFolders" >
<property name="text" >
<string>Generate .talk files for Folders</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="0" >
<widget class="QCheckBox" name="talkFiles" >
<property name="text" >
<string>Generate .talk files for Files</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
<property name="tristate" >
<bool>false</bool>
</property>
</widget>
</item>
</layout>

View file

@ -131,6 +131,8 @@ void InstallTalkWindow::accept()
talkcreator->setRemoveWav(ui.RemoveWav->isChecked());
talkcreator->setRecursive(ui.recursive->isChecked());
talkcreator->setStripExtensions(ui.StripExtensions->isChecked());
talkcreator->setTalkFolders(ui.talkFolders->isChecked());
talkcreator->setTalkFiles(ui.talkFiles->isChecked());
talkcreator->createTalkFiles(logger);
}

View file

@ -96,11 +96,23 @@ bool TalkFileCreator::createTalkFiles(ProgressloggerInterface* logger)
}
if(fileInf.isDir()) // if it is a dir
{
// skip entry if folder talking isnt enabled
if(m_talkFolders == false)
{
it.next();
continue;
}
toSpeak = fileInf.fileName();
filename = fileInf.absolutePath() + "/_dirname.talk";
}
else // if it is a file
{
// skip entry if file talking isnt enabled
if(m_talkFiles == false)
{
it.next();
continue;
}
if(m_stripExtensions)
toSpeak = fileInf.baseName();
else
@ -181,7 +193,7 @@ bool TalkFileCreator::encode(QString input,QString output)
}
bool TTSSapi::start()
{
{
QFileInfo tts(m_TTSexec);
if(!tts.exists())
return false;
@ -244,4 +256,4 @@ bool TTSExes::voice(QString text,QString wavfile)
QProcess::execute(execstring);
return true;
}
}

View file

@ -75,6 +75,8 @@ public:
void setRemoveWav(bool ov) {m_removeWav = ov;}
void setRecursive(bool ov) {m_recursive = ov;}
void setStripExtensions(bool ov) {m_stripExtensions = ov;}
void setTalkFolders(bool ov) {m_talkFolders = ov;}
void setTalkFiles(bool ov) {m_talkFiles = ov;}
private slots:
void abort();
@ -106,6 +108,8 @@ private:
bool m_removeWav;
bool m_recursive;
bool m_stripExtensions;
bool m_talkFolders;
bool m_talkFiles;
ProgressloggerInterface* m_logger;