Widgets/QColumnView: use pmf-style connect in QColumnView
Follow-up patch for 39d486171bdda4e9ef8c0e3b4eccda8773841a71 - don't create a temporary container for the connections but add them directly into the final one. Task-number: QTBUG-117698 Change-Id: I6ea3b1a5a834f2581f3929cca13c53f47b8c9805 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
This commit is contained in:
parent
42bc1f9d27
commit
0b6d2d9187
@ -663,12 +663,11 @@ QAbstractItemView *QColumnViewPrivate::createColumn(const QModelIndex &index, bo
|
|||||||
{
|
{
|
||||||
Q_Q(QColumnView);
|
Q_Q(QColumnView);
|
||||||
QAbstractItemView *view = nullptr;
|
QAbstractItemView *view = nullptr;
|
||||||
ViewConnections connections;
|
QMetaObject::Connection clickedConnection;
|
||||||
if (model->hasChildren(index)) {
|
if (model->hasChildren(index)) {
|
||||||
view = q->createColumn(index);
|
view = q->createColumn(index);
|
||||||
connections.push_back(
|
clickedConnection = QObjectPrivate::connect(view, &QAbstractItemView::clicked,
|
||||||
QObjectPrivate::connect(view, &QAbstractItemView::clicked,
|
this, &QColumnViewPrivate::clicked);
|
||||||
this, &QColumnViewPrivate::clicked));
|
|
||||||
} else {
|
} else {
|
||||||
if (!previewColumn)
|
if (!previewColumn)
|
||||||
setPreviewWidget(new QWidget(q));
|
setPreviewWidget(new QWidget(q));
|
||||||
@ -676,18 +675,14 @@ QAbstractItemView *QColumnViewPrivate::createColumn(const QModelIndex &index, bo
|
|||||||
view->setMinimumWidth(qMax(view->minimumWidth(), previewWidget->minimumWidth()));
|
view->setMinimumWidth(qMax(view->minimumWidth(), previewWidget->minimumWidth()));
|
||||||
}
|
}
|
||||||
|
|
||||||
connections.insert(connections.end(),
|
viewConnections[view] = {
|
||||||
{QObject::connect(view, &QAbstractItemView::activated,
|
QObject::connect(view, &QAbstractItemView::activated, q, &QColumnView::activated),
|
||||||
q, &QColumnView::activated),
|
QObject::connect(view, &QAbstractItemView::clicked, q, &QColumnView::clicked),
|
||||||
QObject::connect(view, &QAbstractItemView::clicked,
|
QObject::connect(view, &QAbstractItemView::doubleClicked, q, &QColumnView::doubleClicked),
|
||||||
q, &QColumnView::clicked),
|
QObject::connect(view, &QAbstractItemView::entered, q, &QColumnView::entered),
|
||||||
QObject::connect(view, &QAbstractItemView::doubleClicked,
|
QObject::connect(view, &QAbstractItemView::pressed, q, &QColumnView::pressed),
|
||||||
q, &QColumnView::doubleClicked),
|
clickedConnection
|
||||||
QObject::connect(view, &QAbstractItemView::entered,
|
};
|
||||||
q, &QColumnView::entered),
|
|
||||||
QObject::connect(view, &QAbstractItemView::pressed,
|
|
||||||
q, &QColumnView::pressed)});
|
|
||||||
viewConnections.insert(view, std::move(connections));
|
|
||||||
|
|
||||||
view->setFocusPolicy(Qt::NoFocus);
|
view->setFocusPolicy(Qt::NoFocus);
|
||||||
view->setParent(viewport);
|
view->setParent(viewport);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user