summaryrefslogtreecommitdiffstats
path: root/backend/IconListModel.h
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2013-08-10 18:34:08 +0200
committerPetr Mrázek <peterix@gmail.com>2013-08-11 01:07:15 +0200
commit1782d5ad9a646ca2a6fab90da5f04c879ddaecd4 (patch)
tree9537ecd66dad2fbcb083da2ed07191727a8e10ef /backend/IconListModel.h
parentbf5f5091ef6daeaf7067f4fc8973eb068ddc52fc (diff)
downloadMultiMC-1782d5ad9a646ca2a6fab90da5f04c879ddaecd4.tar
MultiMC-1782d5ad9a646ca2a6fab90da5f04c879ddaecd4.tar.gz
MultiMC-1782d5ad9a646ca2a6fab90da5f04c879ddaecd4.tar.lz
MultiMC-1782d5ad9a646ca2a6fab90da5f04c879ddaecd4.tar.xz
MultiMC-1782d5ad9a646ca2a6fab90da5f04c879ddaecd4.zip
Implement icon picker, bring back raster icons.
Diffstat (limited to 'backend/IconListModel.h')
-rw-r--r--backend/IconListModel.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/backend/IconListModel.h b/backend/IconListModel.h
new file mode 100644
index 00000000..31b05e64
--- /dev/null
+++ b/backend/IconListModel.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include <QMutex>
+#include <QAbstractListModel>
+#include <QtGui/QIcon>
+
+class Private;
+
+class IconList : public QAbstractListModel
+{
+public:
+ static IconList* instance();
+ static void drop();
+ QIcon getIcon ( QString key );
+ int getIconIndex ( QString key );
+
+ virtual QVariant data ( const QModelIndex& index, int role = Qt::DisplayRole ) const;
+ virtual int rowCount ( const QModelIndex& parent = QModelIndex() ) const;
+
+ bool addIcon(QString key, QString name, QString path, bool is_builtin = false);
+
+
+private:
+ virtual ~IconList();
+ IconList();
+ // hide copy constructor
+ IconList ( const IconList & ) = delete;
+ // hide assign op
+ IconList& operator= ( const IconList & ) = delete;
+ static IconList* m_Instance;
+ static QMutex mutex;
+ Private* d;
+};