aboutsummaryrefslogtreecommitdiffstats
path: root/src/ui/widgets/KeyTreeView.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/widgets/KeyTreeView.cpp')
-rw-r--r--src/ui/widgets/KeyTreeView.cpp22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/ui/widgets/KeyTreeView.cpp b/src/ui/widgets/KeyTreeView.cpp
index 0e8ab859..3dde069a 100644
--- a/src/ui/widgets/KeyTreeView.cpp
+++ b/src/ui/widgets/KeyTreeView.cpp
@@ -28,20 +28,25 @@
#include "ui/widgets/KeyTreeView.h"
+#include <utility>
+
#include "core/function/gpg/GpgKeyGetter.h"
+#include "model/GpgKeyTreeProxyModel.h"
namespace GpgFrontend::UI {
KeyTreeView::KeyTreeView(int channel,
GpgKeyTreeModel::Detector checkable_detector,
- GpgKeyTreeModel::Detector enable_detector,
+ GpgKeyTreeProxyModel::KeyFilter filter,
QWidget* parent)
- : QTreeView(parent), channel_(channel) {
- model_ = QSharedPointer<GpgKeyTreeModel>::create(
- channel, GpgKeyGetter::GetInstance(channel_).FetchKey(),
- checkable_detector, enable_detector, this);
-
- setModel(model_.get());
+ : QTreeView(parent),
+ channel_(channel),
+ model_(QSharedPointer<GpgKeyTreeModel>::create(
+ channel, GpgKeyGetter::GetInstance(channel_).FetchKey(),
+ checkable_detector, this)),
+ proxy_model_(model_, GpgKeyTreeDisplayMode::kALL, std::move(filter),
+ this) {
+ setModel(&proxy_model_);
sortByColumn(2, Qt::AscendingOrder);
setSelectionBehavior(QAbstractItemView::SelectRows);
@@ -50,7 +55,10 @@ KeyTreeView::KeyTreeView(int channel,
setEditTriggers(QAbstractItemView::NoEditTriggers);
header()->resizeSections(QHeaderView::Interactive);
header()->setDefaultAlignment(Qt::AlignCenter);
+ header()->setMinimumHeight(20);
+ setUniformRowHeights(true);
+ setExpandsOnDoubleClick(true);
setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents);
setFocusPolicy(Qt::NoFocus);