mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2025-12-17 06:01:33 -06:00
committed by
GitHub
parent
0f80d3a74a
commit
96161627d6
@@ -49,18 +49,6 @@
|
|||||||
#include "transferlistwidget.h"
|
#include "transferlistwidget.h"
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
|
|
||||||
namespace
|
|
||||||
{
|
|
||||||
enum ItemPos
|
|
||||||
{
|
|
||||||
StatusItemPos,
|
|
||||||
CategoryItemPos,
|
|
||||||
TagItemPos,
|
|
||||||
TrackerStatusItemPos,
|
|
||||||
TrackersItemPos
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferListWidget *transferList, const bool downloadFavicon)
|
TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferListWidget *transferList, const bool downloadFavicon)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
, m_transferList {transferList}
|
, m_transferList {transferList}
|
||||||
@@ -80,7 +68,7 @@ TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferLi
|
|||||||
auto *item = new TransferListFiltersWidgetItem(tr("Status"), new StatusFilterWidget(this, transferList), this);
|
auto *item = new TransferListFiltersWidgetItem(tr("Status"), new StatusFilterWidget(this, transferList), this);
|
||||||
item->setChecked(pref->getStatusFilterState());
|
item->setChecked(pref->getStatusFilterState());
|
||||||
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setStatusFilterState);
|
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setStatusFilterState);
|
||||||
mainWidgetLayout->insertWidget(StatusItemPos, item);
|
mainWidgetLayout->addWidget(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -101,7 +89,7 @@ TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferLi
|
|||||||
m_transferList->applyCategoryFilter(enabled ? categoryFilterWidget->currentCategory() : QString());
|
m_transferList->applyCategoryFilter(enabled ? categoryFilterWidget->currentCategory() : QString());
|
||||||
});
|
});
|
||||||
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setCategoryFilterState);
|
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setCategoryFilterState);
|
||||||
mainWidgetLayout->insertWidget(CategoryItemPos, item);
|
mainWidgetLayout->addWidget(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -122,16 +110,18 @@ TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferLi
|
|||||||
m_transferList->applyTagFilter(enabled ? tagFilterWidget->currentTag() : std::nullopt);
|
m_transferList->applyTagFilter(enabled ? tagFilterWidget->currentTag() : std::nullopt);
|
||||||
});
|
});
|
||||||
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setTagFilterState);
|
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setTagFilterState);
|
||||||
mainWidgetLayout->insertWidget(TagItemPos, item);
|
mainWidgetLayout->addWidget(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const int trackerStatusItemPos = mainWidgetLayout->count();
|
||||||
|
|
||||||
{
|
{
|
||||||
m_trackersFilterWidget = new TrackersFilterWidget(this, transferList, downloadFavicon);
|
m_trackersFilterWidget = new TrackersFilterWidget(this, transferList, downloadFavicon);
|
||||||
|
|
||||||
auto *item = new TransferListFiltersWidgetItem(tr("Trackers"), m_trackersFilterWidget, this);
|
auto *item = new TransferListFiltersWidgetItem(tr("Trackers"), m_trackersFilterWidget, this);
|
||||||
item->setChecked(pref->getTrackerFilterState());
|
item->setChecked(pref->getTrackerFilterState());
|
||||||
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setTrackerFilterState);
|
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setTrackerFilterState);
|
||||||
mainWidgetLayout->insertWidget(TrackersItemPos, item);
|
mainWidgetLayout->addWidget(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
auto *scroll = new QScrollArea(this);
|
auto *scroll = new QScrollArea(this);
|
||||||
@@ -144,17 +134,17 @@ TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferLi
|
|||||||
vLayout->setContentsMargins(0, 0, 0, 0);
|
vLayout->setContentsMargins(0, 0, 0, 0);
|
||||||
vLayout->addWidget(scroll);
|
vLayout->addWidget(scroll);
|
||||||
|
|
||||||
const auto createTrackerStatusItem = [this, mainWidgetLayout, pref]
|
const auto createTrackerStatusItem = [this, mainWidgetLayout, trackerStatusItemPos, pref]
|
||||||
{
|
{
|
||||||
auto *item = new TransferListFiltersWidgetItem(tr("Tracker status"), new TrackerStatusFilterWidget(this, m_transferList), this);
|
auto *item = new TransferListFiltersWidgetItem(tr("Tracker status"), new TrackerStatusFilterWidget(this, m_transferList), this);
|
||||||
item->setChecked(pref->getTrackerStatusFilterState());
|
item->setChecked(pref->getTrackerStatusFilterState());
|
||||||
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setTrackerStatusFilterState);
|
connect(item, &TransferListFiltersWidgetItem::toggled, pref, &Preferences::setTrackerStatusFilterState);
|
||||||
mainWidgetLayout->insertWidget(TrackerStatusItemPos, item);
|
mainWidgetLayout->insertWidget(trackerStatusItemPos, item);
|
||||||
};
|
};
|
||||||
|
|
||||||
const auto removeTrackerStatusItem = [mainWidgetLayout]
|
const auto removeTrackerStatusItem = [mainWidgetLayout, trackerStatusItemPos]
|
||||||
{
|
{
|
||||||
QLayoutItem *layoutItem = mainWidgetLayout->takeAt(TrackerStatusItemPos);
|
QLayoutItem *layoutItem = mainWidgetLayout->takeAt(trackerStatusItemPos);
|
||||||
delete layoutItem->widget();
|
delete layoutItem->widget();
|
||||||
delete layoutItem;
|
delete layoutItem;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user