summaryrefslogtreecommitdiffstats
path: root/vmchooser2/model.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'vmchooser2/model.cpp')
-rw-r--r--vmchooser2/model.cpp83
1 files changed, 0 insertions, 83 deletions
diff --git a/vmchooser2/model.cpp b/vmchooser2/model.cpp
deleted file mode 100644
index 75bd58b..0000000
--- a/vmchooser2/model.cpp
+++ /dev/null
@@ -1,83 +0,0 @@
-#include "model.h"
-#include <QIcon>
-#include <QPixmap>
-
-Model::Model(std::vector<DataEntry> e, QObject *parent)
- : QAbstractListModel(parent),
- rc(e.size()), entries(e)
-{
- printf("model with %d entries created\n", this->entries.size());
-}
-
-Model::~Model()
-{
-}
-
-int Model::rowCount(const QModelIndex &parent) const
-{
- return (parent.isValid() && parent.column() != 0) ? 0 : rc;
-}
-
-QVariant Model::data(const QModelIndex &index, int role) const
-{
- printf("request for model row %d role %d\n", index.row(), role);
- if (!index.isValid())
- return QVariant();
- if (role == Qt::DisplayRole)
- return QString::fromStdString(this->entries.at(index.row()).short_description);
- if (role == Qt::ToolTipRole)
- return QString::fromStdString(this->entries.at(index.row()).description);
- if (role == Qt::DecorationRole) {
- // TODO: use additional function (with cache) for icons
- if (index.column() == 0) {
- const DataEntry& e(this->entries.at(index.row()));
-
- if(e.imgtype == VMWARE) {
- if(e.os.find("win") != string::npos || e.os.find("Win") != string::npos)
- return QIcon(e.locked ? ":xp_locked" : ":xp");
-
- if(e.icon.find("gentoo") != string::npos || e.icon.find("Gentoo") != string::npos )
- return QIcon(":gentoo");
-
- if(e.icon.find("suse") != string::npos || e.icon.find("Suse") != string::npos )
- return QIcon(":suse");
-
- if(e.icon.find("ubuntu") != string::npos || e.icon.find("Ubuntu") != string::npos )
- return QIcon(":ubuntu");
-
-
- if(e.os.find("linux") != string::npos)
- return QIcon(":linux");
-
- if(e.icon.find("bsd") != string::npos
- || e.icon.find("BSD") != string::npos
- || e.icon.find("Bsd") != string::npos)
- return QIcon(":bsd");
-
- if(e.icon.find("mac") != string::npos
- || e.icon.find("Mac") != string::npos
- || e.icon.find("apple") != string::npos)
- return QIcon(":macos");
-
- return QIcon(":vmware");
- }
-
- if(e.imgtype == LINUX) {
- if(e.short_description.find("KDE")!= string::npos)
- return QIcon(":kde");
-
- if(e.short_description.find("GNOME")!= string::npos)
- return QIcon(":gnome");
-
- if(e.short_description.find("Xfce")!= string::npos)
- return QIcon(":xfce");
-
- return QIcon(":linux");
- }
-
- //return QIcon(":/img/linux.xpm");
- return iconProvider.icon(QFileIconProvider::File);
- }
- }
- return QVariant();
-}