From 7feb6399383eb3b5cb63ba5f1d2db3117fd09528 Mon Sep 17 00:00:00 2001 From: Dominik Wenger Date: Sun, 23 Aug 2009 18:57:50 +0000 Subject: rbutil: add a option to ignore specific files for .talk file generation. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22478 a1c6a512-1295-4272-9138-f99709370657 --- rbutil/rbutilqt/base/talkfile.cpp | 13 ++ rbutil/rbutilqt/base/talkfile.h | 5 +- rbutil/rbutilqt/installtalkfrm.ui | 271 +++++++++++++++++----------------- rbutil/rbutilqt/installtalkwindow.cpp | 1 + 4 files changed, 152 insertions(+), 138 deletions(-) (limited to 'rbutil') diff --git a/rbutil/rbutilqt/base/talkfile.cpp b/rbutil/rbutilqt/base/talkfile.cpp index 81dcf01ff5..bc3f5f965d 100644 --- a/rbutil/rbutilqt/base/talkfile.cpp +++ b/rbutil/rbutilqt/base/talkfile.cpp @@ -159,6 +159,19 @@ bool TalkFileCreator::createTalkList(QDir startDir) // insert into List if( !fileInf.fileName().isEmpty() && !fileInf.fileName().endsWith(".talk") && m_talkFiles) { + //test if we should ignore this file + bool match = false; + for(int i=0; i < m_ignoreFiles.size();i++) + { + QRegExp rx(m_ignoreFiles[i].trimmed()); + rx.setPatternSyntax(QRegExp::Wildcard); + if(rx.exactMatch(fileInf.fileName())) + match = true; + } + if(match) + continue; + + //generate entry TalkGenerator::TalkEntry entry; if(m_stripExtensions) entry.toSpeak = stripExtension(fileInf.fileName()); diff --git a/rbutil/rbutilqt/base/talkfile.h b/rbutil/rbutilqt/base/talkfile.h index f82421416a..9c596934ab 100644 --- a/rbutil/rbutilqt/base/talkfile.h +++ b/rbutil/rbutilqt/base/talkfile.h @@ -45,7 +45,7 @@ public: void setStripExtensions(bool ov) {m_stripExtensions = ov;} void setTalkFolders(bool ov) {m_talkFolders = ov;} void setTalkFiles(bool ov) {m_talkFiles = ov;} - + void setIgnoreFiles(QStringList wildcards) {m_ignoreFiles=wildcards;} public slots: void abort(); @@ -72,7 +72,8 @@ private: bool m_stripExtensions; bool m_talkFolders; bool m_talkFiles; - + QStringList m_ignoreFiles; + bool m_abort; QList m_talkList; diff --git a/rbutil/rbutilqt/installtalkfrm.ui b/rbutil/rbutilqt/installtalkfrm.ui index 3b0f5a8c91..de41dca67d 100644 --- a/rbutil/rbutilqt/installtalkfrm.ui +++ b/rbutil/rbutilqt/installtalkfrm.ui @@ -1,10 +1,11 @@ - + + InstallTalkFrm - - + + Qt::WindowModal - + 0 0 @@ -12,87 +13,87 @@ 450 - + Install Talk Files - - - - + + + + - - :/icons/wizard.xpm + + :/icons/wizard.xpm - + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - + + + Select the Folder to generate Talkfiles for. - - - + + + Talkfile Folder - - - + + + &Browse - - + + :/icons/system-search.png:/icons/system-search.png - - - + + + Generation settings - - - - + + + + Encoder profile: - - - + + + TTS profile: - - - - + + + + 0 0 - + Change - + - + Qt::Horizontal - + 40 20 @@ -103,81 +104,12 @@ - - - - Generation options - - - - - - Run recursive - - - true - - - - - - - Strip Extensions - - - false - - - - - - - Overwrite Talkfiles - - - true - - - - - - - Generate .talk files for Folders - - - true - - - - - - - Generate .talk files for Files - - - true - - - false - - - - - recursive - StripExtensions - OverwriteTalk - talkFolders - talkFiles - label_3 - fileFilter - - - + - + Qt::Vertical - + 20 40 @@ -185,12 +117,12 @@ - + - + Qt::Horizontal - + 40 20 @@ -198,48 +130,115 @@ - - + + - - + + &Install - - + + :/icons/go-next.png:/icons/go-next.png - - + + &Cancel - - + + :/icons/process-stop.png:/icons/process-stop.png + + + + Generation options + + + + + + + + + Ignore files (comma seperated Wildcards): + + + + + + + Generate .talk files for Files + + + true + + + false + + + + + + + Generate .talk files for Folders + + + true + + + + + + + Run recursive + + + true + + + + + + + Strip Extensions + + + false + + + + + + + Overwrite Talkfiles + + + true + + + + + + lineTalkFolder buttonBrowse change - talkFiles - talkFolders - recursive - StripExtensions - OverwriteTalk buttonOk buttonCancel - + @@ -248,11 +247,11 @@ InstallTalkFrm accept() - + 472 418 - + 382 328 @@ -264,11 +263,11 @@ InstallTalkFrm reject() - + 561 428 - + 522 332 diff --git a/rbutil/rbutilqt/installtalkwindow.cpp b/rbutil/rbutilqt/installtalkwindow.cpp index 40f96e724f..e8b2c292dd 100644 --- a/rbutil/rbutilqt/installtalkwindow.cpp +++ b/rbutil/rbutilqt/installtalkwindow.cpp @@ -108,6 +108,7 @@ void InstallTalkWindow::accept() talkcreator->setStripExtensions(ui.StripExtensions->isChecked()); talkcreator->setTalkFolders(ui.talkFolders->isChecked()); talkcreator->setTalkFiles(ui.talkFiles->isChecked()); + talkcreator->setIgnoreFiles(ui.ignoreFiles->text().split(",",QString::SkipEmptyParts)); connect(talkcreator, SIGNAL(done(bool)), logger, SLOT(setFinished())); connect(talkcreator, SIGNAL(logItem(QString, int)), logger, SLOT(addItem(QString, int))); -- cgit v1.2.3