Check Qt assets present in the bar descriptor file when loading
[qt-creator:qnx-qt-creator.git] / src / plugins / qnx / bardescriptorqtassetsmodel.h
1 /**************************************************************************
2 **
3 ** This file is part of Qt Creator
4 **
5 ** Copyright (C) 2011 - 2012 Research In Motion
6 **
7 ** Contact: Research In Motion (blackberry-qt@qnx.com)
8 ** Contact: KDAB (info@kdab.com)
9 **
10 **
11 ** GNU Lesser General Public License Usage
12 **
13 ** This file may be used under the terms of the GNU Lesser General Public
14 ** License version 2.1 as published by the Free Software Foundation and
15 ** appearing in the file LICENSE.LGPL included in the packaging of this file.
16 ** Please review the following information to ensure the GNU Lesser General
17 ** Public License version 2.1 requirements will be met:
18 ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
19 **
20 ** In addition, as a special exception, Nokia gives you certain additional
21 ** rights. These rights are described in the Nokia Qt LGPL Exception
22 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
23 **
24 ** Other Usage
25 **
26 ** Alternatively, this file may be used in accordance with the terms and
27 ** conditions contained in a signed written agreement between you and Nokia.
28 **
29 ** If you have questions regarding the use of this file, please contact
30 ** Nokia at info@qt.nokia.com.
31 **
32 **************************************************************************/
33
34 #ifndef QNX_INTERNAL_BARDESCRIPTORQTASSETSMODEL_H
35 #define QNX_INTERNAL_BARDESCRIPTORQTASSETSMODEL_H
36
37 #include <QtCore/QSet>
38 #include <QtGui/QFileSystemModel>
39
40 namespace Qnx {
41 namespace Internal {
42
43 class BarDescriptorQtAssetsModel : public QFileSystemModel
44 {
45     Q_OBJECT
46 public:
47     explicit BarDescriptorQtAssetsModel(QObject *parent = 0);
48
49     Qt::ItemFlags flags(const QModelIndex &index) const;
50
51     bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
52     QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
53
54     QStringList checkedFiles() const;
55     void uncheckAll();
56     void checkFile(const QString &path);
57
58 signals:
59     void checkedFilesChanged();
60
61 private:
62     QSet<QString> m_checkedItems;
63 };
64
65 } // namespace Internal
66 } // namespace Qnx
67
68 #endif // QNX_INTERNAL_BARDESCRIPTORQTASSETSMODEL_H