summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/widgets')
-rw-r--r--src/widgets/widgets/qabstractbutton.cpp4
-rw-r--r--src/widgets/widgets/qabstractscrollarea.cpp2
-rw-r--r--src/widgets/widgets/qcalendarwidget.cpp4
-rw-r--r--src/widgets/widgets/qcalendarwidget.h8
-rw-r--r--src/widgets/widgets/qcombobox.cpp3
-rw-r--r--src/widgets/widgets/qcombobox.h6
-rw-r--r--src/widgets/widgets/qcombobox_p.h5
-rw-r--r--src/widgets/widgets/qdatetimeedit_p.h1
-rw-r--r--src/widgets/widgets/qdockarealayout.cpp118
-rw-r--r--src/widgets/widgets/qdockarealayout_p.h18
-rw-r--r--src/widgets/widgets/qdockwidget.cpp7
-rw-r--r--src/widgets/widgets/qdockwidget.h7
-rw-r--r--src/widgets/widgets/qdockwidget_p.h4
-rw-r--r--src/widgets/widgets/qlineedit.cpp2
-rw-r--r--src/widgets/widgets/qlineedit_p.cpp2
-rw-r--r--src/widgets/widgets/qmainwindow.cpp36
-rw-r--r--src/widgets/widgets/qmainwindow.h32
-rw-r--r--src/widgets/widgets/qmainwindowlayout.cpp190
-rw-r--r--src/widgets/widgets/qmainwindowlayout_p.h30
-rw-r--r--src/widgets/widgets/qmdiarea.cpp74
-rw-r--r--src/widgets/widgets/qmdiarea.h10
-rw-r--r--src/widgets/widgets/qmdiarea_p.h6
-rw-r--r--src/widgets/widgets/qmdisubwindow.h2
-rw-r--r--src/widgets/widgets/qscrollbar.h2
-rw-r--r--src/widgets/widgets/qtabbar.cpp10
-rw-r--r--src/widgets/widgets/qtabbar.h7
-rw-r--r--src/widgets/widgets/qtabbar_p.h7
-rw-r--r--src/widgets/widgets/qtabwidget.cpp3
-rw-r--r--src/widgets/widgets/qtabwidget.h7
-rw-r--r--src/widgets/widgets/qtoolbar.cpp2
-rw-r--r--src/widgets/widgets/qtoolbarlayout.cpp2
-rw-r--r--src/widgets/widgets/qwidgetlinecontrol.cpp6
-rw-r--r--src/widgets/widgets/widgets.pri52
33 files changed, 337 insertions, 332 deletions
diff --git a/src/widgets/widgets/qabstractbutton.cpp b/src/widgets/widgets/qabstractbutton.cpp
index e65613d5cd..1d78d24a88 100644
--- a/src/widgets/widgets/qabstractbutton.cpp
+++ b/src/widgets/widgets/qabstractbutton.cpp
@@ -40,7 +40,9 @@
#include "private/qabstractbutton_p.h"
#include "private/qbuttongroup_p.h"
+#if QT_CONFIG(itemviews)
#include "qabstractitemview.h"
+#endif
#include "qbuttongroup.h"
#include "qabstractbutton_p.h"
#include "qevent.h"
@@ -1071,7 +1073,7 @@ void QAbstractButton::keyPressEvent(QKeyEvent *e)
#ifndef QT_NO_BUTTONGROUP
|| d->group
#endif
-#ifndef QT_NO_ITEMVIEWS
+#if QT_CONFIG(itemviews)
|| (pw && qobject_cast<QAbstractItemView *>(pw->parentWidget()))
#endif
) {
diff --git a/src/widgets/widgets/qabstractscrollarea.cpp b/src/widgets/widgets/qabstractscrollarea.cpp
index 673983d575..14498c8b90 100644
--- a/src/widgets/widgets/qabstractscrollarea.cpp
+++ b/src/widgets/widgets/qabstractscrollarea.cpp
@@ -50,7 +50,9 @@
#include "qboxlayout.h"
#include "qpainter.h"
#include "qmargins.h"
+#if QT_CONFIG(itemviews)
#include "qheaderview.h"
+#endif
#include <QDebug>
diff --git a/src/widgets/widgets/qcalendarwidget.cpp b/src/widgets/widgets/qcalendarwidget.cpp
index b96492d623..94911d1cb1 100644
--- a/src/widgets/widgets/qcalendarwidget.cpp
+++ b/src/widgets/widgets/qcalendarwidget.cpp
@@ -39,8 +39,6 @@
#include "qcalendarwidget.h"
-#ifndef QT_NO_CALENDARWIDGET
-
#include <qabstractitemmodel.h>
#include <qitemdelegate.h>
#include <qdatetime.h>
@@ -3129,5 +3127,3 @@ QT_END_NAMESPACE
#include "qcalendarwidget.moc"
#include "moc_qcalendarwidget.cpp"
-
-#endif //QT_NO_CALENDARWIDGET
diff --git a/src/widgets/widgets/qcalendarwidget.h b/src/widgets/widgets/qcalendarwidget.h
index 7780065117..29e2ff698b 100644
--- a/src/widgets/widgets/qcalendarwidget.h
+++ b/src/widgets/widgets/qcalendarwidget.h
@@ -44,10 +44,9 @@
#include <QtWidgets/qwidget.h>
#include <QtCore/qdatetime.h>
-QT_BEGIN_NAMESPACE
-
+QT_REQUIRE_CONFIG(calendarwidget);
-#ifndef QT_NO_CALENDARWIDGET
+QT_BEGIN_NAMESPACE
class QDate;
class QTextCharFormat;
@@ -184,9 +183,6 @@ private:
};
-#endif // QT_NO_CALENDARWIDGET
-
QT_END_NAMESPACE
#endif // QCALENDARWIDGET_H
-
diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp
index 1259c236e4..58a1ff9e7f 100644
--- a/src/widgets/widgets/qcombobox.cpp
+++ b/src/widgets/widgets/qcombobox.cpp
@@ -39,7 +39,6 @@
#include "qcombobox.h"
-#ifndef QT_NO_COMBOBOX
#include <qstylepainter.h>
#include <qpa/qplatformtheme.h>
#include <qpa/qplatformmenu.h>
@@ -3508,5 +3507,3 @@ QT_END_NAMESPACE
#include "moc_qcombobox.cpp"
#include "moc_qcombobox_p.cpp"
-
-#endif // QT_NO_COMBOBOX
diff --git a/src/widgets/widgets/qcombobox.h b/src/widgets/widgets/qcombobox.h
index 8f99594a76..a6aac6f8aa 100644
--- a/src/widgets/widgets/qcombobox.h
+++ b/src/widgets/widgets/qcombobox.h
@@ -46,9 +46,9 @@
#include <QtCore/qabstractitemmodel.h>
#include <QtCore/qvariant.h>
-QT_BEGIN_NAMESPACE
+QT_REQUIRE_CONFIG(combobox);
-#ifndef QT_NO_COMBOBOX
+QT_BEGIN_NAMESPACE
class QAbstractItemView;
class QLineEdit;
@@ -277,8 +277,6 @@ inline void QComboBox::insertItem(int aindex, const QString &atext,
const QVariant &auserData)
{ insertItem(aindex, QIcon(), atext, auserData); }
-#endif // QT_NO_COMBOBOX
-
QT_END_NAMESPACE
#endif // QCOMBOBOX_H
diff --git a/src/widgets/widgets/qcombobox_p.h b/src/widgets/widgets/qcombobox_p.h
index 8d3b46a950..6bee9409ee 100644
--- a/src/widgets/widgets/qcombobox_p.h
+++ b/src/widgets/widgets/qcombobox_p.h
@@ -54,7 +54,6 @@
#include <QtWidgets/private/qtwidgetsglobal_p.h>
#include "QtWidgets/qcombobox.h"
-#ifndef QT_NO_COMBOBOX
#include "QtWidgets/qabstractslider.h"
#include "QtWidgets/qapplication.h"
#include "QtWidgets/qitemdelegate.h"
@@ -74,6 +73,8 @@
#include <limits.h>
+QT_REQUIRE_CONFIG(combobox);
+
QT_BEGIN_NAMESPACE
class QAction;
@@ -424,6 +425,4 @@ public:
QT_END_NAMESPACE
-#endif // QT_NO_COMBOBOX
-
#endif // QCOMBOBOX_P_H
diff --git a/src/widgets/widgets/qdatetimeedit_p.h b/src/widgets/widgets/qdatetimeedit_p.h
index bc70780de9..5ac5a9db6a 100644
--- a/src/widgets/widgets/qdatetimeedit_p.h
+++ b/src/widgets/widgets/qdatetimeedit_p.h
@@ -52,7 +52,6 @@
//
#include <QtWidgets/private/qtwidgetsglobal_p.h>
-#include "QtWidgets/qcombobox.h"
#include "QtWidgets/qcalendarwidget.h"
#include "QtWidgets/qspinbox.h"
#include "QtWidgets/qtoolbutton.h"
diff --git a/src/widgets/widgets/qdockarealayout.cpp b/src/widgets/widgets/qdockarealayout.cpp
index 60f6f6d26d..5edcbcf4ec 100644
--- a/src/widgets/widgets/qdockarealayout.cpp
+++ b/src/widgets/widgets/qdockarealayout.cpp
@@ -40,7 +40,9 @@
#include "QtWidgets/qapplication.h"
#include "QtWidgets/qwidget.h"
+#if QT_CONFIG(tabbar)
#include "QtWidgets/qtabbar.h"
+#endif
#include "QtWidgets/qstyle.h"
#include "QtWidgets/qdesktopwidget.h"
#include "QtWidgets/qapplication.h"
@@ -56,8 +58,6 @@
#include <qpainter.h>
#include <qstyleoption.h>
-#ifndef QT_NO_DOCKWIDGET
-
QT_BEGIN_NAMESPACE
// qmainwindow.cpp
@@ -214,7 +214,7 @@ QDockAreaLayoutItem
** QDockAreaLayoutInfo
*/
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
static quintptr tabId(const QDockAreaLayoutItem &item)
{
if (item.widgetItem == 0)
@@ -227,7 +227,7 @@ static const int zero = 0;
QDockAreaLayoutInfo::QDockAreaLayoutInfo()
: sep(&zero), dockPos(QInternal::LeftDock), o(Qt::Horizontal), mainWindow(0)
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
, tabbed(false), tabBar(0), tabBarShape(QTabBar::RoundedSouth)
#endif
{
@@ -237,11 +237,11 @@ QDockAreaLayoutInfo::QDockAreaLayoutInfo(const int *_sep, QInternal::DockPositio
Qt::Orientation _o, int tbshape,
QMainWindow *window)
: sep(_sep), dockPos(_dockPos), o(_o), mainWindow(window)
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
, tabbed(false), tabBar(0), tabBarShape(static_cast<QTabBar::Shape>(tbshape))
#endif
{
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
Q_UNUSED(tbshape);
#endif
}
@@ -255,7 +255,7 @@ void QDockAreaLayoutInfo::clear()
{
item_list.clear();
rect = QRect();
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
tabbed = false;
tabBar = 0;
#endif
@@ -289,7 +289,7 @@ QSize QDockAreaLayoutInfo::minimumSize() const
continue;
QSize min_size = item.minimumSize();
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
a = qMax(a, pick(o, min_size));
} else
@@ -308,7 +308,7 @@ QSize QDockAreaLayoutInfo::minimumSize() const
rpick(o, result) = a;
rperp(o, result) = b;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QSize tbm = tabBarMinimumSize();
if (!tbm.isNull()) {
switch (tabBarShape) {
@@ -330,7 +330,7 @@ QSize QDockAreaLayoutInfo::minimumSize() const
break;
}
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
return result;
}
@@ -341,7 +341,7 @@ QSize QDockAreaLayoutInfo::maximumSize() const
return QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX);
int a = 0, b = QWIDGETSIZE_MAX;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed)
a = QWIDGETSIZE_MAX;
#endif
@@ -357,7 +357,7 @@ QSize QDockAreaLayoutInfo::maximumSize() const
QSize max_size = item.maximumSize();
min_perp = qMax(min_perp, perp(o, item.minimumSize()));
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
a = qMin(a, pick(o, max_size));
} else
@@ -381,7 +381,7 @@ QSize QDockAreaLayoutInfo::maximumSize() const
rpick(o, result) = a;
rperp(o, result) = b;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QSize tbh = tabBarSizeHint();
if (!tbh.isNull()) {
switch (tabBarShape) {
@@ -397,7 +397,7 @@ QSize QDockAreaLayoutInfo::maximumSize() const
break;
}
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
return result;
}
@@ -422,7 +422,7 @@ QSize QDockAreaLayoutInfo::sizeHint() const
min_perp = qMax(min_perp, perp(o, item.minimumSize()));
max_perp = qMin(max_perp, perp(o, item.maximumSize()));
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
a = qMax(a, gap ? item.size : pick(o, size_hint));
} else
@@ -447,7 +447,7 @@ QSize QDockAreaLayoutInfo::sizeHint() const
rpick(o, result) = a;
rperp(o, result) = b;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
QSize tbh = tabBarSizeHint();
switch (tabBarShape) {
@@ -469,7 +469,7 @@ QSize QDockAreaLayoutInfo::sizeHint() const
break;
}
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
return result;
}
@@ -545,7 +545,7 @@ static int realMaxSize(const QDockAreaLayoutInfo &info)
void QDockAreaLayoutInfo::fitItems()
{
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
return;
}
@@ -759,7 +759,7 @@ QList<int> QDockAreaLayoutInfo::gapIndex(const QPoint& _pos,
QRect item_rect;
int item_index = 0;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
item_rect = tabContentRect();
} else
@@ -779,7 +779,7 @@ QList<int> QDockAreaLayoutInfo::gapIndex(const QPoint& _pos,
continue;
if (item.subinfo != 0
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
&& !item.subinfo->tabbed
#endif
) {
@@ -941,7 +941,7 @@ static int separatorMoveHelper(QVector<QLayoutStruct> &list, int index, int delt
int QDockAreaLayoutInfo::separatorMove(int index, int delta)
{
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
Q_ASSERT(!tabbed);
#endif
@@ -1065,7 +1065,7 @@ QLayoutItem *QDockAreaLayoutInfo::unplug(const QList<int> &path)
Q_ASSERT(!(item.flags & QDockAreaLayoutItem::GapItem));
item.flags |= QDockAreaLayoutItem::GapItem;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
} else
#endif
@@ -1081,7 +1081,7 @@ QLayoutItem *QDockAreaLayoutInfo::unplug(const QList<int> &path)
return item.widgetItem;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
quintptr QDockAreaLayoutInfo::currentTabId() const
{
@@ -1113,7 +1113,7 @@ void QDockAreaLayoutInfo::setCurrentTabId(quintptr id)
}
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
static QRect dockedGeometry(QWidget *widget)
{
@@ -1146,7 +1146,7 @@ bool QDockAreaLayoutInfo::insertGap(const QList<int> &path, QLayoutItem *dockWid
QDockAreaLayoutItem &item = item_list[index];
if (item.subinfo == 0
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
|| (item.subinfo->tabbed && !insert_tabbed)
#endif
) {
@@ -1159,7 +1159,7 @@ bool QDockAreaLayoutInfo::insertGap(const QList<int> &path, QLayoutItem *dockWid
QRect r = subinfo == 0 ? widgetItem ? dockedGeometry(widgetItem->widget()) : placeHolderItem->topLevelRect : subinfo->rect;
Qt::Orientation opposite = o == Qt::Horizontal ? Qt::Vertical : Qt::Horizontal;
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
const int tabBarShape = 0;
#endif
QDockAreaLayoutInfo *new_info
@@ -1177,7 +1177,7 @@ bool QDockAreaLayoutInfo::insertGap(const QList<int> &path, QLayoutItem *dockWid
new_item.size = pick(opposite, r.size());
new_item.pos = pick(opposite, r.topLeft());
new_info->item_list.append(new_item);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (insert_tabbed) {
new_info->tabbed = true;
}
@@ -1192,7 +1192,7 @@ bool QDockAreaLayoutInfo::insertGap(const QList<int> &path, QLayoutItem *dockWid
gap_item.flags |= QDockAreaLayoutItem::GapItem;
gap_item.widgetItem = dockWidgetItem; // so minimumSize(), maximumSize() and
// sizeHint() will work
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (!tabbed)
#endif
{
@@ -1267,7 +1267,7 @@ QDockAreaLayoutInfo *QDockAreaLayoutInfo::info(QWidget *widget)
if (item.skip())
continue;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed && widget == tabBar)
return this;
#endif
@@ -1308,7 +1308,7 @@ QRect QDockAreaLayoutInfo::itemRect(int index, bool isGap) const
QRect result;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
if (isGap || tabId(item) == currentTabId())
result = tabContentRect();
@@ -1357,7 +1357,7 @@ QRect QDockAreaLayoutInfo::itemRect(const QList<int> &path) const
QRect QDockAreaLayoutInfo::separatorRect(int index) const
{
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed)
return QRect();
#endif
@@ -1389,7 +1389,7 @@ QRect QDockAreaLayoutInfo::separatorRect(const QList<int> &path) const
QList<int> QDockAreaLayoutInfo::findSeparator(const QPoint &_pos) const
{
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed)
return QList<int>();
#endif
@@ -1500,7 +1500,7 @@ QDockWidget *QDockAreaLayoutInfo::apply(bool animate)
{
QWidgetAnimator &widgetAnimator = mainWindowLayout()->widgetAnimator;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
QRect tab_rect;
QSize tbh = tabBarSizeHint();
@@ -1533,7 +1533,7 @@ QDockWidget *QDockAreaLayoutInfo::apply(bool animate)
widgetAnimator.animate(tabBar, tab_rect, animate);
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
QDockWidget *activated = nullptr;
@@ -1569,10 +1569,10 @@ QDockWidget *QDockAreaLayoutInfo::apply(bool animate)
}
}
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (*sep == 1)
updateSeparatorWidgets();
-#endif //QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
return activated;
}
@@ -1599,7 +1599,7 @@ QRegion QDockAreaLayoutInfo::separatorRegion() const
if (isEmpty())
return result;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed)
return result;
#endif
@@ -1629,7 +1629,7 @@ void QDockAreaLayoutInfo::paintSeparators(QPainter *p, QWidget *widget,
{
if (isEmpty())
return;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed)
return;
#endif
@@ -1678,7 +1678,7 @@ int QDockAreaLayoutInfo::prev(int index) const
void QDockAreaLayoutInfo::tab(int index, QLayoutItem *dockWidgetItem)
{
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
Q_UNUSED(index);
Q_UNUSED(dockWidgetItem);
#else
@@ -1697,7 +1697,7 @@ void QDockAreaLayoutInfo::tab(int index, QLayoutItem *dockWidgetItem)
new_info->updateTabBar();
new_info->setCurrentTab(dockWidgetItem->widget());
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
}
void QDockAreaLayoutInfo::split(int index, Qt::Orientation orientation,
@@ -1706,7 +1706,7 @@ void QDockAreaLayoutInfo::split(int index, Qt::Orientation orientation,
if (orientation == o) {
item_list.insert(index + 1, QDockAreaLayoutItem(dockWidgetItem));
} else {
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
const int tabBarShape = 0;
#endif
QDockAreaLayoutInfo *new_info
@@ -1787,7 +1787,7 @@ void QDockAreaLayoutInfo::deleteAllLayoutItems()
void QDockAreaLayoutInfo::saveState(QDataStream &stream) const
{
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabbed) {
stream << (uchar) TabMarker;
@@ -1802,7 +1802,7 @@ void QDockAreaLayoutInfo::saveState(QDataStream &stream) const
}
stream << index;
} else
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
{
stream << (uchar) SequenceMarker;
}
@@ -1876,7 +1876,7 @@ bool QDockAreaLayoutInfo::restoreState(QDataStream &stream, QList<QDockWidget*>
if (marker != TabMarker && marker != SequenceMarker)
return false;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
tabbed = marker == TabMarker;
int index = -1;
@@ -1981,7 +1981,7 @@ bool QDockAreaLayoutInfo::restoreState(QDataStream &stream, QList<QDockWidget*>
}
} else if (nextMarker == SequenceMarker) {
int dummy;
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
const int tabBarShape = 0;
#endif
QDockAreaLayoutItem item(new QDockAreaLayoutInfo(sep, dockPos, o,
@@ -2002,7 +2002,7 @@ bool QDockAreaLayoutInfo::restoreState(QDataStream &stream, QList<QDockWidget*>
}
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (!testing && tabbed && index >= 0 && index < item_list.count()) {
updateTabBar();
setCurrentTabId(tabId(item_list.at(index)));
@@ -2014,7 +2014,7 @@ bool QDockAreaLayoutInfo::restoreState(QDataStream &stream, QList<QDockWidget*>
return true;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
void QDockAreaLayoutInfo::updateSeparatorWidgets() const
{
if (tabbed) {
@@ -2065,9 +2065,7 @@ void QDockAreaLayoutInfo::updateSeparatorWidgets() const
separatorWidgets.resize(j);
Q_ASSERT(separatorWidgets.size() == j);
}
-#endif //QT_NO_TABBAR
-#ifndef QT_NO_TABBAR
/*! \internal
reparent all the widgets contained in this layout portion to the
specified parent. This is used to reparent dock widgets and tabbars
@@ -2293,7 +2291,7 @@ void QDockAreaLayoutInfo::moveTab(int from, int to)
{
item_list.move(tabIndexToListIndex(from), tabIndexToListIndex(to));
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
/******************************************************************************
** QDockAreaLayout
@@ -2303,7 +2301,7 @@ QDockAreaLayout::QDockAreaLayout(QMainWindow *win) : fallbackToSizeHints(true)
{
mainWindow = win;
sep = win->style()->pixelMetric(QStyle::PM_DockWidgetSeparatorExtent, 0, win);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
const int tabShape = QTabBar::RoundedSouth;
#else
const int tabShape = 0;
@@ -2423,7 +2421,7 @@ QList<int> QDockAreaLayout::gapIndex(const QPoint &pos, bool disallowTabs) const
QMainWindow::DockOptions opts = mainWindow->dockOptions();
bool nestingEnabled = opts & QMainWindow::AllowNestedDocks;
QDockAreaLayoutInfo::TabMode tabMode = QDockAreaLayoutInfo::NoTabs;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (!disallowTabs) {
if (opts & QMainWindow::AllowTabbedDocks || opts & QMainWindow::VerticalTabs)
tabMode = QDockAreaLayoutInfo::AllowTabs;
@@ -3115,14 +3113,14 @@ void QDockAreaLayout::addDockWidget(QInternal::DockPosition pos, QDockWidget *do
QDockAreaLayoutItem new_item(dockWidgetItem);
info.item_list.append(new_item);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (info.tabbed && !new_item.skip()) {
info.updateTabBar();
info.setCurrentTabId(tabId(new_item));
}
#endif
} else {
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
int tbshape = info.tabBarShape;
#else
int tbshape = 0;
@@ -3223,10 +3221,10 @@ void QDockAreaLayout::apply(bool animate)
widgetAnimator.animate(centralWidgetItem->widget(), centralWidgetRect,
animate);
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (sep == 1)
updateSeparatorWidgets();
-#endif //QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
}
void QDockAreaLayout::paintSeparators(QPainter *p, QWidget *widget,
@@ -3317,7 +3315,7 @@ int QDockAreaLayoutInfo::separatorMove(const QList<int> &separator, const QPoint
return delta;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
// Sets the correct positions for the separator widgets
// Allocates new sepearator widgets with getSeparatorWidget
void QDockAreaLayout::updateSeparatorWidgets() const
@@ -3351,7 +3349,7 @@ void QDockAreaLayout::updateSeparatorWidgets() const
separatorWidgets.resize(j);
}
-#endif //QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
QLayoutItem *QDockAreaLayout::itemAt(int *x, int index) const
{
@@ -3394,7 +3392,7 @@ void QDockAreaLayout::deleteAllLayoutItems()
docks[i].deleteAllLayoutItems();
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QSet<QTabBar*> QDockAreaLayout::usedTabBars() const
{
QSet<QTabBar*> result;
@@ -3450,5 +3448,3 @@ void QDockAreaLayout::styleChangedEvent()
}
QT_END_NAMESPACE
-
-#endif // QT_NO_DOCKWIDGET
diff --git a/src/widgets/widgets/qdockarealayout_p.h b/src/widgets/widgets/qdockarealayout_p.h
index e4cdc9f296..49bd157179 100644
--- a/src/widgets/widgets/qdockarealayout_p.h
+++ b/src/widgets/widgets/qdockarealayout_p.h
@@ -58,7 +58,7 @@
#include "QtCore/qvector.h"
#include "QtWidgets/qlayout.h"
-#ifndef QT_NO_DOCKWIDGET
+QT_REQUIRE_CONFIG(dockwidget);
QT_BEGIN_NAMESPACE
@@ -197,12 +197,10 @@ public:
QRect rect;
QMainWindow *mainWindow;
QList<QDockAreaLayoutItem> item_list;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
void updateSeparatorWidgets() const;
QSet<QWidget*> usedSeparatorWidgets() const;
-#endif //QT_NO_TABBAR
-#ifndef QT_NO_TABBAR
quintptr currentTabId() const;
void setCurrentTab(QWidget *widget);
void setCurrentTabId(quintptr id);
@@ -221,7 +219,7 @@ public:
int tabIndexToListIndex(int) const;
void moveTab(int from, int to);
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
};
class Q_AUTOTEST_EXPORT QDockAreaLayout
@@ -286,9 +284,9 @@ public:
const QPoint &mouse) const;
QRegion separatorRegion() const;
int separatorMove(const QList<int> &separator, const QPoint &origin, const QPoint &dest);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
void updateSeparatorWidgets() const;
-#endif //QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
QLayoutItem *itemAt(int *x, int index) const;
QLayoutItem *takeAt(int *x, int index);
@@ -302,15 +300,13 @@ public:
QRect gapRect(const QList<int> &path) const;
void keepSize(QDockWidget *w);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QSet<QTabBar*> usedTabBars() const;
QSet<QWidget*> usedSeparatorWidgets() const;
-#endif //QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
void styleChangedEvent();
};
QT_END_NAMESPACE
-#endif // QT_NO_QDOCKWIDGET
-
#endif // QDOCKAREALAYOUT_P_H
diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp
index 15f79638c8..36d7ab3421 100644
--- a/src/widgets/widgets/qdockwidget.cpp
+++ b/src/widgets/widgets/qdockwidget.cpp
@@ -39,7 +39,6 @@
#include "qdockwidget.h"
-#ifndef QT_NO_DOCKWIDGET
#include <qaction.h>
#include <qapplication.h>
#include <qdesktopwidget.h>
@@ -1392,14 +1391,14 @@ void QDockWidget::changeEvent(QEvent *event)
d->fixedWindowTitle = qt_setWindowTitle_helperHelper(windowTitle(), this);
d->toggleViewAction->setText(d->fixedWindowTitle);
#endif
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
{
if (QMainWindowLayout *winLayout = qt_mainwindow_layout_from_dock(this)) {
if (QDockAreaLayoutInfo *info = winLayout->layoutState.dockAreaLayout.info(this))
info->updateTabBar();
}
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
break;
default:
break;
@@ -1689,5 +1688,3 @@ QT_END_NAMESPACE
#include "qdockwidget.moc"
#include "moc_qdockwidget.cpp"
#include "moc_qdockwidget_p.cpp"
-
-#endif // QT_NO_DOCKWIDGET
diff --git a/src/widgets/widgets/qdockwidget.h b/src/widgets/widgets/qdockwidget.h
index 80df009007..b53fa19a03 100644
--- a/src/widgets/widgets/qdockwidget.h
+++ b/src/widgets/widgets/qdockwidget.h
@@ -43,10 +43,9 @@
#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qwidget.h>
-QT_BEGIN_NAMESPACE
-
+QT_REQUIRE_CONFIG(dockwidget);
-#ifndef QT_NO_DOCKWIDGET
+QT_BEGIN_NAMESPACE
class QDockAreaLayout;
class QDockWidgetPrivate;
@@ -134,8 +133,6 @@ private:
Q_DECLARE_OPERATORS_FOR_FLAGS(QDockWidget::DockWidgetFeatures)
-#endif // QT_NO_DOCKWIDGET
-
QT_END_NAMESPACE
#endif // QDYNAMICDOCKWIDGET_H
diff --git a/src/widgets/widgets/qdockwidget_p.h b/src/widgets/widgets/qdockwidget_p.h
index 2d62cf5acd..2c16176c37 100644
--- a/src/widgets/widgets/qdockwidget_p.h
+++ b/src/widgets/widgets/qdockwidget_p.h
@@ -57,7 +57,7 @@
#include "QtWidgets/qboxlayout.h"
#include "QtWidgets/qdockwidget.h"
-#ifndef QT_NO_DOCKWIDGET
+QT_REQUIRE_CONFIG(dockwidget);
QT_BEGIN_NAMESPACE
@@ -204,6 +204,4 @@ inline QDockWidgetLayout *QDockWidgetItem::dockWidgetLayout() const
QT_END_NAMESPACE
-#endif // QT_NO_DOCKWIDGET
-
#endif // QDYNAMICDOCKWIDGET_P_H
diff --git a/src/widgets/widgets/qlineedit.cpp b/src/widgets/widgets/qlineedit.cpp
index f859ec0ddb..f57fa4fd85 100644
--- a/src/widgets/widgets/qlineedit.cpp
+++ b/src/widgets/widgets/qlineedit.cpp
@@ -68,7 +68,9 @@
#ifndef QT_NO_ACCESSIBILITY
#include "qaccessible.h"
#endif
+#if QT_CONFIG(itemviews)
#include "qabstractitemview.h"
+#endif
#include "private/qstylesheetstyle_p.h"
#ifndef QT_NO_SHORTCUT
diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp
index e1c7a4e280..83dab9e110 100644
--- a/src/widgets/widgets/qlineedit_p.cpp
+++ b/src/widgets/widgets/qlineedit_p.cpp
@@ -43,7 +43,9 @@
#ifndef QT_NO_LINEEDIT
#include "qvariant.h"
+#if QT_CONFIG(itemviews)
#include "qabstractitemview.h"
+#endif
#include "qdrag.h"
#include "qwidgetaction.h"
#include "qclipboard.h"
diff --git a/src/widgets/widgets/qmainwindow.cpp b/src/widgets/widgets/qmainwindow.cpp
index 889082cb2a..694a36ed5b 100644
--- a/src/widgets/widgets/qmainwindow.cpp
+++ b/src/widgets/widgets/qmainwindow.cpp
@@ -44,7 +44,9 @@
#ifndef QT_NO_MAINWINDOW
+#if QT_CONFIG(dockwidget)
#include "qdockwidget.h"
+#endif
#include "qtoolbar.h"
#include <qapplication.h>
@@ -348,7 +350,7 @@ void QMainWindowPrivate::init()
\sa setToolButtonStyle()
*/
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
/*!
\fn void QMainWindow::tabifiedDockWidgetActivated(QDockWidget *dockWidget)
@@ -660,7 +662,7 @@ QWidget *QMainWindow::takeCentralWidget()
return oldcentralwidget;
}
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
/*!
Sets the given dock widget \a area to occupy the specified \a
corner.
@@ -766,12 +768,12 @@ void QMainWindow::addToolBar(Qt::ToolBarArea area, QToolBar *toolbar)
if(toolbar->d_func()->state && toolbar->d_func()->state->dragging) {
//removing a toolbar which is dragging will cause crash
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
bool animated = isAnimated();
setAnimated(false);
#endif
toolbar->d_func()->endDrag();
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
setAnimated(animated);
#endif
}
@@ -870,7 +872,7 @@ bool QMainWindow::toolBarBreak(QToolBar *toolbar) const
#endif // QT_NO_TOOLBAR
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
/*! \property QMainWindow::animated
\brief whether manipulating dock widgets and tool bars is animated
@@ -984,7 +986,7 @@ static bool checkDockWidgetArea(Qt::DockWidgetArea area, const char *where)
return false;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
/*!
\property QMainWindow::documentMode
\brief whether the tab bar for tabbed dockwidgets is set to document mode.
@@ -1003,9 +1005,9 @@ void QMainWindow::setDocumentMode(bool enabled)
{
d_func()->layout->setDocumentMode(enabled);
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
/*!
\property QMainWindow::tabShape
\brief the tab shape used for tabbed dock widgets.
@@ -1057,7 +1059,7 @@ void QMainWindow::setTabPosition(Qt::DockWidgetAreas areas, QTabWidget::TabPosit
{
d_func()->layout->setTabPosition(areas, tabPosition);
}
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
/*!
Adds the given \a dockwidget to the specified \a area.
@@ -1160,7 +1162,7 @@ void QMainWindow::tabifyDockWidget(QDockWidget *first, QDockWidget *second)
QList<QDockWidget*> QMainWindow::tabifiedDockWidgets(QDockWidget *dockwidget) const
{
QList<QDockWidget*> ret;
-#if defined(QT_NO_TABBAR)
+#if !QT_CONFIG(tabbar)
Q_UNUSED(dockwidget);
#else
const QDockAreaLayoutInfo *info = d_func()->layout->layoutState.dockAreaLayout.info(dockwidget);
@@ -1232,7 +1234,7 @@ void QMainWindow::resizeDocks(const QList<QDockWidget *> &docks,
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
/*!
Saves the current state of this mainwindow's toolbars and
@@ -1323,7 +1325,7 @@ bool QMainWindow::event(QEvent *event)
#endif // QT_CONFIG(statustip)
case QEvent::StyleChange:
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
d->layout->layoutState.dockAreaLayout.styleChangedEvent();
#endif
if (!d->explicitIconSize)
@@ -1388,7 +1390,7 @@ bool QMainWindow::unifiedTitleAndToolBarOnMac() const
*/
bool QMainWindow::isSeparator(const QPoint &pos) const
{
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
Q_D(const QMainWindow);
return !d->layout->layoutState.dockAreaLayout.findSeparator(pos).isEmpty();
#else
@@ -1415,7 +1417,7 @@ void QMainWindow::contextMenuEvent(QContextMenuEvent *event)
break;
}
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (QDockWidget *dw = qobject_cast<QDockWidget *>(child)) {
if (dw->parentWidget() != this)
return;
@@ -1426,7 +1428,7 @@ void QMainWindow::contextMenuEvent(QContextMenuEvent *event)
}
break;
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
#ifndef QT_NO_TOOLBAR
if (QToolBar *tb = qobject_cast<QToolBar *>(child)) {
if (tb->parentWidget() != this)
@@ -1474,7 +1476,7 @@ QMenu *QMainWindow::createPopupMenu()
{
Q_D(QMainWindow);
QMenu *menu = 0;
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
QList<QDockWidget *> dockwidgets = findChildren<QDockWidget *>();
if (dockwidgets.size()) {
menu = new QMenu(this);
@@ -1497,7 +1499,7 @@ QMenu *QMainWindow::createPopupMenu()
}
menu->addSeparator();
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
#ifndef QT_NO_TOOLBAR
QList<QToolBar *> toolbars = findChildren<QToolBar *>();
if (toolbars.size()) {
diff --git a/src/widgets/widgets/qmainwindow.h b/src/widgets/widgets/qmainwindow.h
index bab1176d8a..aa26d4c23b 100644
--- a/src/widgets/widgets/qmainwindow.h
+++ b/src/widgets/widgets/qmainwindow.h
@@ -42,7 +42,9 @@
#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qwidget.h>
+#if QT_CONFIG(tabwidget)
#include <QtWidgets/qtabwidget.h>
+#endif
QT_BEGIN_NAMESPACE
@@ -62,16 +64,16 @@ class Q_WIDGETS_EXPORT QMainWindow : public QWidget
Q_PROPERTY(QSize iconSize READ iconSize WRITE setIconSize)
Q_PROPERTY(Qt::ToolButtonStyle toolButtonStyle READ toolButtonStyle WRITE setToolButtonStyle)
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
Q_PROPERTY(bool animated READ isAnimated WRITE setAnimated)
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
Q_PROPERTY(bool documentMode READ documentMode WRITE setDocumentMode)
-#endif // QT_NO_TABBAR
-#ifndef QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabbar)
+#if QT_CONFIG(tabwidget)
Q_PROPERTY(QTabWidget::TabShape tabShape READ tabShape WRITE setTabShape)
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
Q_PROPERTY(bool dockNestingEnabled READ isDockNestingEnabled WRITE setDockNestingEnabled)
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
Q_PROPERTY(DockOptions dockOptions READ dockOptions WRITE setDockOptions)
#ifndef QT_NO_TOOLBAR
Q_PROPERTY(bool unifiedTitleAndToolBarOnMac READ unifiedTitleAndToolBarOnMac WRITE setUnifiedTitleAndToolBarOnMac)
@@ -99,22 +101,22 @@ public:
Qt::ToolButtonStyle toolButtonStyle() const;
void setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle);
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
bool isAnimated() const;
bool isDockNestingEnabled() const;
#endif
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
bool documentMode() const;
void setDocumentMode(bool enabled);
#endif
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
QTabWidget::TabShape tabShape() const;
void setTabShape(QTabWidget::TabShape tabShape);
QTabWidget::TabPosition tabPosition(Qt::DockWidgetArea area) const;
void setTabPosition(Qt::DockWidgetAreas areas, QTabWidget::TabPosition tabPosition);
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
void setDockOptions(DockOptions options);
DockOptions dockOptions() const;
@@ -139,7 +141,7 @@ public:
QWidget *takeCentralWidget();
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
void setCorner(Qt::Corner corner, Qt::DockWidgetArea area);
Qt::DockWidgetArea corner(Qt::Corner corner) const;
#endif
@@ -160,7 +162,7 @@ public:
Qt::ToolBarArea toolBarArea(QToolBar *toolbar) const;
bool toolBarBreak(QToolBar *toolbar) const;
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
void addDockWidget(Qt::DockWidgetArea area, QDockWidget *dockwidget);
void addDockWidget(Qt::DockWidgetArea area, QDockWidget *dockwidget,
Qt::Orientation orientation);
@@ -175,7 +177,7 @@ public:
void resizeDocks(const QList<QDockWidget *> &docks,
const QList<int> &sizes, Qt::Orientation orientation);
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
QByteArray saveState(int version = 0) const;
bool restoreState(const QByteArray &state, int version = 0);
@@ -185,7 +187,7 @@ public:
#endif
public Q_SLOTS:
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
void setAnimated(bool enabled);
void setDockNestingEnabled(bool enabled);
#endif
@@ -196,7 +198,7 @@ public Q_SLOTS:
Q_SIGNALS:
void iconSizeChanged(const QSize &iconSize);
void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle);
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
void tabifiedDockWidgetActivated(QDockWidget *dockWidget);
#endif
diff --git a/src/widgets/widgets/qmainwindowlayout.cpp b/src/widgets/widgets/qmainwindowlayout.cpp
index e48ce301fb..2c1c2ab75c 100644
--- a/src/widgets/widgets/qmainwindowlayout.cpp
+++ b/src/widgets/widgets/qmainwindowlayout.cpp
@@ -39,11 +39,13 @@
****************************************************************************/
#include "qmainwindowlayout_p.h"
-#include "qdockarealayout_p.h"
#ifndef QT_NO_MAINWINDOW
+#if QT_CONFIG(dockwidget)
+#include "qdockarealayout_p.h"
#include "qdockwidget.h"
#include "qdockwidget_p.h"
+#endif
#include "qtoolbar_p.h"
#include "qmainwindow.h"
#include "qtoolbar.h"
@@ -52,7 +54,9 @@
#if QT_CONFIG(rubberband)
#include "qrubberband.h"
#endif
+#if QT_CONFIG(tabbar)
#include "qtabbar_p.h"
+#endif
#include <qapplication.h>
#include <qstatusbar.h>
@@ -81,7 +85,7 @@ extern QMainWindowLayout *qt_mainwindow_layout(const QMainWindow *window);
** debug
*/
-#if !defined(QT_NO_DOCKWIDGET) && !defined(QT_NO_DEBUG_STREAM)
+#if QT_CONFIG(dockwidget) && !defined(QT_NO_DEBUG_STREAM)
static void dumpLayout(QTextStream &qout, const QDockAreaLayoutInfo &layout, QString indent);
@@ -170,7 +174,7 @@ QDebug operator<<(QDebug debug, const QMainWindowLayout *layout)
return debug;
}
-#endif // !defined(QT_NO_DOCKWIDGET) && !defined(QT_NO_DEBUG)
+#endif // QT_CONFIG(dockwidget) && !defined(QT_NO_DEBUG)
/******************************************************************************
** QDockWidgetGroupWindow
@@ -182,7 +186,7 @@ QDebug operator<<(QDebug debug, const QMainWindowLayout *layout)
// If there is only one QDockWidgets, or all QDockWidgets are tabbed together, it is equivalent
// of a floating QDockWidget (the title of the QDockWidget is the title of the window). But if there
// are nested QDockWidget, an additional title bar is there.
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
class QDockWidgetGroupLayout : public QLayout,
public QMainWindowLayoutSeparatorHelper<QDockWidgetGroupLayout>
{
@@ -590,7 +594,7 @@ QMainWindowLayoutState::QMainWindowLayoutState(QMainWindow *win)
#ifndef QT_NO_TOOLBAR
toolBarAreaLayout(win),
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
dockAreaLayout(win)
#else
centralWidgetItem(0)
@@ -605,7 +609,7 @@ QSize QMainWindowLayoutState::sizeHint() const
QSize result(0, 0);
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
result = dockAreaLayout.sizeHint();
#else
if (centralWidgetItem != 0)
@@ -623,7 +627,7 @@ QSize QMainWindowLayoutState::minimumSize() const
{
QSize result(0, 0);
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
result = dockAreaLayout.minimumSize();
#else
if (centralWidgetItem != 0)
@@ -643,7 +647,7 @@ void QMainWindowLayoutState::apply(bool animated)
toolBarAreaLayout.apply(animated);
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
// dumpLayout(dockAreaLayout, QString());
dockAreaLayout.apply(animated);
#else
@@ -665,7 +669,7 @@ void QMainWindowLayoutState::fitLayout()
r = toolBarAreaLayout.fitLayout();
#endif // QT_NO_TOOLBAR
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
dockAreaLayout.rect = r;
dockAreaLayout.fitLayout();
#else
@@ -679,14 +683,14 @@ void QMainWindowLayoutState::deleteAllLayoutItems()
toolBarAreaLayout.deleteAllLayoutItems();
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
dockAreaLayout.deleteAllLayoutItems();
#endif
}
void QMainWindowLayoutState::deleteCentralWidgetItem()
{
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
delete dockAreaLayout.centralWidgetItem;
dockAreaLayout.centralWidgetItem = 0;
#else
@@ -702,7 +706,7 @@ QLayoutItem *QMainWindowLayoutState::itemAt(int index, int *x) const
return ret;
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (QLayoutItem *ret = dockAreaLayout.itemAt(x, index))
return ret;
#else
@@ -720,7 +724,7 @@ QLayoutItem *QMainWindowLayoutState::takeAt(int index, int *x)
return ret;
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (QLayoutItem *ret = dockAreaLayout.takeAt(x, index))
return ret;
#else
@@ -748,7 +752,7 @@ QList<int> QMainWindowLayoutState::indexOf(QWidget *widget) const
}
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
// is it a dock widget?
if (qobject_cast<QDockWidget *>(widget) || qobject_cast<QDockWidgetGroupWindow *>(widget)) {
result = dockAreaLayout.indexOf(widget);
@@ -756,14 +760,14 @@ QList<int> QMainWindowLayoutState::indexOf(QWidget *widget) const
result.prepend(1);
return result;
}
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return result;
}
bool QMainWindowLayoutState::contains(QWidget *widget) const
{
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (dockAreaLayout.centralWidgetItem != 0 && dockAreaLayout.centralWidgetItem->widget() == widget)
return true;
if (!dockAreaLayout.indexOf(widget).isEmpty())
@@ -789,7 +793,7 @@ void QMainWindowLayoutState::setCentralWidget(QWidget *widget)
if (widget != 0)
item = new QWidgetItemV2(widget);
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
dockAreaLayout.centralWidgetItem = item;
#else
centralWidgetItem = item;
@@ -800,7 +804,7 @@ QWidget *QMainWindowLayoutState::centralWidget() const
{
QLayoutItem *item = 0;
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
item = dockAreaLayout.centralWidgetItem;
#else
item = centralWidgetItem;
@@ -826,7 +830,7 @@ QList<int> QMainWindowLayoutState::gapIndex(QWidget *widget,
}
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
// is it a dock widget?
if (qobject_cast<QDockWidget *>(widget) != 0
|| qobject_cast<QDockWidgetGroupWindow *>(widget)) {
@@ -842,7 +846,7 @@ QList<int> QMainWindowLayoutState::gapIndex(QWidget *widget,
result.prepend(1);
return result;
}
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return result;
}
@@ -861,12 +865,12 @@ bool QMainWindowLayoutState::insertGap(const QList<int> &path, QLayoutItem *item
}
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1) {
Q_ASSERT(qobject_cast<QDockWidget*>(item->widget()) || qobject_cast<QDockWidgetGroupWindow*>(item->widget()));
return dockAreaLayout.insertGap(path.mid(1), item);
}
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return false;
}
@@ -880,10 +884,10 @@ void QMainWindowLayoutState::remove(const QList<int> &path)
toolBarAreaLayout.remove(path.mid(1));
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1)
dockAreaLayout.remove(path.mid(1));
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
}
void QMainWindowLayoutState::remove(QLayoutItem *item)
@@ -892,14 +896,14 @@ void QMainWindowLayoutState::remove(QLayoutItem *item)
toolBarAreaLayout.remove(item);
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
// is it a dock widget?
if (QDockWidget *dockWidget = qobject_cast<QDockWidget *>(item->widget())) {
QList<int> path = dockAreaLayout.indexOf(dockWidget);
if (!path.isEmpty())
dockAreaLayout.remove(path);
}
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
}
void QMainWindowLayoutState::clear()
@@ -908,7 +912,7 @@ void QMainWindowLayoutState::clear()
toolBarAreaLayout.clear();
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
dockAreaLayout.clear();
#else
centralWidgetRect = QRect();
@@ -934,10 +938,10 @@ QLayoutItem *QMainWindowLayoutState::item(const QList<int> &path)
}
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1)
return dockAreaLayout.item(path.mid(1)).widgetItem;
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return 0;
}
@@ -951,10 +955,10 @@ QRect QMainWindowLayoutState::itemRect(const QList<int> &path) const
return toolBarAreaLayout.itemRect(path.mid(1));
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1)
return dockAreaLayout.itemRect(path.mid(1));
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return QRect();
}
@@ -968,10 +972,10 @@ QRect QMainWindowLayoutState::gapRect(const QList<int> &path) const
return toolBarAreaLayout.itemRect(path.mid(1));
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1)
return dockAreaLayout.gapRect(path.mid(1));
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return QRect();
}
@@ -985,10 +989,10 @@ QLayoutItem *QMainWindowLayoutState::plug(const QList<int> &path)
return toolBarAreaLayout.plug(path.mid(1));
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1)
return dockAreaLayout.plug(path.mid(1));
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return 0;
}
@@ -1004,19 +1008,19 @@ QLayoutItem *QMainWindowLayoutState::unplug(const QList<int> &path, QMainWindowL
return toolBarAreaLayout.unplug(path.mid(1), other ? &other->toolBarAreaLayout : 0);
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (i == 1)
return dockAreaLayout.unplug(path.mid(1));
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return 0;
}
void QMainWindowLayoutState::saveState(QDataStream &stream) const
{
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
dockAreaLayout.saveState(stream);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QList<QDockWidgetGroupWindow *> floatingTabs =
mainWindow->findChildren<QDockWidgetGroupWindow *>(QString(), Qt::FindDirectChildrenOnly);
@@ -1048,7 +1052,7 @@ static QList<T> findChildrenHelper(const QObject *o)
return result;
}
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
static QList<QDockWidget*> allMyDockWidgets(const QWidget *mainWindow)
{
QList<QDockWidget*> result;
@@ -1065,7 +1069,7 @@ static QList<QDockWidget*> allMyDockWidgets(const QWidget *mainWindow)
return result;
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
//pre4.3 tests the format that was used before 4.3
bool QMainWindowLayoutState::checkFormat(QDataStream &stream)
@@ -1087,7 +1091,7 @@ bool QMainWindowLayoutState::checkFormat(QDataStream &stream)
break;
#endif // QT_NO_TOOLBAR
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
case QDockAreaLayout::DockWidgetStateMarker:
{
const auto dockWidgets = allMyDockWidgets(mainWindow);
@@ -1096,7 +1100,7 @@ bool QMainWindowLayoutState::checkFormat(QDataStream &stream)
}
}
break;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
case QDockAreaLayout::FloatingDockWidgetTabMarker:
{
QRect geom;
@@ -1107,8 +1111,8 @@ bool QMainWindowLayoutState::checkFormat(QDataStream &stream)
return false;
}
break;
-#endif // QT_NO_TABBAR
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(tabbar)
+#endif // QT_CONFIG(dockwidget)
default:
//there was an error during the parsing
return false;
@@ -1143,7 +1147,7 @@ bool QMainWindowLayoutState::restoreState(QDataStream &_stream,
stream >> marker;
switch(marker)
{
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
case QDockAreaLayout::DockWidgetStateMarker:
{
const auto dockWidgets = allMyDockWidgets(mainWindow);
@@ -1192,7 +1196,7 @@ bool QMainWindowLayoutState::restoreState(QDataStream &_stream,
}
break;
#endif // QT_CONFIG(tabwidget)
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
#ifndef QT_NO_TOOLBAR
case QToolBarAreaLayout::ToolBarStateMarker:
@@ -1410,7 +1414,7 @@ void QMainWindowLayout::toggleToolBarsVisible()
** QMainWindowLayoutState - dock areas
*/
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
static QInternal::DockPosition toDockPos(Qt::DockWidgetArea area)
{
@@ -1494,7 +1498,7 @@ bool QMainWindowLayout::restoreDockWidget(QDockWidget *dockwidget)
return true;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
bool QMainWindowLayout::documentMode() const
{
return _documentMode;
@@ -1513,11 +1517,11 @@ void QMainWindowLayout::setDocumentMode(bool enabled)
foreach (QTabBar *bar, unusedTabBars)
bar->setDocumentMode(_documentMode);
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
void QMainWindowLayout::setVerticalTabsEnabled(bool enabled)
{
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
Q_UNUSED(enabled);
#else
if (verticalTabsEnabled == enabled)
@@ -1526,10 +1530,10 @@ void QMainWindowLayout::setVerticalTabsEnabled(bool enabled)
verticalTabsEnabled = enabled;
updateTabBarShapes();
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
}
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
QTabWidget::TabShape QMainWindowLayout::tabShape() const
{
return _tabShape;
@@ -1585,12 +1589,12 @@ static inline QTabBar::Shape tabBarShapeFrom(QTabWidget::TabShape shape, QTabWid
return rounded ? QTabBar::RoundedWest : QTabBar::TriangularWest;
return QTabBar::RoundedNorth;
}
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
void QMainWindowLayout::updateTabBarShapes()
{
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
const QTabWidget::TabPosition vertical[] = {
QTabWidget::West,
QTabWidget::East,
@@ -1609,7 +1613,7 @@ void QMainWindowLayout::updateTabBarShapes()
QDockAreaLayout &layout = layoutState.dockAreaLayout;
for (int i = 0; i < QInternal::DockCount; ++i) {
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
QTabWidget::TabPosition pos = verticalTabsEnabled ? vertical[i] : tabPositions[i];
QTabBar::Shape shape = tabBarShapeFrom(_tabShape, pos);
#else
@@ -1618,7 +1622,7 @@ void QMainWindowLayout::updateTabBarShapes()
layout.docks[i].setTabBarShape(shape);
}
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
void QMainWindowLayout::splitDockWidget(QDockWidget *after,
QDockWidget *dockwidget,
@@ -1643,7 +1647,7 @@ void QMainWindowLayout::keepSize(QDockWidget *w)
layoutState.dockAreaLayout.keepSize(w);
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
// Handle custom tooltip, and allow to drag tabs away.
class QMainWindowTabBar : public QTabBar
@@ -1828,11 +1832,11 @@ void QMainWindowLayout::tabMoved(int from, int to)
info->moveTab(from, to);
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
void QMainWindowLayout::raise(QDockWidget *widget)
{
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QDockAreaLayoutInfo *info = dockInfo(widget);
if (info == 0)
return;
@@ -1842,7 +1846,7 @@ void QMainWindowLayout::raise(QDockWidget *widget)
#endif
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
/******************************************************************************
@@ -1964,7 +1968,7 @@ void QMainWindowLayout::invalidate()
minSize = szHint = QSize();
}
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
void QMainWindowLayout::setCurrentHoveredFloat(QDockWidgetGroupWindow *w)
{
if (currentHoveredFloat != w) {
@@ -1987,7 +1991,7 @@ void QMainWindowLayout::setCurrentHoveredFloat(QDockWidgetGroupWindow *w)
updateGapIndicator();
}
}
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
/******************************************************************************
** QMainWindowLayout - remaining stuff
@@ -2080,7 +2084,7 @@ bool QMainWindowLayout::plug(QLayoutItem *widgetItem)
QWidget *widget = widgetItem->widget();
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
// Let's remove the widget from any possible group window
foreach (QDockWidgetGroupWindow *dwgw,
parent()->findChildren<QDockWidgetGroupWindow*>(QString(), Qt::FindDirectChildrenOnly)) {
@@ -2102,7 +2106,7 @@ bool QMainWindowLayout::plug(QLayoutItem *widgetItem)
pluggingWidget = widget;
QRect globalRect = currentGapRect;
globalRect.moveTopLeft(parentWidget()->mapToGlobal(globalRect.topLeft()));
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (qobject_cast<QDockWidget*>(widget) != 0) {
QDockWidgetLayout *layout = qobject_cast<QDockWidgetLayout*>(widget->layout());
if (layout->nativeWindowDeco()) {
@@ -2136,7 +2140,7 @@ void QMainWindowLayout::animationFinished(QWidget *widget)
if (widget == pluggingWidget) {
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
#if QT_CONFIG(tabbar)
if (QDockWidgetGroupWindow *dwgw = qobject_cast<QDockWidgetGroupWindow *>(widget)) {
// When the animated widget was a QDockWidgetGroupWindow, it means each of the
@@ -2208,8 +2212,8 @@ void QMainWindowLayout::animationFinished(QWidget *widget)
//and all the geometries (especially the one from the central widget) is correct
layoutState.apply(false);
-#ifndef QT_NO_DOCKWIDGET
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(dockwidget)
+#if QT_CONFIG(tabbar)
if (qobject_cast<QDockWidget*>(widget) != 0) {
// info() might return null if the widget is destroyed while
// animating but before the animationFinished signal is received.
@@ -2222,13 +2226,13 @@ void QMainWindowLayout::animationFinished(QWidget *widget)
if (!widgetAnimator.animating()) {
//all animations are finished
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
parentWidget()->update(layoutState.dockAreaLayout.separatorRegion());
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
foreach (QTabBar *tab_bar, usedTabBars)
tab_bar->show();
-#endif // QT_NO_TABBAR
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(tabbar)
+#endif // QT_CONFIG(dockwidget)
}
updateGapIndicator();
@@ -2254,31 +2258,31 @@ QMainWindowLayout::QMainWindowLayout(QMainWindow *mainwindow, QLayout *parentLay
, savedState(mainwindow)
, dockOptions(QMainWindow::AnimatedDocks | QMainWindow::AllowTabbedDocks)
, statusbar(0)
-#ifndef QT_NO_DOCKWIDGET
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(dockwidget)
+#if QT_CONFIG(tabbar)
, _documentMode(false)
, verticalTabsEnabled(false)
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
, _tabShape(QTabWidget::Rounded)
#endif
#endif
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
, widgetAnimator(this)
, pluggingWidget(0)
{
if (parentLayout)
setParent(parentLayout);
-#ifndef QT_NO_DOCKWIDGET
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(dockwidget)
+#if QT_CONFIG(tabbar)
sep = mainwindow->style()->pixelMetric(QStyle::PM_DockWidgetSeparatorExtent, 0, mainwindow);
#endif
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
for (int i = 0; i < QInternal::DockCount; ++i)
tabPositions[i] = QTabWidget::South;
#endif
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
pluggingWidget = 0;
setObjectName(mainwindow->objectName() + QLatin1String("_layout"));
@@ -2299,7 +2303,7 @@ void QMainWindowLayout::setDockOptions(QMainWindow::DockOptions opts)
dockOptions = opts;
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
setVerticalTabsEnabled(opts & QMainWindow::VerticalTabs);
#endif
@@ -2331,7 +2335,7 @@ void QMainWindowLayout::setCentralWidget(QWidget *widget)
addChildWidget(widget);
layoutState.setCentralWidget(widget);
if (savedState.isValid()) {
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
savedState.dockAreaLayout.centralWidgetItem = layoutState.dockAreaLayout.centralWidgetItem;
savedState.dockAreaLayout.fallbackToSizeHints = true;
#else
@@ -2383,7 +2387,7 @@ static bool unplugGroup(QMainWindowLayout *layout, QLayoutItem **item,
*/
QLayoutItem *QMainWindowLayout::unplug(QWidget *widget, bool group)
{
-#if !defined(QT_NO_DOCKWIDGET) && !defined(QT_NO_TABBAR)
+#if QT_CONFIG(dockwidget) && QT_CONFIG(tabbar)
auto *groupWindow = qobject_cast<const QDockWidgetGroupWindow *>(widget->parentWidget());
if (!widget->isWindow() && groupWindow) {
if (group && groupWindow->tabLayoutInfo()) {
@@ -2423,7 +2427,7 @@ QLayoutItem *QMainWindowLayout::unplug(QWidget *widget, bool group)
QRect r = layoutState.itemRect(path);
savedState = layoutState;
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (QDockWidget *dw = qobject_cast<QDockWidget*>(widget)) {
Q_ASSERT(path.constFirst() == 1);
#if QT_CONFIG(tabwidget)
@@ -2438,7 +2442,7 @@ QLayoutItem *QMainWindowLayout::unplug(QWidget *widget, bool group)
dw->d_func()->unplug(r);
}
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
#ifndef QT_NO_TOOLBAR
if (QToolBar *tb = qobject_cast<QToolBar*>(widget)) {
tb->d_func()->unplug(r);
@@ -2503,7 +2507,7 @@ void QMainWindowLayout::hover(QLayoutItem *widgetItem, const QPoint &mousePos)
QWidget *widget = widgetItem->widget();
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if ((dockOptions & QMainWindow::GroupedDragging) && (qobject_cast<QDockWidget*>(widget)
|| qobject_cast<QDockWidgetGroupWindow *>(widget))) {
@@ -2565,7 +2569,7 @@ void QMainWindowLayout::hover(QLayoutItem *widgetItem, const QPoint &mousePos)
}
setCurrentHoveredFloat(nullptr);
layoutState.dockAreaLayout.fallbackToSizeHints = false;
-#endif //QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
QPoint pos = parentWidget()->mapFromGlobal(mousePos);
@@ -2577,7 +2581,7 @@ void QMainWindowLayout::hover(QLayoutItem *widgetItem, const QPoint &mousePos)
if (!path.isEmpty()) {
bool allowed = false;
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (QDockWidget *dw = qobject_cast<QDockWidget*>(widget))
allowed = dw->isAreaAllowed(toDockWidgetArea(path.at(1)));
@@ -2624,7 +2628,7 @@ void QMainWindowLayout::hover(QLayoutItem *widgetItem, const QPoint &mousePos)
currentGapRect = newState.gapRect(currentGapPos);
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
parentWidget()->update(layoutState.dockAreaLayout.separatorRegion());
#endif
layoutState = std::move(newState);
@@ -2703,15 +2707,15 @@ bool QMainWindowLayout::restoreState(QDataStream &stream)
savedState.deleteAllLayoutItems();
savedState.clear();
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
if (parentWidget()->isVisible()) {
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
foreach (QTabBar *tab_bar, usedTabBars)
tab_bar->show();
#endif
}
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
return true;
}
diff --git a/src/widgets/widgets/qmainwindowlayout_p.h b/src/widgets/widgets/qmainwindowlayout_p.h
index 6b75ef1caf..948d6edeef 100644
--- a/src/widgets/widgets/qmainwindowlayout_p.h
+++ b/src/widgets/widgets/qmainwindowlayout_p.h
@@ -57,16 +57,20 @@
#ifndef QT_NO_MAINWINDOW
#include "QtWidgets/qlayout.h"
+#if QT_CONFIG(tabbar)
#include "QtWidgets/qtabbar.h"
#include "QtGui/qpainter.h"
#include "QtGui/qevent.h"
+#endif
#include "QtCore/qvector.h"
#include "QtCore/qset.h"
#include "QtCore/qbasictimer.h"
#include "private/qlayoutengine_p.h"
#include "private/qwidgetanimator_p.h"
+#if QT_CONFIG(dockwidget)
#include "qdockarealayout_p.h"
+#endif
#include "qtoolbararealayout_p.h"
QT_BEGIN_NAMESPACE
@@ -319,7 +323,7 @@ bool QMainWindowLayoutSeparatorHelper<Layout>::endSeparatorMove(const QPoint &)
}
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
class QDockWidgetGroupWindow : public QWidget
{
Q_OBJECT
@@ -381,7 +385,7 @@ public:
QToolBarAreaLayout toolBarAreaLayout;
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
QDockAreaLayout dockAreaLayout;
#else
QLayoutItem *centralWidgetItem;
@@ -471,7 +475,7 @@ public:
// dock widgets
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
void setCorner(Qt::Corner corner, Qt::DockWidgetArea area);
Qt::DockWidgetArea corner(Qt::Corner corner) const;
void addDockWidget(Qt::DockWidgetArea area,
@@ -486,7 +490,7 @@ public:
void setVerticalTabsEnabled(bool enabled);
bool restoreDockWidget(QDockWidget *dockwidget);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
QDockAreaLayoutInfo *dockInfo(QWidget *w);
bool _documentMode;
bool documentMode() const;
@@ -502,7 +506,7 @@ public:
QList<QWidget*> unusedSeparatorWidgets;
int sep; // separator extent
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
QTabWidget::TabPosition tabPositions[4];
QTabWidget::TabShape _tabShape;
@@ -512,12 +516,12 @@ public:
void setTabPosition(Qt::DockWidgetAreas areas, QTabWidget::TabPosition tabPosition);
QDockWidgetGroupWindow *createTabbedDockWindow();
-#endif // QT_NO_TABWIDGET
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabwidget)
+#endif // QT_CONFIG(tabbar)
QDockAreaLayout *dockAreaLayoutInfo() { return &layoutState.dockAreaLayout; }
void keepSize(QDockWidget *w);
-#endif // QT_NO_DOCKWIDGET
+#endif // QT_CONFIG(dockwidget)
// save/restore
@@ -550,7 +554,7 @@ public:
#if QT_CONFIG(rubberband)
QPointer<QRubberBand> gapIndicator;
#endif
-#ifndef QT_NO_DOCKWIDGET
+#if QT_CONFIG(dockwidget)
QPointer<QDockWidgetGroupWindow> currentHoveredFloat; // set when dragging over a floating dock widget
void setCurrentHoveredFloat(QDockWidgetGroupWindow *w);
#endif
@@ -566,19 +570,19 @@ public:
private Q_SLOTS:
void updateGapIndicator();
-#ifndef QT_NO_DOCKWIDGET
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(dockwidget)
+#if QT_CONFIG(tabbar)
void tabChanged();
void tabMoved(int from, int to);
#endif
#endif
private:
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
void updateTabBarShapes();
#endif
};
-#if !defined(QT_NO_DOCKWIDGET) && !defined(QT_NO_DEBUG_STREAM)
+#if QT_CONFIG(dockwidget) && !defined(QT_NO_DEBUG_STREAM)
class QDebug;
QDebug operator<<(QDebug debug, const QDockAreaLayout &layout);
QDebug operator<<(QDebug debug, const QMainWindowLayout *layout);
diff --git a/src/widgets/widgets/qmdiarea.cpp b/src/widgets/widgets/qmdiarea.cpp
index 83b5068bba..31d9ae21ae 100644
--- a/src/widgets/widgets/qmdiarea.cpp
+++ b/src/widgets/widgets/qmdiarea.cpp
@@ -254,7 +254,7 @@ static inline QMdiArea *mdiAreaParent(QWidget *widget)
return 0;
}
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
static inline QTabBar::Shape tabBarShapeFrom(QTabWidget::TabShape shape, QTabWidget::TabPosition position)
{
const bool rounded = (shape == QTabWidget::Rounded);
@@ -268,7 +268,7 @@ static inline QTabBar::Shape tabBarShapeFrom(QTabWidget::TabShape shape, QTabWid
return rounded ? QTabBar::RoundedWest : QTabBar::TriangularWest;
return QTabBar::RoundedNorth;
}
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
static inline QString tabTextFor(QMdiSubWindow *subWindow)
{
@@ -561,7 +561,7 @@ QPoint MinOverlapPlacer::place(const QSize &size, const QVector<QRect> &rects,
return findBestPlacement(domain, rects, candidates);
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
class QMdiAreaTabBar : public QTabBar
{
public:
@@ -659,7 +659,7 @@ QMdiSubWindow *QMdiAreaTabBar::subWindowFromIndex(int index) const
return subWindow;
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
/*!
\internal
@@ -672,17 +672,17 @@ QMdiAreaPrivate::QMdiAreaPrivate()
#if QT_CONFIG(rubberband)
rubberBand(0),
#endif
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
tabBar(0),
#endif
activationOrder(QMdiArea::CreationOrder),
viewMode(QMdiArea::SubWindowView),
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
documentMode(false),
tabsClosable(false),
tabsMovable(false),
#endif
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
tabShape(QTabWidget::Rounded),
tabPosition(QTabWidget::North),
#endif
@@ -777,7 +777,7 @@ void QMdiAreaPrivate::_q_processWindowStateChanged(Qt::WindowStates oldState,
void QMdiAreaPrivate::_q_currentTabChanged(int index)
{
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
Q_UNUSED(index);
#else
if (!tabBar || index < 0)
@@ -796,28 +796,28 @@ void QMdiAreaPrivate::_q_currentTabChanged(int index)
QMdiSubWindow *subWindow = childWindows.at(index);
Q_ASSERT(subWindow);
activateWindow(subWindow);
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
}
void QMdiAreaPrivate::_q_closeTab(int index)
{
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
Q_UNUSED(index);
#else
QMdiSubWindow *subWindow = childWindows.at(index);
Q_ASSERT(subWindow);
subWindow->close();
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
}
void QMdiAreaPrivate::_q_moveTab(int from, int to)
{
-#ifdef QT_NO_TABBAR
+#if !QT_CONFIG(tabbar)
Q_UNUSED(from);
Q_UNUSED(to);
#else
childWindows.move(from, to);
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
}
/*!
@@ -855,7 +855,7 @@ void QMdiAreaPrivate::appendChild(QMdiSubWindow *child)
indicesToActivatedChildren.prepend(childWindows.size() - 1);
Q_ASSERT(indicesToActivatedChildren.size() == childWindows.size());
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabBar) {
tabBar->addTab(child->windowIcon(), tabTextFor(child));
updateTabBarGeometry();
@@ -1079,7 +1079,7 @@ void QMdiAreaPrivate::emitWindowActivated(QMdiSubWindow *activeWindow)
aboutToBecomeActive = 0;
Q_ASSERT(active->d_func()->isActive);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabBar && tabBar->currentIndex() != indexToActiveWindow)
tabBar->setCurrentIndex(indexToActiveWindow);
#endif
@@ -1122,7 +1122,7 @@ void QMdiAreaPrivate::updateActiveWindow(int removedIndex, bool activeRemoved)
{
Q_ASSERT(indicesToActivatedChildren.size() == childWindows.size());
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (tabBar && removedIndex >= 0) {
const QSignalBlocker blocker(tabBar);
tabBar->removeTab(removedIndex);
@@ -1560,14 +1560,14 @@ void QMdiAreaPrivate::setViewMode(QMdiArea::ViewMode mode)
// Just a guard since we cannot set viewMode = mode here.
inViewModeChange = true;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (mode == QMdiArea::TabbedView) {
Q_ASSERT(!tabBar);
tabBar = new QMdiAreaTabBar(q);
tabBar->setDocumentMode(documentMode);
tabBar->setTabsClosable(tabsClosable);
tabBar->setMovable(tabsMovable);
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
tabBar->setShape(tabBarShapeFrom(tabShape, tabPosition));
#endif
@@ -1601,12 +1601,12 @@ void QMdiAreaPrivate::setViewMode(QMdiArea::ViewMode mode)
QObject::connect(tabBar, SIGNAL(tabCloseRequested(int)), q, SLOT(_q_closeTab(int)));
QObject::connect(tabBar, SIGNAL(tabMoved(int,int)), q, SLOT(_q_moveTab(int,int)));
} else
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
{ // SubWindowView
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
delete tabBar;
tabBar = 0;
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
viewMode = mode;
q->setViewportMargins(0, 0, 0, 0);
@@ -1621,7 +1621,7 @@ void QMdiAreaPrivate::setViewMode(QMdiArea::ViewMode mode)
inViewModeChange = false;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
/*!
\internal
*/
@@ -1631,7 +1631,7 @@ void QMdiAreaPrivate::updateTabBarGeometry()
return;
Q_Q(QMdiArea);
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
Q_ASSERT(tabBarShapeFrom(tabShape, tabPosition) == tabBar->shape());
#endif
const QSize tabBarSizeHint = tabBar->sizeHint();
@@ -1645,7 +1645,7 @@ void QMdiAreaPrivate::updateTabBarGeometry()
areaWidth -= vbar->width();
QRect tabBarRect;
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
switch (tabPosition) {
case QTabWidget::North:
q->setViewportMargins(0, tabBarSizeHint.height(), 0, 0);
@@ -1672,7 +1672,7 @@ void QMdiAreaPrivate::updateTabBarGeometry()
default:
break;
}
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
tabBar->setGeometry(QStyle::visualRect(q->layoutDirection(), q->contentsRect(), tabBarRect));
}
@@ -1688,12 +1688,12 @@ void QMdiAreaPrivate::refreshTabBar()
tabBar->setDocumentMode(documentMode);
tabBar->setTabsClosable(tabsClosable);
tabBar->setMovable(tabsMovable);
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
tabBar->setShape(tabBarShapeFrom(tabShape, tabPosition));
#endif
updateTabBarGeometry();
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
/*!
Constructs an empty mdi area. \a parent is passed to QWidget's
@@ -2138,7 +2138,7 @@ void QMdiArea::setViewMode(ViewMode mode)
d->setViewMode(mode);
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
/*!
\property QMdiArea::documentMode
\brief whether the tab bar is set to document mode in tabbed view mode.
@@ -2213,9 +2213,9 @@ void QMdiArea::setTabsMovable(bool movable)
d->tabsMovable = movable;
d->refreshTabBar();
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
/*!
\property QMdiArea::tabShape
\brief the shape of the tabs in tabbed view mode.
@@ -2267,7 +2267,7 @@ void QMdiArea::setTabPosition(QTabWidget::TabPosition position)
d->tabPosition = position;
d->refreshTabBar();
}
-#endif // QT_NO_TABWIDGET
+#endif // QT_CONFIG(tabwidget)
/*!
\reimp
@@ -2294,7 +2294,7 @@ void QMdiArea::resizeEvent(QResizeEvent *resizeEvent)
return;
}
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
d->updateTabBarGeometry();
#endif
@@ -2532,7 +2532,7 @@ bool QMdiArea::event(QEvent *event)
d->setActive(d->active, false, false);
d->setChildActivationEnabled(false);
break;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
case QEvent::LayoutDirectionChange:
d->updateTabBarGeometry();
break;
@@ -2629,13 +2629,13 @@ bool QMdiArea::eventFilter(QObject *object, QEvent *event)
d->isSubWindowsTiled = false;
break;
case QEvent::Show:
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
if (d->tabBar) {
const int tabIndex = d->childWindows.indexOf(subWindow);
if (!d->tabBar->isTabEnabled(tabIndex))
d->tabBar->setTabEnabled(tabIndex, true);
}
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
// fall through
case QEvent::Hide:
d->isSubWindowsTiled = false;
@@ -2646,7 +2646,7 @@ bool QMdiArea::eventFilter(QObject *object, QEvent *event)
d->hideRubberBand();
break;
#endif
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
case QEvent::WindowTitleChange:
case QEvent::ModifiedChange:
if (d->tabBar)
@@ -2656,7 +2656,7 @@ bool QMdiArea::eventFilter(QObject *object, QEvent *event)
if (d->tabBar)
d->tabBar->setTabIcon(d->childWindows.indexOf(subWindow), subWindow->windowIcon());
break;
-#endif // QT_NO_TABBAR
+#endif // QT_CONFIG(tabbar)
default:
break;
}
diff --git a/src/widgets/widgets/qmdiarea.h b/src/widgets/widgets/qmdiarea.h
index 44a40948af..acc59296b6 100644
--- a/src/widgets/widgets/qmdiarea.h
+++ b/src/widgets/widgets/qmdiarea.h
@@ -42,7 +42,9 @@
#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qabstractscrollarea.h>
+#if QT_CONFIG(tabwidget)
#include <QtWidgets/qtabwidget.h>
+#endif
QT_BEGIN_NAMESPACE
@@ -58,12 +60,12 @@ class Q_WIDGETS_EXPORT QMdiArea : public QAbstractScrollArea
Q_PROPERTY(QBrush background READ background WRITE setBackground)
Q_PROPERTY(WindowOrder activationOrder READ activationOrder WRITE setActivationOrder)
Q_PROPERTY(ViewMode viewMode READ viewMode WRITE setViewMode)
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
Q_PROPERTY(bool documentMode READ documentMode WRITE setDocumentMode)
Q_PROPERTY(bool tabsClosable READ tabsClosable WRITE setTabsClosable)
Q_PROPERTY(bool tabsMovable READ tabsMovable WRITE setTabsMovable)
#endif
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
Q_PROPERTY(QTabWidget::TabShape tabShape READ tabShape WRITE setTabShape)
Q_PROPERTY(QTabWidget::TabPosition tabPosition READ tabPosition WRITE setTabPosition)
#endif
@@ -111,7 +113,7 @@ public:
void setViewMode(ViewMode mode);
ViewMode viewMode() const;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
bool documentMode() const;
void setDocumentMode(bool enabled);
@@ -121,7 +123,7 @@ public:
void setTabsMovable(bool movable);
bool tabsMovable() const;
#endif
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
void setTabShape(QTabWidget::TabShape shape);
QTabWidget::TabShape tabShape() const;
diff --git a/src/widgets/widgets/qmdiarea_p.h b/src/widgets/widgets/qmdiarea_p.h
index b77f3f63ea..10b5de6840 100644
--- a/src/widgets/widgets/qmdiarea_p.h
+++ b/src/widgets/widgets/qmdiarea_p.h
@@ -158,12 +158,12 @@ public:
QMdiArea::WindowOrder activationOrder;
QMdiArea::AreaOptions options;
QMdiArea::ViewMode viewMode;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
bool documentMode;
bool tabsClosable;
bool tabsMovable;
#endif
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
QTabWidget::TabShape tabShape;
QTabWidget::TabPosition tabPosition;
#endif
@@ -213,7 +213,7 @@ public:
QList<QMdiSubWindow *> subWindowList(QMdiArea::WindowOrder, bool reversed = false) const;
void disconnectSubWindow(QObject *subWindow);
void setViewMode(QMdiArea::ViewMode mode);
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
void updateTabBarGeometry();
void refreshTabBar();
#endif
diff --git a/src/widgets/widgets/qmdisubwindow.h b/src/widgets/widgets/qmdisubwindow.h
index e2bb533ddf..875c9a22c8 100644
--- a/src/widgets/widgets/qmdisubwindow.h
+++ b/src/widgets/widgets/qmdisubwindow.h
@@ -138,7 +138,7 @@ private:
Q_PRIVATE_SLOT(d_func(), void _q_enterInteractiveMode())
Q_PRIVATE_SLOT(d_func(), void _q_processFocusChanged(QWidget *, QWidget *))
friend class QMdiAreaPrivate;
-#ifndef QT_NO_TABBAR
+#if QT_CONFIG(tabbar)
friend class QMdiAreaTabBar;
#endif
friend class QMdi::ControlContainer;
diff --git a/src/widgets/widgets/qscrollbar.h b/src/widgets/widgets/qscrollbar.h
index 963ae4263b..c180a62585 100644
--- a/src/widgets/widgets/qscrollbar.h
+++ b/src/widgets/widgets/qscrollbar.h
@@ -85,7 +85,7 @@ private:
Q_DISABLE_COPY(QScrollBar)
Q_DECLARE_PRIVATE(QScrollBar)
-#ifndef QT_NO_ITEMVIEWS
+#if QT_CONFIG(itemviews)
friend class QTableView;
friend class QTreeViewPrivate;
friend class QCommonListViewBase;
diff --git a/src/widgets/widgets/qtabbar.cpp b/src/widgets/widgets/qtabbar.cpp
index 9e803f4388..adaafc7d21 100644
--- a/src/widgets/widgets/qtabbar.cpp
+++ b/src/widgets/widgets/qtabbar.cpp
@@ -38,7 +38,9 @@
****************************************************************************/
#include "private/qlayoutengine_p.h"
+#if QT_CONFIG(itemviews)
#include "qabstractitemdelegate.h"
+#endif
#include "qapplication.h"
#include "qbitmap.h"
#include "qcursor.h"
@@ -47,7 +49,9 @@
#include "qstyle.h"
#include "qstyleoption.h"
#include "qstylepainter.h"
+#if QT_CONFIG(tabwidget)
#include "qtabwidget.h"
+#endif
#include "qtooltip.h"
#if QT_CONFIG(whatsthis)
#include "qwhatsthis.h"
@@ -63,8 +67,6 @@
#include "qdebug.h"
#include "private/qtabbar_p.h"
-#ifndef QT_NO_TABBAR
-
#if 0 // Used to be included in Qt4 for Q_WS_MAC
#include <private/qt_mac_p.h>
#include <private/qt_cocoa_helpers_mac_p.h>
@@ -205,7 +207,7 @@ void QTabBarPrivate::initBasicStyleOption(QStyleOptionTab *option, int tabIndex)
option->position = QStyleOptionTab::Middle;
}
-#ifndef QT_NO_TABWIDGET
+#if QT_CONFIG(tabwidget)
if (const QTabWidget *tw = qobject_cast<const QTabWidget *>(q->parentWidget())) {
option->features |= QStyleOptionTab::HasFrame;
if (tw->cornerWidget(Qt::TopLeftCorner) || tw->cornerWidget(Qt::BottomLeftCorner))
@@ -2690,6 +2692,4 @@ QT_END_NAMESPACE
#include "moc_qtabbar.cpp"
-#endif // QT_NO_TABBAR
-
#include "moc_qtabbar_p.cpp"
diff --git a/src/widgets/widgets/qtabbar.h b/src/widgets/widgets/qtabbar.h
index 2a27a98661..ebcd1094ef 100644
--- a/src/widgets/widgets/qtabbar.h
+++ b/src/widgets/widgets/qtabbar.h
@@ -43,10 +43,9 @@
#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qwidget.h>
-QT_BEGIN_NAMESPACE
-
+QT_REQUIRE_CONFIG(tabbar);
-#ifndef QT_NO_TABBAR
+QT_BEGIN_NAMESPACE
class QIcon;
class QTabBarPrivate;
@@ -221,8 +220,6 @@ private:
Q_PRIVATE_SLOT(d_func(), void _q_closeTab())
};
-#endif // QT_NO_TABBAR
-
QT_END_NAMESPACE
#endif // QTABBAR_H
diff --git a/src/widgets/widgets/qtabbar_p.h b/src/widgets/widgets/qtabbar_p.h
index 7141ffc8d5..195ff79c5d 100644
--- a/src/widgets/widgets/qtabbar_p.h
+++ b/src/widgets/widgets/qtabbar_p.h
@@ -60,12 +60,12 @@
#include <qdebug.h>
#include <qvariantanimation.h>
-#ifndef QT_NO_TABBAR
-
#define ANIMATION_DURATION 250
#include <qstyleoption.h>
+QT_REQUIRE_CONFIG(tabbar);
+
QT_BEGIN_NAMESPACE
class QMovableTabWidget : public QWidget
@@ -286,9 +286,6 @@ public:
void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE;
};
-
QT_END_NAMESPACE
#endif
-
-#endif
diff --git a/src/widgets/widgets/qtabwidget.cpp b/src/widgets/widgets/qtabwidget.cpp
index c84c78275d..c496d267b3 100644
--- a/src/widgets/widgets/qtabwidget.cpp
+++ b/src/widgets/widgets/qtabwidget.cpp
@@ -39,7 +39,6 @@
#include "qtabwidget.h"
-#ifndef QT_NO_TABWIDGET
#include "private/qwidget_p.h"
#include "private/qtabbar_p.h"
#include "qapplication.h"
@@ -1375,5 +1374,3 @@ void QTabWidget::clear()
QT_END_NAMESPACE
#include "moc_qtabwidget.cpp"
-
-#endif //QT_NO_TABWIDGET
diff --git a/src/widgets/widgets/qtabwidget.h b/src/widgets/widgets/qtabwidget.h
index 7d8864241a..b80fdba1fb 100644
--- a/src/widgets/widgets/qtabwidget.h
+++ b/src/widgets/widgets/qtabwidget.h
@@ -44,10 +44,9 @@
#include <QtWidgets/qwidget.h>
#include <QtGui/qicon.h>
-QT_BEGIN_NAMESPACE
-
+QT_REQUIRE_CONFIG(tabwidget);
-#ifndef QT_NO_TABWIDGET
+QT_BEGIN_NAMESPACE
class QTabBar;
class QTabWidgetPrivate;
@@ -181,8 +180,6 @@ private:
void setUpLayout(bool = false);
};
-#endif // QT_NO_TABWIDGET
-
QT_END_NAMESPACE
#endif // QTABWIDGET_H
diff --git a/src/widgets/widgets/qtoolbar.cpp b/src/widgets/widgets/qtoolbar.cpp
index aaa64c8b2f..476f9d4cfa 100644
--- a/src/widgets/widgets/qtoolbar.cpp
+++ b/src/widgets/widgets/qtoolbar.cpp
@@ -42,7 +42,9 @@
#ifndef QT_NO_TOOLBAR
#include <qapplication.h>
+#if QT_CONFIG(combobox)
#include <qcombobox.h>
+#endif
#include <qevent.h>
#include <qlayout.h>
#include <qmainwindow.h>
diff --git a/src/widgets/widgets/qtoolbarlayout.cpp b/src/widgets/widgets/qtoolbarlayout.cpp
index 79174bdbff..39e61a1951 100644
--- a/src/widgets/widgets/qtoolbarlayout.cpp
+++ b/src/widgets/widgets/qtoolbarlayout.cpp
@@ -666,7 +666,7 @@ void QToolBarLayout::setExpanded(bool exp)
extension->setChecked(expanded);
if (QMainWindow *win = qobject_cast<QMainWindow*>(tb->parentWidget())) {
-#ifdef QT_NO_DOCKWIDGET
+#if !QT_CONFIG(dockwidget)
animating = false;
#else
animating = !tb->isWindow() && win->isAnimated();
diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp
index 97df3427b0..9555ccc5b6 100644
--- a/src/widgets/widgets/qwidgetlinecontrol.cpp
+++ b/src/widgets/widgets/qwidgetlinecontrol.cpp
@@ -41,7 +41,9 @@
#ifndef QT_NO_LINEEDIT
+#if QT_CONFIG(itemviews)
#include "qabstractitemview.h"
+#endif
#include "qclipboard.h"
#include <private/qguiapplication_p.h>
#include <qpa/qplatformtheme.h>
@@ -548,10 +550,10 @@ void QWidgetLineControl::processInputMethodEvent(QInputMethodEvent *event)
if (!event->commitString().isEmpty()) {
internalInsert(event->commitString());
cursorPositionChanged = true;
+ } else {
+ m_cursor = qBound(0, c, m_text.length());
}
- m_cursor = qBound(0, c, m_text.length());
-
for (int i = 0; i < event->attributes().size(); ++i) {
const QInputMethodEvent::Attribute &a = event->attributes().at(i);
if (a.type == QInputMethodEvent::Selection) {
diff --git a/src/widgets/widgets/widgets.pri b/src/widgets/widgets/widgets.pri
index 610932c6ce..aed3f53478 100644
--- a/src/widgets/widgets/widgets.pri
+++ b/src/widgets/widgets/widgets.pri
@@ -5,13 +5,7 @@ HEADERS += \
widgets/qbuttongroup_p.h \
widgets/qabstractspinbox.h \
widgets/qabstractspinbox_p.h \
- widgets/qcalendarwidget.h \
- widgets/qcombobox.h \
- widgets/qcombobox_p.h \
widgets/qdial.h \
- widgets/qdockwidget.h \
- widgets/qdockwidget_p.h \
- widgets/qdockarealayout_p.h \
widgets/qframe.h \
widgets/qframe_p.h \
widgets/qgroupbox.h \
@@ -40,9 +34,6 @@ HEADERS += \
widgets/qsplitter_p.h \
widgets/qstackedwidget.h \
widgets/qstatusbar.h \
- widgets/qtabbar.h \
- widgets/qtabbar_p.h \
- widgets/qtabwidget.h \
widgets/qtextedit.h \
widgets/qtextedit_p.h \
widgets/qtextbrowser.h \
@@ -67,11 +58,7 @@ HEADERS += \
SOURCES += \
widgets/qbuttongroup.cpp \
widgets/qabstractspinbox.cpp \
- widgets/qcalendarwidget.cpp \
- widgets/qcombobox.cpp \
widgets/qdial.cpp \
- widgets/qdockwidget.cpp \
- widgets/qdockarealayout.cpp \
widgets/qeffects.cpp \
widgets/qframe.cpp \
widgets/qgroupbox.cpp \
@@ -92,8 +79,6 @@ SOURCES += \
widgets/qsplitter.cpp \
widgets/qstackedwidget.cpp \
widgets/qstatusbar.cpp \
- widgets/qtabbar.cpp \
- widgets/qtabwidget.cpp \
widgets/qtextedit.cpp \
widgets/qtextbrowser.cpp \
widgets/qtoolbar.cpp \
@@ -129,6 +114,11 @@ qtConfig(abstractslider) {
widgets/qabstractslider.cpp
}
+qtConfig(calendarwidget) {
+ HEADERS += widgets/qcalendarwidget.h
+ SOURCES += widgets/qcalendarwidget.cpp
+}
+
qtConfig(checkbox) {
HEADERS += \
widgets/qcheckbox.h
@@ -137,6 +127,14 @@ qtConfig(checkbox) {
widgets/qcheckbox.cpp
}
+qtConfig(combobox) {
+ HEADERS += \
+ widgets/qcombobox.h \
+ widgets/qcombobox_p.h
+
+ SOURCES += widgets/qcombobox.cpp
+}
+
qtConfig(commandlinkbutton) {
HEADERS += \
widgets/qcommandlinkbutton.h
@@ -154,6 +152,17 @@ qtConfig(datetimeedit) {
widgets/qdatetimeedit.cpp
}
+qtConfig(dockwidget) {
+ HEADERS += \
+ widgets/qdockwidget.h \
+ widgets/qdockwidget_p.h \
+ widgets/qdockarealayout_p.h
+
+ SOURCES += \
+ widgets/qdockwidget.cpp \
+ widgets/qdockarealayout.cpp
+}
+
qtConfig(fontcombobox) {
HEADERS += widgets/qfontcombobox.h
SOURCES += widgets/qfontcombobox.cpp
@@ -214,6 +223,19 @@ qtConfig(splashscreen) {
widgets/qsplashscreen.cpp
}
+qtConfig(tabbar) {
+ HEADERS += \
+ widgets/qtabbar.h \
+ widgets/qtabbar_p.h
+
+ SOURCES += widgets/qtabbar.cpp
+}
+
+qtConfig(tabwidget) {
+ HEADERS += widgets/qtabwidget.h
+ SOURCES += widgets/qtabwidget.cpp
+}
+
qtConfig(widgettextcontrol) {
HEADERS += \
widgets/qwidgettextcontrol_p.h \