diff options
author | Gabriel de Dietrich <gabriel.dedietrich@qt.io> | 2017-07-13 16:34:32 -0700 |
---|---|---|
committer | Gabriel de Dietrich <gabriel.dedietrich@qt.io> | 2017-07-13 16:36:10 -0700 |
commit | d38fe875c7850ca2c6ca28f91e94ae276735fac8 (patch) | |
tree | e5c92cef74e0853490d77cf0139b23f00d548a6e /src/widgets/itemviews | |
parent | ac4e848c9802377b7c4ff673180f28b9ca76b746 (diff) | |
parent | 627f0a7f7d775ecd263b95dd07fca44bfcb0c5cf (diff) |
Merge remote-tracking branch 'origin/5.9' into dev
Conflicts:
src/widgets/widgets/qmainwindowlayout.cpp
Change-Id: I306b4f5ad11bceb336c9091241b468d455fe6bb6
Diffstat (limited to 'src/widgets/itemviews')
-rw-r--r-- | src/widgets/itemviews/itemviews.pri | 11 | ||||
-rw-r--r-- | src/widgets/itemviews/qabstractitemview.cpp | 1 | ||||
-rw-r--r-- | src/widgets/itemviews/qitemeditorfactory.cpp | 6 | ||||
-rw-r--r-- | src/widgets/itemviews/qlistview.cpp | 13 | ||||
-rw-r--r-- | src/widgets/itemviews/qlistview_p.h | 2 | ||||
-rw-r--r-- | src/widgets/itemviews/qstyleditemdelegate.cpp | 4 | ||||
-rw-r--r-- | src/widgets/itemviews/qtableview.cpp | 3 | ||||
-rw-r--r-- | src/widgets/itemviews/qtableview.h | 7 | ||||
-rw-r--r-- | src/widgets/itemviews/qtableview_p.h | 4 |
9 files changed, 29 insertions, 22 deletions
diff --git a/src/widgets/itemviews/itemviews.pri b/src/widgets/itemviews/itemviews.pri index af0a6f6898..4101be5631 100644 --- a/src/widgets/itemviews/itemviews.pri +++ b/src/widgets/itemviews/itemviews.pri @@ -9,8 +9,6 @@ HEADERS += \ itemviews/qlistview.h \ itemviews/qlistview_p.h \ itemviews/qbsptree_p.h \ - itemviews/qtableview.h \ - itemviews/qtableview_p.h \ itemviews/qtreeview.h \ itemviews/qtreeview_p.h \ itemviews/qabstractitemdelegate.h \ @@ -28,7 +26,6 @@ SOURCES += \ itemviews/qheaderview.cpp \ itemviews/qlistview.cpp \ itemviews/qbsptree.cpp \ - itemviews/qtableview.cpp \ itemviews/qtreeview.cpp \ itemviews/qabstractitemdelegate.cpp \ itemviews/qitemdelegate.cpp \ @@ -57,6 +54,14 @@ qtConfig(listwidget) { SOURCES += itemviews/qlistwidget.cpp } +qtConfig(tableview) { + HEADERS += \ + itemviews/qtableview.h \ + itemviews/qtableview_p.h + + SOURCES += itemviews/qtableview.cpp +} + qtConfig(tablewidget) { HEADERS += \ itemviews/qtablewidget.h \ diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index b225678e0b..2ae885615f 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -53,7 +53,6 @@ #include <qlineedit.h> #include <qspinbox.h> #include <qtreeview.h> -#include <qtableview.h> #include <qheaderview.h> #include <qstyleditemdelegate.h> #include <private/qabstractitemview_p.h> diff --git a/src/widgets/itemviews/qitemeditorfactory.cpp b/src/widgets/itemviews/qitemeditorfactory.cpp index c535cf5f9e..a31689e0b5 100644 --- a/src/widgets/itemviews/qitemeditorfactory.cpp +++ b/src/widgets/itemviews/qitemeditorfactory.cpp @@ -44,7 +44,9 @@ #ifndef QT_NO_ITEMVIEWS #include <qcombobox.h> +#if QT_CONFIG(datetimeedit) #include <qdatetimeedit.h> +#endif #if QT_CONFIG(label) #include <qlabel.h> #endif @@ -252,7 +254,7 @@ QWidget *QDefaultItemEditorFactory::createEditor(int userType, QWidget *parent) sb->setMaximum(INT_MAX); return sb; } #endif -#ifndef QT_NO_DATETIMEEDIT +#if QT_CONFIG(datetimeedit) case QVariant::Date: { QDateTimeEdit *ed = new QDateEdit(parent); ed->setFrame(false); @@ -308,7 +310,7 @@ QByteArray QDefaultItemEditorFactory::valuePropertyName(int userType) const case QVariant::Double: return "value"; #endif -#ifndef QT_NO_DATETIMEEDIT +#if QT_CONFIG(datetimeedit) case QVariant::Date: return "date"; case QVariant::Time: diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp index bc0ca7dc1c..e234bae4dd 100644 --- a/src/widgets/itemviews/qlistview.cpp +++ b/src/widgets/itemviews/qlistview.cpp @@ -50,7 +50,9 @@ #include <qstyle.h> #include <qevent.h> #include <qscrollbar.h> +#if QT_CONFIG(rubberband) #include <qrubberband.h> +#endif #include <private/qlistview_p.h> #include <private/qscrollbar_p.h> #include <qdebug.h> @@ -1042,7 +1044,7 @@ void QListView::paintEvent(QPaintEvent *e) d->commonListView->paintDragDrop(&painter); #endif -#ifndef QT_NO_RUBBERBAND +#if QT_CONFIG(rubberband) // #### move this implementation into a dynamic class if (d->showElasticBand && d->elasticBand.isValid()) { QStyleOptionRubberBand opt; @@ -1870,6 +1872,11 @@ void QCommonListViewBase::paintDragDrop(QPainter *painter) } #endif +QSize QListModeViewBase::viewportSize(const QAbstractItemView *v) +{ + return v->contentsRect().marginsRemoved(v->viewportMargins()).size(); +} + void QCommonListViewBase::updateHorizontalScrollBar(const QSize &step) { horizontalScrollBar()->d_func()->itemviewChangeSingleStep(step.width() + spacing()); @@ -1882,7 +1889,7 @@ void QCommonListViewBase::updateHorizontalScrollBar(const QSize &step) const bool bothScrollBarsAuto = qq->verticalScrollBarPolicy() == Qt::ScrollBarAsNeeded && qq->horizontalScrollBarPolicy() == Qt::ScrollBarAsNeeded; - const QSize viewportSize = qq->contentsRect().size(); + const QSize viewportSize = QListModeViewBase::viewportSize(qq); bool verticalWantsToShow = contentsSize.height() > viewportSize.height(); bool horizontalWantsToShow; @@ -1912,7 +1919,7 @@ void QCommonListViewBase::updateVerticalScrollBar(const QSize &step) const bool bothScrollBarsAuto = qq->verticalScrollBarPolicy() == Qt::ScrollBarAsNeeded && qq->horizontalScrollBarPolicy() == Qt::ScrollBarAsNeeded; - const QSize viewportSize = qq->contentsRect().size(); + const QSize viewportSize = QListModeViewBase::viewportSize(qq); bool horizontalWantsToShow = contentsSize.width() > viewportSize.width(); bool verticalWantsToShow; diff --git a/src/widgets/itemviews/qlistview_p.h b/src/widgets/itemviews/qlistview_p.h index 47effcdfd9..6c0e470a93 100644 --- a/src/widgets/itemviews/qlistview_p.h +++ b/src/widgets/itemviews/qlistview_p.h @@ -53,7 +53,6 @@ #include <QtWidgets/private/qtwidgetsglobal_p.h> #include "private/qabstractitemview_p.h" -#include "qrubberband.h" #include "qbitarray.h" #include "qbsptree_p.h" #include <limits.h> @@ -225,6 +224,7 @@ public: QRect mapToViewport(const QRect &rect) const override; int horizontalOffset() const override; int verticalOffset() const override; + inline static QSize viewportSize(const QAbstractItemView *v); void updateHorizontalScrollBar(const QSize &step) override; void updateVerticalScrollBar(const QSize &step) override; diff --git a/src/widgets/itemviews/qstyleditemdelegate.cpp b/src/widgets/itemviews/qstyleditemdelegate.cpp index 4149d3ac3a..0b8019c21c 100644 --- a/src/widgets/itemviews/qstyleditemdelegate.cpp +++ b/src/widgets/itemviews/qstyleditemdelegate.cpp @@ -67,7 +67,9 @@ #include <private/qlayoutengine_p.h> #include <qdebug.h> #include <qlocale.h> +#if QT_CONFIG(tableview) #include <qtableview.h> +#endif #include <limits.h> @@ -500,7 +502,7 @@ void QStyledItemDelegate::updateEditorGeometry(QWidget *editor, // let the editor take up all available space //if the editor is not a QLineEdit //or it is in a QTableView -#if !defined(QT_NO_TABLEVIEW) && !defined(QT_NO_LINEEDIT) +#if QT_CONFIG(tableview) && !defined(QT_NO_LINEEDIT) if (qobject_cast<QExpandingLineEdit*>(editor) && !qobject_cast<const QTableView*>(widget)) opt.showDecorationSelected = editor->style()->styleHint(QStyle::SH_ItemView_ShowDecorationSelected, 0, editor); else diff --git a/src/widgets/itemviews/qtableview.cpp b/src/widgets/itemviews/qtableview.cpp index b79932327b..2d5813198c 100644 --- a/src/widgets/itemviews/qtableview.cpp +++ b/src/widgets/itemviews/qtableview.cpp @@ -39,7 +39,6 @@ #include "qtableview.h" -#ifndef QT_NO_TABLEVIEW #include <qheaderview.h> #include <qitemdelegate.h> #include <qapplication.h> @@ -3352,5 +3351,3 @@ QT_END_NAMESPACE #include "qtableview.moc" #include "moc_qtableview.cpp" - -#endif // QT_NO_TABLEVIEW diff --git a/src/widgets/itemviews/qtableview.h b/src/widgets/itemviews/qtableview.h index b1c38d521f..75f2e7b44c 100644 --- a/src/widgets/itemviews/qtableview.h +++ b/src/widgets/itemviews/qtableview.h @@ -43,10 +43,9 @@ #include <QtWidgets/qtwidgetsglobal.h> #include <QtWidgets/qabstractitemview.h> -QT_BEGIN_NAMESPACE - +QT_REQUIRE_CONFIG(tableview); -#ifndef QT_NO_TABLEVIEW +QT_BEGIN_NAMESPACE class QHeaderView; class QTableViewPrivate; @@ -191,8 +190,6 @@ private: Q_PRIVATE_SLOT(d_func(), void _q_updateSpanRemovedColumns(QModelIndex,int,int)) }; -#endif // QT_NO_TABLEVIEW - QT_END_NAMESPACE #endif // QTABLEVIEW_H diff --git a/src/widgets/itemviews/qtableview_p.h b/src/widgets/itemviews/qtableview_p.h index d2f45d557d..1a0fef9017 100644 --- a/src/widgets/itemviews/qtableview_p.h +++ b/src/widgets/itemviews/qtableview_p.h @@ -59,7 +59,7 @@ #include <QtCore/QDebug> #include "private/qabstractitemview_p.h" -#ifndef QT_NO_TABLEVIEW +QT_REQUIRE_CONFIG(tableview); QT_BEGIN_NAMESPACE @@ -261,6 +261,4 @@ public: QT_END_NAMESPACE -#endif // QT_NO_TABLEVIEW - #endif // QTABLEVIEW_P_H |