summaryrefslogtreecommitdiff
path: root/utils/rbutilqt/base/talkfile.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/rbutilqt/base/talkfile.h')
-rw-r--r--utils/rbutilqt/base/talkfile.h83
1 files changed, 83 insertions, 0 deletions
diff --git a/utils/rbutilqt/base/talkfile.h b/utils/rbutilqt/base/talkfile.h
new file mode 100644
index 0000000000..11dd95ca14
--- /dev/null
+++ b/utils/rbutilqt/base/talkfile.h
@@ -0,0 +1,83 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 *
9 * Copyright (C) 2007 by Dominik Wenger
10 *
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version 2
14 * of the License, or (at your option) any later version.
15 *
16 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
17 * KIND, either express or implied.
18 *
19 ****************************************************************************/
20
21
22#ifndef TALKFILE_H
23#define TALKFILE_H
24
25#include <QtCore>
26#include "progressloggerinterface.h"
27
28#include "talkgenerator.h"
29
30class TalkFileCreator :public QObject
31{
32 Q_OBJECT
33
34public:
35 TalkFileCreator(QObject* parent);
36
37 bool createTalkFiles();
38
39 void setDir(QString dir) {m_dir = dir;}
40 void setMountPoint(QString mountpoint) {m_mountpoint = mountpoint;}
41
42 void setGenerateOnlyNew(bool ov) {m_generateOnlyNew = ov;}
43 void setRecursive(bool ov) {m_recursive = ov;}
44 void setStripExtensions(bool ov) {m_stripExtensions = ov;}
45 void setTalkFolders(bool ov) {m_talkFolders = ov;}
46 void setTalkFiles(bool ov) {m_talkFiles = ov;}
47 void setIgnoreFiles(QStringList wildcards) {m_ignoreFiles = wildcards;}
48public slots:
49 void abort();
50
51signals:
52 void done(bool);
53 void aborted();
54 void logItem(QString, int); //! set logger item
55 void logProgress(int, int); //! set progress bar.
56
57private:
58 bool cleanup();
59 QString stripExtension(QString filename);
60 void doAbort();
61 void resetProgress(int max);
62 bool copyTalkFiles(QString* errString);
63
64 bool createTalkList(QDir startDir);
65
66 QString m_dir;
67 QString m_mountpoint;
68
69 bool m_generateOnlyNew;
70 bool m_recursive;
71 bool m_stripExtensions;
72 bool m_talkFolders;
73 bool m_talkFiles;
74 QStringList m_ignoreFiles;
75
76 bool m_abort;
77
78 QList<TalkGenerator::TalkEntry> m_talkList;
79};
80
81
82#endif
83