1// SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: GPL-3.0-or-later
4
5#include "taskview.h"
6#include "taskdelegate.h"
7
8#include <QScrollBar>
9
10TaskView::TaskView(QWidget *parent) : QListView(parent)
11{
12 setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
13 setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);
14
15 QFontMetrics fm(font());
16 int vStepSize = fm.height() + 3;
17 if (vStepSize < TaskDelegate::Positions::minimumHeight())
18 vStepSize = TaskDelegate::Positions::minimumHeight();
19
20 verticalScrollBar()->setSingleStep(vStepSize);
21}
22
23TaskView::~TaskView() = default;
24
25void TaskView::resizeEvent(QResizeEvent *e)
26{
27 Q_UNUSED(e)
28 static_cast<TaskDelegate *>(itemDelegate())->emitSizeHintChanged(selectionModel()->currentIndex());
29}
30