diff --git a/src/gui/addnewtorrentdialog.cpp b/src/gui/addnewtorrentdialog.cpp index 7cecb3ec7..c0b540f44 100644 --- a/src/gui/addnewtorrentdialog.cpp +++ b/src/gui/addnewtorrentdialog.cpp @@ -69,8 +69,11 @@ const QString KEY_SAVEPATHHISTORY = SETTINGS_KEY("SavePathHistory"); namespace { - //just a shortcut - inline SettingsStorage *settings() { return SettingsStorage::instance(); } + // just a shortcut + inline SettingsStorage *settings() + { + return SettingsStorage::instance(); + } } AddNewTorrentDialog::AddNewTorrentDialog(QWidget *parent) @@ -89,7 +92,7 @@ AddNewTorrentDialog::AddNewTorrentDialog(QWidget *parent) auto session = BitTorrent::Session::instance(); ui->startTorrentCheckBox->setChecked(!session->isAddTorrentPaused()); - ui->comboTTM->blockSignals(true); //the TreeView size isn't correct if the slot does it job at this point + ui->comboTTM->blockSignals(true); // the TreeView size isn't correct if the slot does it job at this point ui->comboTTM->setCurrentIndex(!session->isAutoTMMDisabledByDefault()); ui->comboTTM->blockSignals(false); populateSavePathComboBox(); @@ -183,9 +186,9 @@ void AddNewTorrentDialog::show(QString source, QWidget *parent) if (Utils::Misc::isUrl(source)) { // Launch downloader Net::DownloadHandler *handler = Net::DownloadManager::instance()->downloadUrl(source, true, 10485760 /* 10MB */, true); - connect(handler, SIGNAL(downloadFinished(QString, QString)), dlg, SLOT(handleDownloadFinished(QString, QString))); - connect(handler, SIGNAL(downloadFailed(QString, QString)), dlg, SLOT(handleDownloadFailed(QString, QString))); - connect(handler, SIGNAL(redirectedToMagnet(QString, QString)), dlg, SLOT(handleRedirectedToMagnet(QString, QString))); + connect(handler, SIGNAL(downloadFinished(QString,QString)), dlg, SLOT(handleDownloadFinished(QString,QString))); + connect(handler, SIGNAL(downloadFailed(QString,QString)), dlg, SLOT(handleDownloadFailed(QString,QString))); + connect(handler, SIGNAL(redirectedToMagnet(QString,QString)), dlg, SLOT(handleRedirectedToMagnet(QString,QString))); } else { bool ok = false; @@ -311,7 +314,6 @@ void AddNewTorrentDialog::showEvent(QShowEvent *event) raise(); } - void AddNewTorrentDialog::showAdvancedSettings(bool show) { const int minimumW = minimumWidth(); @@ -321,7 +323,7 @@ void AddNewTorrentDialog::showAdvancedSettings(bool show) ui->settings_group->setVisible(true); ui->infoGroup->setVisible(true); ui->contentTreeView->setVisible(m_hasMetadata); - static_cast(layout())->insertWidget(layout()->indexOf(ui->never_show_cb) + 1, ui->adv_button); + static_cast(layout())->insertWidget(layout()->indexOf(ui->never_show_cb) + 1, ui->adv_button); } else { ui->adv_button->setText(QString::fromUtf8(C_DOWN)); @@ -339,7 +341,7 @@ void AddNewTorrentDialog::saveSavePathHistory() const // Get current history QStringList history = settings()->loadValue(KEY_SAVEPATHHISTORY).toStringList(); QList historyDirs; - foreach(const QString dir, history) + foreach (const QString dir, history) historyDirs << QDir(dir); if (!historyDirs.contains(selectedSavePath)) { // Add save path to history @@ -383,8 +385,8 @@ void AddNewTorrentDialog::updateDiskSpaceLabel() QString size_string = torrent_size ? Utils::Misc::friendlyUnit(torrent_size) : QString(tr("Not Available", "This size is unavailable.")); size_string += " ("; size_string += tr("Free space on disk: %1").arg(Utils::Misc::friendlyUnit(Utils::Fs::freeDiskSpaceOnPath( - ui->savePathComboBox->itemData( - ui->savePathComboBox->currentIndex()).toString()))); + ui->savePathComboBox->itemData( + ui->savePathComboBox->currentIndex()).toString()))); size_string += ")"; ui->size_lbl->setText(size_string); } @@ -394,8 +396,8 @@ void AddNewTorrentDialog::onSavePathChanged(int index) // Toggle default save path setting checkbox visibility ui->defaultSavePathCheckBox->setChecked(false); ui->defaultSavePathCheckBox->setVisible( - QDir(ui->savePathComboBox->itemData(ui->savePathComboBox->currentIndex()).toString()) - != QDir(BitTorrent::Session::instance()->defaultSavePath())); + QDir(ui->savePathComboBox->itemData(ui->savePathComboBox->currentIndex()).toString()) + != QDir(BitTorrent::Session::instance()->defaultSavePath())); // Remember index m_oldIndex = index; @@ -504,7 +506,7 @@ void AddNewTorrentDialog::renameSelectedFile() QStringList path_items; path_items << index.data().toString(); QModelIndex parent = m_contentModel->parent(index); - while(parent.isValid()) { + while (parent.isValid()) { path_items.prepend(parent.data().toString()); parent = m_contentModel->parent(parent); } @@ -579,7 +581,7 @@ void AddNewTorrentDialog::populateSavePathComboBox() ui->savePathComboBox->addItem(Utils::Fs::toNativePath(savePath), savePath); } -void AddNewTorrentDialog::displayContentTreeMenu(const QPoint&) +void AddNewTorrentDialog::displayContentTreeMenu(const QPoint &) { QMenu myFilesLlistMenu; const QModelIndexList selectedRows = ui->contentTreeView->selectionModel()->selectedRows(0); @@ -622,7 +624,7 @@ void AddNewTorrentDialog::displayContentTreeMenu(const QPoint&) void AddNewTorrentDialog::accept() { if (!m_hasMetadata) - disconnect(this, SLOT(updateMetadata(const BitTorrent::TorrentInfo &))); + disconnect(this, SLOT(updateMetadata(const BitTorrent::TorrentInfo&))); BitTorrent::AddTorrentParams params; @@ -720,10 +722,10 @@ void AddNewTorrentDialog::setupTreeview() m_contentModel = new TorrentContentFilterModel(this); connect(m_contentModel->model(), SIGNAL(filteredFilesChanged()), SLOT(updateDiskSpaceLabel())); ui->contentTreeView->setModel(m_contentModel); - m_contentDelegate = new PropListDelegate(); + m_contentDelegate = new PropListDelegate(nullptr); ui->contentTreeView->setItemDelegate(m_contentDelegate); - connect(ui->contentTreeView, SIGNAL(clicked(const QModelIndex &)), ui->contentTreeView, SLOT(edit(const QModelIndex &))); - connect(ui->contentTreeView, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(displayContentTreeMenu(const QPoint &))); + connect(ui->contentTreeView, SIGNAL(clicked(const QModelIndex&)), ui->contentTreeView, SLOT(edit(const QModelIndex&))); + connect(ui->contentTreeView, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(displayContentTreeMenu(const QPoint&))); // List files in torrent m_contentModel->model()->setupModelData(m_torrentInfo); diff --git a/src/gui/properties/peerlistdelegate.h b/src/gui/properties/peerlistdelegate.h index 82c2d70c3..bfd79bcbc 100644 --- a/src/gui/properties/peerlistdelegate.h +++ b/src/gui/properties/peerlistdelegate.h @@ -38,7 +38,8 @@ #include "base/utils/misc.h" #include "base/utils/string.h" -class PeerListDelegate: public QItemDelegate { +class PeerListDelegate: public QItemDelegate +{ Q_OBJECT public: @@ -67,14 +68,16 @@ public: ~PeerListDelegate() {} - void paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const + void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override { painter->save(); + const bool hideValues = Preferences::instance()->getHideZeroValues(); QStyleOptionViewItem opt = QItemDelegate::setOptions(index, option); - switch(index.column()) { + QItemDelegate::drawBackground(painter, opt, index); + + switch (index.column()) { case PORT: { - QItemDelegate::drawBackground(painter, opt, index); opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; QItemDelegate::drawDisplay(painter, opt, option.rect, index.data().toString()); } @@ -84,40 +87,38 @@ public: qlonglong size = index.data().toLongLong(); if (hideValues && (size <= 0)) break; - QItemDelegate::drawBackground(painter, opt, index); opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; QItemDelegate::drawDisplay(painter, opt, option.rect, Utils::Misc::friendlyUnit(size)); } break; case DOWN_SPEED: - case UP_SPEED:{ - QItemDelegate::drawBackground(painter, opt, index); + case UP_SPEED: { qreal speed = index.data().toDouble(); + if (speed <= 0.0) + break; opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; - if (speed > 0.0) - QItemDelegate::drawDisplay(painter, opt, opt.rect, Utils::Misc::friendlyUnit(speed, true)); + QItemDelegate::drawDisplay(painter, opt, opt.rect, Utils::Misc::friendlyUnit(speed, true)); } break; case PROGRESS: case RELEVANCE: { - QItemDelegate::drawBackground(painter, opt, index); qreal progress = index.data().toDouble(); opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; - QItemDelegate::drawDisplay(painter, opt, opt.rect, Utils::String::fromDouble(progress*100.0, 1)+"%"); + QItemDelegate::drawDisplay(painter, opt, opt.rect, Utils::String::fromDouble(progress * 100.0, 1) + "%"); } break; default: QItemDelegate::paint(painter, option, index); } + painter->restore(); } - QWidget* createEditor(QWidget*, const QStyleOptionViewItem &, const QModelIndex &) const + QWidget *createEditor(QWidget *, const QStyleOptionViewItem &, const QModelIndex &) const override { // No editor here - return 0; + return nullptr; } - }; #endif // PEERLISTDELEGATE_H diff --git a/src/gui/properties/peerlistwidget.cpp b/src/gui/properties/peerlistwidget.cpp index 6264adc2c..ade3b2d82 100644 --- a/src/gui/properties/peerlistwidget.cpp +++ b/src/gui/properties/peerlistwidget.cpp @@ -69,7 +69,7 @@ PeerListWidget::PeerListWidget(PropertiesWidget *parent) setSelectionMode(QAbstractItemView::ExtendedSelection); header()->setStretchLastSection(false); // List Model - m_listModel = new QStandardItemModel(0, PeerListDelegate::COL_COUNT); + m_listModel = new QStandardItemModel(0, PeerListDelegate::COL_COUNT, this); m_listModel->setHeaderData(PeerListDelegate::COUNTRY, Qt::Horizontal, tr("Country")); // Country flag column m_listModel->setHeaderData(PeerListDelegate::IP, Qt::Horizontal, tr("IP")); m_listModel->setHeaderData(PeerListDelegate::PORT, Qt::Horizontal, tr("Port")); @@ -92,7 +92,7 @@ PeerListWidget::PeerListWidget(PropertiesWidget *parent) m_listModel->setHeaderData(PeerListDelegate::TOT_UP, Qt::Horizontal, QVariant(Qt::AlignRight | Qt::AlignVCenter), Qt::TextAlignmentRole); m_listModel->setHeaderData(PeerListDelegate::RELEVANCE, Qt::Horizontal, QVariant(Qt::AlignRight | Qt::AlignVCenter), Qt::TextAlignmentRole); // Proxy model to support sorting without actually altering the underlying model - m_proxyModel = new PeerListSortModel(); + m_proxyModel = new PeerListSortModel(this); m_proxyModel->setDynamicSortFilter(true); m_proxyModel->setSourceModel(m_listModel); m_proxyModel->setSortCaseSensitivity(Qt::CaseInsensitive); @@ -102,7 +102,7 @@ PeerListWidget::PeerListWidget(PropertiesWidget *parent) m_resolveCountries = Preferences::instance()->resolvePeerCountries(); if (!m_resolveCountries) hideColumn(PeerListDelegate::COUNTRY); - //Ensure that at least one column is visible at all times + // Ensure that at least one column is visible at all times bool atLeastOne = false; for (unsigned int i = 0; i < PeerListDelegate::IP_HIDDEN; i++) { if (!isColumnHidden(i)) { @@ -112,9 +112,9 @@ PeerListWidget::PeerListWidget(PropertiesWidget *parent) } if (!atLeastOne) setColumnHidden(PeerListDelegate::IP, false); - //To also mitigate the above issue, we have to resize each column when - //its size is 0, because explicitly 'showing' the column isn't enough - //in the above scenario. + // To also mitigate the above issue, we have to resize each column when + // its size is 0, because explicitly 'showing' the column isn't enough + // in the above scenario. for (unsigned int i = 0; i < PeerListDelegate::IP_HIDDEN; i++) if ((columnWidth(i) <= 0) && !isColumnHidden(i)) resizeColumnToContents(i); @@ -130,7 +130,7 @@ PeerListWidget::PeerListWidget(PropertiesWidget *parent) updatePeerHostNameResolutionState(); // SIGNAL/SLOT header()->setContextMenuPolicy(Qt::CustomContextMenu); - connect(header(), SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(displayToggleColumnsMenu(const QPoint &))); + connect(header(), SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(displayToggleColumnsMenu(const QPoint&))); connect(header(), SIGNAL(sectionClicked(int)), SLOT(handleSortColumnChanged(int))); handleSortColumnChanged(header()->sortIndicatorSection()); m_copyHotkey = new QShortcut(QKeySequence::Copy, this, SLOT(copySelectedPeers()), 0, Qt::WidgetShortcut); @@ -146,19 +146,15 @@ PeerListWidget::PeerListWidget(PropertiesWidget *parent) PeerListWidget::~PeerListWidget() { saveSettings(); - delete m_proxyModel; - delete m_listModel; - delete m_listDelegate; if (m_resolver) delete m_resolver; - delete m_copyHotkey; } -void PeerListWidget::displayToggleColumnsMenu(const QPoint&) +void PeerListWidget::displayToggleColumnsMenu(const QPoint &) { QMenu hideshowColumn(this); hideshowColumn.setTitle(tr("Column visibility")); - QList actions; + QList actions; for (int i = 0; i < PeerListDelegate::IP_HIDDEN; ++i) { if ((i == PeerListDelegate::COUNTRY) && !Preferences::instance()->resolvePeerCountries()) { actions.append(nullptr); // keep the index in sync @@ -199,7 +195,7 @@ void PeerListWidget::updatePeerHostNameResolutionState() if (Preferences::instance()->resolvePeerHostNames()) { if (!m_resolver) { m_resolver = new Net::ReverseResolution(this); - connect(m_resolver, SIGNAL(ipResolved(QString, QString)), SLOT(handleResolved(QString, QString))); + connect(m_resolver, SIGNAL(ipResolved(QString,QString)), SLOT(handleResolved(QString,QString))); loadPeers(m_properties->getCurrentTorrent(), true); } } @@ -224,7 +220,7 @@ void PeerListWidget::updatePeerCountryResolutionState() } } -void PeerListWidget::showPeerListMenu(const QPoint&) +void PeerListWidget::showPeerListMenu(const QPoint &) { QMenu menu; bool emptyMenu = true; @@ -368,7 +364,7 @@ void PeerListWidget::loadPeers(BitTorrent::TorrentHandle *const torrent, bool fo // Delete peers that are gone QSetIterator it(oldeersSet); while (it.hasNext()) { - const QString& ip = it.next(); + const QString &ip = it.next(); m_missingFlags.remove(ip); m_peerAddresses.remove(ip); QStandardItem *item = m_peerItems.take(ip); @@ -376,7 +372,7 @@ void PeerListWidget::loadPeers(BitTorrent::TorrentHandle *const torrent, bool fo } } -QStandardItem* PeerListWidget::addPeer(const QString& ip, BitTorrent::TorrentHandle *const torrent, const BitTorrent::PeerInfo &peer) +QStandardItem *PeerListWidget::addPeer(const QString &ip, BitTorrent::TorrentHandle *const torrent, const BitTorrent::PeerInfo &peer) { int row = m_listModel->rowCount(); // Adding Peer to peer list @@ -466,7 +462,7 @@ void PeerListWidget::wheelEvent(QWheelEvent *event) { event->accept(); - if(event->modifiers() & Qt::ShiftModifier) { + if (event->modifiers() & Qt::ShiftModifier) { // Shift + scroll = horizontal scroll QWheelEvent scrollHEvent(event->pos(), event->globalPos(), event->delta(), event->buttons(), event->modifiers(), Qt::Horizontal); QTreeView::wheelEvent(&scrollHEvent); diff --git a/src/gui/properties/peerlistwidget.h b/src/gui/properties/peerlistwidget.h index 6a6de5abb..3d4a8483b 100644 --- a/src/gui/properties/peerlistwidget.h +++ b/src/gui/properties/peerlistwidget.h @@ -77,8 +77,8 @@ public: private slots: void loadSettings(); void saveSettings() const; - void displayToggleColumnsMenu(const QPoint&); - void showPeerListMenu(const QPoint&); + void displayToggleColumnsMenu(const QPoint &); + void showPeerListMenu(const QPoint &); void banSelectedPeers(); void copySelectedPeers(); void handleSortColumnChanged(int col); @@ -90,7 +90,7 @@ private: QStandardItemModel *m_listModel; PeerListDelegate *m_listDelegate; PeerListSortModel *m_proxyModel; - QHash m_peerItems; + QHash m_peerItems; QHash m_peerAddresses; QSet m_missingFlags; QPointer m_resolver; diff --git a/src/gui/properties/proplistdelegate.cpp b/src/gui/properties/proplistdelegate.cpp index cabdce8bb..2c845ba6f 100644 --- a/src/gui/properties/proplistdelegate.cpp +++ b/src/gui/properties/proplistdelegate.cpp @@ -47,25 +47,25 @@ #include "propertieswidget.h" #include "torrentcontentmodelitem.h" -namespace { +namespace +{ QPalette progressBarDisabledPalette() { - auto getPalette = []() - { - QProgressBar bar; - bar.setEnabled(false); - QStyleOptionProgressBar opt; - opt.initFrom(&bar); - return opt.palette; - }; + auto getPalette = []() { + QProgressBar bar; + bar.setEnabled(false); + QStyleOptionProgressBar opt; + opt.initFrom(&bar); + return opt.palette; + }; static QPalette palette = getPalette(); return palette; } } -PropListDelegate::PropListDelegate(PropertiesWidget *properties, QObject *parent) - : QItemDelegate(parent) +PropListDelegate::PropListDelegate(PropertiesWidget *properties) + : QItemDelegate(properties) , m_properties(properties) { } @@ -74,66 +74,61 @@ void PropListDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti { painter->save(); QStyleOptionViewItem opt = QItemDelegate::setOptions(index, option); + QItemDelegate::drawBackground(painter, opt, index); - switch(index.column()) { + switch (index.column()) { case PCSIZE: - QItemDelegate::drawBackground(painter, opt, index); - QItemDelegate::drawDisplay(painter, opt, option.rect, Utils::Misc::friendlyUnit(index.data().toLongLong())); - break; case REMAINING: - QItemDelegate::drawBackground(painter, opt, index); QItemDelegate::drawDisplay(painter, opt, option.rect, Utils::Misc::friendlyUnit(index.data().toLongLong())); break; - case PROGRESS: - if (index.data().toDouble() >= 0) { - QStyleOptionProgressBar newopt; - qreal progress = index.data().toDouble() * 100.; - newopt.rect = opt.rect; - newopt.text = ((progress == 100.0) ? QString("100%") : Utils::String::fromDouble(progress, 1) + "%"); - newopt.progress = (int)progress; - newopt.maximum = 100; - newopt.minimum = 0; - newopt.textVisible = true; - if (index.sibling(index.row(), PRIORITY).data().toInt() == prio::IGNORED) { - newopt.state &= ~QStyle::State_Enabled; - newopt.palette = progressBarDisabledPalette(); - } - else - newopt.state |= QStyle::State_Enabled; -#ifndef Q_OS_WIN - QApplication::style()->drawControl(QStyle::CE_ProgressBar, &newopt, painter); -#else - // XXX: To avoid having the progress text on the right of the bar - QProxyStyle st("fusion"); - st.drawControl(QStyle::CE_ProgressBar, &newopt, painter, 0); -#endif + case PROGRESS: { + if (index.data().toDouble() < 0) + break; + + QStyleOptionProgressBar newopt; + qreal progress = index.data().toDouble() * 100.; + newopt.rect = opt.rect; + newopt.text = ((progress == 100.0) ? QString("100%") : Utils::String::fromDouble(progress, 1) + "%"); + newopt.progress = int(progress); + newopt.maximum = 100; + newopt.minimum = 0; + newopt.textVisible = true; + if (index.sibling(index.row(), PRIORITY).data().toInt() == prio::IGNORED) { + newopt.state &= ~QStyle::State_Enabled; + newopt.palette = progressBarDisabledPalette(); } else { - // Do not display anything if the file is disabled (progress == 0) - QItemDelegate::drawBackground(painter, opt, index); + newopt.state |= QStyle::State_Enabled; } - break; + +#ifndef Q_OS_WIN + QApplication::style()->drawControl(QStyle::CE_ProgressBar, &newopt, painter); +#else + // XXX: To avoid having the progress text on the right of the bar + QProxyStyle("fusion").drawControl(QStyle::CE_ProgressBar, &newopt, painter, 0); +#endif + } + break; case PRIORITY: { - QItemDelegate::drawBackground(painter, opt, index); - QString text = ""; - switch (index.data().toInt()) { - case prio::MIXED: - text = tr("Mixed", "Mixed (priorities"); - break; - case prio::IGNORED: - text = tr("Not downloaded"); - break; - case prio::HIGH: - text = tr("High", "High (priority)"); - break; - case prio::MAXIMUM: - text = tr("Maximum", "Maximum (priority)"); - break; - default: - text = tr("Normal", "Normal (priority)"); - break; - } - QItemDelegate::drawDisplay(painter, opt, option.rect, text); + QString text = ""; + switch (index.data().toInt()) { + case prio::MIXED: + text = tr("Mixed", "Mixed (priorities"); + break; + case prio::IGNORED: + text = tr("Not downloaded"); + break; + case prio::HIGH: + text = tr("High", "High (priority)"); + break; + case prio::MAXIMUM: + text = tr("Maximum", "Maximum (priority)"); + break; + default: + text = tr("Normal", "Normal (priority)"); + break; + } + QItemDelegate::drawDisplay(painter, opt, option.rect, text); } break; default: @@ -145,9 +140,9 @@ void PropListDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti void PropListDelegate::setEditorData(QWidget *editor, const QModelIndex &index) const { - QComboBox *combobox = static_cast(editor); + QComboBox *combobox = static_cast(editor); // Set combobox index - switch(index.data().toInt()) { + switch (index.data().toInt()) { case prio::IGNORED: combobox->setCurrentIndex(0); break; @@ -176,7 +171,7 @@ QWidget *PropListDelegate::createEditor(QWidget *parent, const QStyleOptionViewI if (index.data().toInt() == prio::MIXED) return 0; - QComboBox* editor = new QComboBox(parent); + QComboBox *editor = new QComboBox(parent); editor->setFocusPolicy(Qt::StrongFocus); editor->addItem(tr("Do not download", "Do not download (priority)")); editor->addItem(tr("Normal", "Normal (priority)")); @@ -187,11 +182,11 @@ QWidget *PropListDelegate::createEditor(QWidget *parent, const QStyleOptionViewI void PropListDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const { - QComboBox *combobox = static_cast(editor); + QComboBox *combobox = static_cast(editor); int value = combobox->currentIndex(); qDebug("PropListDelegate: setModelData(%d)", value); - switch(value) { + switch (value) { case 0: model->setData(index, prio::IGNORED); // IGNORED break; diff --git a/src/gui/properties/proplistdelegate.h b/src/gui/properties/proplistdelegate.h index 7f1ecc251..2d5e41335 100644 --- a/src/gui/properties/proplistdelegate.h +++ b/src/gui/properties/proplistdelegate.h @@ -49,20 +49,20 @@ enum PropColumn REMAINING }; -class PropListDelegate : public QItemDelegate +class PropListDelegate: public QItemDelegate { Q_OBJECT public: - PropListDelegate(PropertiesWidget *properties = 0, QObject *parent = 0); + PropListDelegate(PropertiesWidget *properties); - void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; - void setEditorData(QWidget *editor, const QModelIndex &index) const; - QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &/* option */, const QModelIndex &index) const; + void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override; + void setEditorData(QWidget *editor, const QModelIndex &index) const override; + QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem & /* option */, const QModelIndex &index) const override; public slots: - void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const; - void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &/* index */) const; + void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override; + void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex & /* index */) const override; signals: void filteredFilesChanged() const; diff --git a/src/gui/search/searchlistdelegate.cpp b/src/gui/search/searchlistdelegate.cpp index dc286f5d9..04d030d3e 100644 --- a/src/gui/search/searchlistdelegate.cpp +++ b/src/gui/search/searchlistdelegate.cpp @@ -47,19 +47,15 @@ void SearchListDelegate::paint(QPainter *painter, const QStyleOptionViewItem &op painter->save(); QStyleOptionViewItem opt = QItemDelegate::setOptions(index, option); - switch(index.column()) { + QItemDelegate::drawBackground(painter, opt, index); + + switch (index.column()) { case SearchSortModel::SIZE: - QItemDelegate::drawBackground(painter, opt, index); opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; QItemDelegate::drawDisplay(painter, opt, option.rect, Utils::Misc::friendlyUnit(index.data().toLongLong())); break; case SearchSortModel::SEEDS: - QItemDelegate::drawBackground(painter, opt, index); - opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; - QItemDelegate::drawDisplay(painter, opt, option.rect, (index.data().toLongLong() >= 0) ? index.data().toString() : tr("Unknown")); - break; case SearchSortModel::LEECHES: - QItemDelegate::drawBackground(painter, opt, index); opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; QItemDelegate::drawDisplay(painter, opt, option.rect, (index.data().toLongLong() >= 0) ? index.data().toString() : tr("Unknown")); break; @@ -73,5 +69,5 @@ void SearchListDelegate::paint(QPainter *painter, const QStyleOptionViewItem &op QWidget *SearchListDelegate::createEditor(QWidget *, const QStyleOptionViewItem &, const QModelIndex &) const { // No editor here - return 0; + return nullptr; } diff --git a/src/gui/search/searchlistdelegate.h b/src/gui/search/searchlistdelegate.h index 27d813735..1af6e19ce 100644 --- a/src/gui/search/searchlistdelegate.h +++ b/src/gui/search/searchlistdelegate.h @@ -36,10 +36,10 @@ class SearchListDelegate: public QItemDelegate { public: - explicit SearchListDelegate(QObject *parent = 0); + explicit SearchListDelegate(QObject *parent); - void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; - QWidget* createEditor(QWidget*, const QStyleOptionViewItem &, const QModelIndex &) const; + void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override; + QWidget *createEditor(QWidget *, const QStyleOptionViewItem &, const QModelIndex &) const override; }; #endif