QVariant PackageModel::data(const QModelIndex &index, int role) const { if (index.isValid() && m_columnSortedlistOfPackages.size() > index.row()) { switch (role) { case Qt::DisplayRole: { const PackageRepository::PackageData*const package = getData(index); if (package == NULL) return QVariant(); switch (index.column()) { case ctn_PACKAGE_ICON_COLUMN: break; case ctn_PACKAGE_NAME_COLUMN: return QVariant(package->name); case ctn_PACKAGE_VERSION_COLUMN: return QVariant(package->version); case ctn_PACKAGE_SIZE_COLUMN: { if (package->installed()) return QVariant(Package::kbytesToSize(package->installedSize)); else return QVariant(Package::kbytesToSize(package->downloadSize)); } break; default: assert(false); } break; } case Qt::DecorationRole: { const PackageRepository::PackageData*const package = getData(index); if (package == NULL) return QVariant(); if (index.column() == ctn_PACKAGE_ICON_COLUMN) { return QVariant(getIconFor(*package)); } break; } case Qt::ToolTipRole: break; case Qt::StatusTipRole: break; default: break; } } return QVariant(); }
QVariant PackageModel::data(const QModelIndex &index, int role) const { if (index.isValid() && m_columnSortedlistOfPackages.size() > index.row()) { switch (role) { case Qt::DisplayRole: { const PackageRepository::PackageData*const package = getData(index); if (package == NULL) return QVariant(); switch (index.column()) { case ctn_PACKAGE_ICON_COLUMN: break; case ctn_PACKAGE_NAME_COLUMN: return QVariant(package->name); case ctn_PACKAGE_VERSION_COLUMN: return QVariant(package->version); case ctn_PACKAGE_REPOSITORY_COLUMN: return QVariant(package->repository); case ctn_PACKAGE_POPULARITY_COLUMN: if (package->popularity >= 0) return QVariant(package->popularityString); break; default: assert(false); } break; } case Qt::DecorationRole: { const PackageRepository::PackageData*const package = getData(index); if (package == NULL) return QVariant(); if (index.column() == ctn_PACKAGE_ICON_COLUMN) { return QVariant(getIconFor(*package)); } break; } case Qt::ToolTipRole: break; case Qt::StatusTipRole: break; default: break; } } return QVariant(); }
NewFileDialog::NewFileDialog(QWidget *parent) : QDialog(parent), ui(new Ui::NewFileDialog) { ui->setupUi(this); setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint)); ui->recentsList->addAction(ui->actionRemove_item); ui->recentsList->addAction(ui->actionClear_all); ui->recentsList->setIconSize(QSize(48, 48)); // Fill list with recent opened files QSettings settings("iaito", "iaito"); QStringList files = settings.value("recentFileList").toStringList(); int numRecentFiles = qMin(files.size(), (int)MaxRecentFiles); for (int i = 0; i < numRecentFiles; ++i) { // Get stored files //QString text = tr("&%1 %2").arg(i + 1).arg(strippedName(files[i])); // Remove all but the file name QString sep = QDir::separator(); QStringList name_list = files[i].split( sep ); QString name = name_list.last(); // Get file info QFileInfo info(files[i]); QListWidgetItem* item = new QListWidgetItem(getIconFor(name, i),files[i] + "\nCreated: " + info.created().toString() + "\nSize: " + QString::number(info.size())); //":/new/prefix1/img/icons/target.png"), name ); item->setData(Qt::UserRole, files[i]); ui->recentsList->addItem(item); } ui->recentsList->setSortingEnabled(true); // Hide "create" button until the dialog works ui->createButton->hide(); }