Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qcolumnview.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QCOLUMNVIEW_H
6#define QCOLUMNVIEW_H
7
8#include <QtWidgets/qtwidgetsglobal.h>
9#include <QtWidgets/qabstractitemview.h>
10
12
13QT_BEGIN_NAMESPACE
14
15class QColumnViewPrivate;
16
17class Q_WIDGETS_EXPORT QColumnView : public QAbstractItemView {
18
19Q_OBJECT
20 Q_PROPERTY(bool resizeGripsVisible READ resizeGripsVisible WRITE setResizeGripsVisible)
21 Q_PROPERTY(bool previewColumnVisible READ previewColumnVisible WRITE setPreviewColumnVisible)
22
23Q_SIGNALS:
24 void updatePreviewWidget(const QModelIndex &index);
25
26public:
27 explicit QColumnView(QWidget *parent = nullptr);
28 ~QColumnView();
29
30 // QAbstractItemView overloads
31 QModelIndex indexAt(const QPoint &point) const override;
32 void scrollTo(const QModelIndex &index, ScrollHint hint = EnsureVisible) override;
33 QSize sizeHint() const override;
34 QRect visualRect(const QModelIndex &index) const override;
35 void setModel(QAbstractItemModel *model) override;
36 void setSelectionModel(QItemSelectionModel * selectionModel) override;
37 void setRootIndex(const QModelIndex &index) override;
38 void selectAll() override;
39
40 // QColumnView functions
41 void setResizeGripsVisible(bool visible);
42 bool resizeGripsVisible() const;
43 void setPreviewColumnVisible(bool visible);
44 bool previewColumnVisible() const;
45
46 QWidget *previewWidget() const;
47 void setPreviewWidget(QWidget *widget);
48
49 void setColumnWidths(const QList<int> &list);
50 QList<int> columnWidths() const;
51
52protected:
53 QColumnView(QColumnViewPrivate &dd, QWidget *parent = nullptr);
54
55 // QAbstractItemView overloads
56 bool isIndexHidden(const QModelIndex &index) const override;
57 QModelIndex moveCursor(CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override;
58 void resizeEvent(QResizeEvent *event) override;
59 void setSelection(const QRect & rect, QItemSelectionModel::SelectionFlags command) override;
60 QRegion visualRegionForSelection(const QItemSelection &selection) const override;
61 int horizontalOffset() const override;
62 int verticalOffset() const override;
63 void rowsInserted(const QModelIndex &parent, int start, int end) override;
64 void currentChanged(const QModelIndex &current, const QModelIndex &previous) override;
65
66 // QColumnView functions
67 void scrollContentsBy(int dx, int dy) override;
68 virtual QAbstractItemView* createColumn(const QModelIndex &rootIndex);
69 void initializeColumn(QAbstractItemView *column) const;
70
71private:
72 Q_DECLARE_PRIVATE(QColumnView)
73 Q_DISABLE_COPY(QColumnView)
74};
75
76QT_END_NAMESPACE
77
78#endif // QCOLUMNVIEW_H
QT_REQUIRE_CONFIG(columnview)