summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/widgets')
-rw-r--r--src/widgets/widgets/qabstractspinbox.h40
-rw-r--r--src/widgets/widgets/qabstractspinbox_p.h4
-rw-r--r--src/widgets/widgets/qcombobox.cpp6
-rw-r--r--src/widgets/widgets/qcombobox_p.h46
-rw-r--r--src/widgets/widgets/qdatetimeedit.h26
-rw-r--r--src/widgets/widgets/qdatetimeedit_p.h8
-rw-r--r--src/widgets/widgets/qdockwidget.cpp4
-rw-r--r--src/widgets/widgets/qlineedit.cpp2
-rw-r--r--src/widgets/widgets/qmacnativewidget_mac.h4
-rw-r--r--src/widgets/widgets/qmdiarea.cpp2
-rw-r--r--src/widgets/widgets/qmdisubwindow.cpp24
-rw-r--r--src/widgets/widgets/qmdisubwindow_p.h2
-rw-r--r--src/widgets/widgets/qmenubar.h36
-rw-r--r--src/widgets/widgets/qpushbutton.h3
-rw-r--r--src/widgets/widgets/qspinbox.h10
-rw-r--r--src/widgets/widgets/qwidgetlinecontrol.cpp18
-rw-r--r--src/widgets/widgets/qwidgetlinecontrol_p.h6
-rw-r--r--src/widgets/widgets/qwidgettextcontrol.cpp17
-rw-r--r--src/widgets/widgets/qwidgettextcontrol_p.h3
19 files changed, 126 insertions, 135 deletions
diff --git a/src/widgets/widgets/qabstractspinbox.h b/src/widgets/widgets/qabstractspinbox.h
index d93489e663..ac46894a27 100644
--- a/src/widgets/widgets/qabstractspinbox.h
+++ b/src/widgets/widgets/qabstractspinbox.h
@@ -117,12 +117,12 @@ public:
void setGroupSeparatorShown(bool shown);
bool isGroupSeparatorShown() const;
- QSize sizeHint() const;
- QSize minimumSizeHint() const;
+ QSize sizeHint() const override;
+ QSize minimumSizeHint() const override;
void interpretText();
- bool event(QEvent *event);
+ bool event(QEvent *event) override;
- QVariant inputMethodQuery(Qt::InputMethodQuery) const;
+ QVariant inputMethodQuery(Qt::InputMethodQuery) const override;
virtual QValidator::State validate(QString &input, int &pos) const;
virtual void fixup(QString &input) const;
@@ -134,24 +134,24 @@ public Q_SLOTS:
void selectAll();
virtual void clear();
protected:
- void resizeEvent(QResizeEvent *event);
- void keyPressEvent(QKeyEvent *event);
- void keyReleaseEvent(QKeyEvent *event);
+ void resizeEvent(QResizeEvent *event) override;
+ void keyPressEvent(QKeyEvent *event) override;
+ void keyReleaseEvent(QKeyEvent *event) override;
#ifndef QT_NO_WHEELEVENT
- void wheelEvent(QWheelEvent *event);
+ void wheelEvent(QWheelEvent *event) override;
#endif
- void focusInEvent(QFocusEvent *event);
- void focusOutEvent(QFocusEvent *event);
- void contextMenuEvent(QContextMenuEvent *event);
- void changeEvent(QEvent *event);
- void closeEvent(QCloseEvent *event);
- void hideEvent(QHideEvent *event);
- void mousePressEvent(QMouseEvent *event);
- void mouseReleaseEvent(QMouseEvent *event);
- void mouseMoveEvent(QMouseEvent *event);
- void timerEvent(QTimerEvent *event);
- void paintEvent(QPaintEvent *event);
- void showEvent(QShowEvent *event);
+ void focusInEvent(QFocusEvent *event) override;
+ void focusOutEvent(QFocusEvent *event) override;
+ void contextMenuEvent(QContextMenuEvent *event) override;
+ void changeEvent(QEvent *event) override;
+ void closeEvent(QCloseEvent *event) override;
+ void hideEvent(QHideEvent *event) override;
+ void mousePressEvent(QMouseEvent *event) override;
+ void mouseReleaseEvent(QMouseEvent *event) override;
+ void mouseMoveEvent(QMouseEvent *event) override;
+ void timerEvent(QTimerEvent *event) override;
+ void paintEvent(QPaintEvent *event) override;
+ void showEvent(QShowEvent *event) override;
void initStyleOption(QStyleOptionSpinBox *option) const;
QLineEdit *lineEdit() const;
diff --git a/src/widgets/widgets/qabstractspinbox_p.h b/src/widgets/widgets/qabstractspinbox_p.h
index 47ca10a183..5ec59d899b 100644
--- a/src/widgets/widgets/qabstractspinbox_p.h
+++ b/src/widgets/widgets/qabstractspinbox_p.h
@@ -156,8 +156,8 @@ class QSpinBoxValidator : public QValidator
{
public:
QSpinBoxValidator(QAbstractSpinBox *qptr, QAbstractSpinBoxPrivate *dptr);
- QValidator::State validate(QString &input, int &) const;
- void fixup(QString &) const;
+ QValidator::State validate(QString &input, int &) const override;
+ void fixup(QString &) const override;
private:
QAbstractSpinBox *qptr;
QAbstractSpinBoxPrivate *dptr;
diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp
index 4358e568bf..4519265fb8 100644
--- a/src/widgets/widgets/qcombobox.cpp
+++ b/src/widgets/widgets/qcombobox.cpp
@@ -66,7 +66,7 @@
#include <private/qabstractitemmodel_p.h>
#include <private/qabstractscrollarea_p.h>
#include <qdebug.h>
-#if 0 /* Used to be included in Qt4 for Q_WS_MAC */ && !defined(QT_NO_EFFECTS) && !defined(QT_NO_STYLE_MAC)
+#if 0 /* Used to be included in Qt4 for Q_WS_MAC */ && !defined(QT_NO_EFFECTS) && QT_CONFIG(style_mac)
#include <private/qcore_mac_p.h>
#include <private/qmacstyle_mac_p.h>
#include <private/qt_cocoa_helpers_mac_p.h>
@@ -1841,7 +1841,7 @@ QLineEdit *QComboBox::lineEdit() const
Sets the \a validator to use instead of the current validator.
- \note The validator is removed when the editable property becomes \c false.
+ \note The validator is removed when the \l editable property becomes \c false.
*/
void QComboBox::setValidator(const QValidator *v)
@@ -1876,7 +1876,7 @@ const QValidator *QComboBox::validator() const
By default, for an editable combo box, a QCompleter that
performs case insensitive inline completion is automatically created.
- \note The completer is removed when the \a editable property becomes \c false.
+ \note The completer is removed when the \l editable property becomes \c false.
*/
void QComboBox::setCompleter(QCompleter *c)
{
diff --git a/src/widgets/widgets/qcombobox_p.h b/src/widgets/widgets/qcombobox_p.h
index 7ca077abf9..6c36359f81 100644
--- a/src/widgets/widgets/qcombobox_p.h
+++ b/src/widgets/widgets/qcombobox_p.h
@@ -86,13 +86,13 @@ public:
QComboBoxListView(QComboBox *cmb = 0) : combo(cmb) {}
protected:
- void resizeEvent(QResizeEvent *event)
+ void resizeEvent(QResizeEvent *event) override
{
resizeContents(viewport()->width(), contentsSize().height());
QListView::resizeEvent(event);
}
- QStyleOptionViewItem viewOptions() const
+ QStyleOptionViewItem viewOptions() const override
{
QStyleOptionViewItem option = QListView::viewOptions();
option.showDecorationSelected = true;
@@ -101,7 +101,7 @@ protected:
return option;
}
- void paintEvent(QPaintEvent *e)
+ void paintEvent(QPaintEvent *e) override
{
if (combo) {
QStyleOptionComboBox opt;
@@ -142,7 +142,7 @@ public:
setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
setAttribute(Qt::WA_NoMousePropagation);
}
- QSize sizeHint() const {
+ QSize sizeHint() const override {
return QSize(20, style()->pixelMetric(QStyle::PM_MenuScrollerHeight));
}
@@ -156,14 +156,14 @@ protected:
fast = false;
}
- void enterEvent(QEvent *) {
+ void enterEvent(QEvent *) override {
startTimer();
}
- void leaveEvent(QEvent *) {
+ void leaveEvent(QEvent *) override {
stopTimer();
}
- void timerEvent(QTimerEvent *e) {
+ void timerEvent(QTimerEvent *e) override {
if (e->timerId() == timer.timerId()) {
emit doScroll(sliderAction);
if (fast) {
@@ -172,11 +172,11 @@ protected:
}
}
}
- void hideEvent(QHideEvent *) {
+ void hideEvent(QHideEvent *) override {
stopTimer();
}
- void mouseMoveEvent(QMouseEvent *e)
+ void mouseMoveEvent(QMouseEvent *e) override
{
// Enable fast scrolling if the cursor is directly above or below the popup.
const int mouseX = e->pos().x();
@@ -188,7 +188,7 @@ protected:
fast = horizontallyInside && verticallyOutside;
}
- void paintEvent(QPaintEvent *) {
+ void paintEvent(QPaintEvent *) override {
QPainter p(this);
QStyleOptionMenuItem menuOpt;
menuOpt.init(this);
@@ -235,15 +235,15 @@ public Q_SLOTS:
void viewDestroyed();
protected:
- void changeEvent(QEvent *e);
- bool eventFilter(QObject *o, QEvent *e);
- void mousePressEvent(QMouseEvent *e);
- void mouseReleaseEvent(QMouseEvent *e);
- void showEvent(QShowEvent *e);
- void hideEvent(QHideEvent *e);
- void timerEvent(QTimerEvent *timerEvent);
- void leaveEvent(QEvent *e);
- void resizeEvent(QResizeEvent *e);
+ void changeEvent(QEvent *e) override;
+ bool eventFilter(QObject *o, QEvent *e) override;
+ void mousePressEvent(QMouseEvent *e) override;
+ void mouseReleaseEvent(QMouseEvent *e) override;
+ void showEvent(QShowEvent *e) override;
+ void hideEvent(QHideEvent *e) override;
+ void timerEvent(QTimerEvent *timerEvent) override;
+ void leaveEvent(QEvent *e) override;
+ void resizeEvent(QResizeEvent *e) override;
QStyleOptionComboBox comboStyleOption() const;
Q_SIGNALS:
@@ -270,13 +270,13 @@ public:
protected:
void paint(QPainter *painter,
const QStyleOptionViewItem &option,
- const QModelIndex &index) const {
+ const QModelIndex &index) const override {
QStyleOptionMenuItem opt = getStyleOption(option, index);
painter->fillRect(option.rect, opt.palette.background());
mCombo->style()->drawControl(QStyle::CE_MenuItem, &opt, painter, mCombo);
}
QSize sizeHint(const QStyleOptionViewItem &option,
- const QModelIndex &index) const {
+ const QModelIndex &index) const override {
QStyleOptionMenuItem opt = getStyleOption(option, index);
return mCombo->style()->sizeFromContents(
QStyle::CT_MenuItem, &opt, option.rect.size(), mCombo);
@@ -309,7 +309,7 @@ public:
protected:
void paint(QPainter *painter,
const QStyleOptionViewItem &option,
- const QModelIndex &index) const {
+ const QModelIndex &index) const override {
if (isSeparator(index)) {
QRect rect = option.rect;
if (const QAbstractItemView *view = qobject_cast<const QAbstractItemView*>(option.widget))
@@ -323,7 +323,7 @@ protected:
}
QSize sizeHint(const QStyleOptionViewItem &option,
- const QModelIndex &index) const {
+ const QModelIndex &index) const override {
if (isSeparator(index)) {
int pm = mCombo->style()->pixelMetric(QStyle::PM_DefaultFrameWidth, 0, mCombo);
return QSize(pm, pm);
diff --git a/src/widgets/widgets/qdatetimeedit.h b/src/widgets/widgets/qdatetimeedit.h
index c261ce369b..5c9f4e0f9d 100644
--- a/src/widgets/widgets/qdatetimeedit.h
+++ b/src/widgets/widgets/qdatetimeedit.h
@@ -159,12 +159,12 @@ public:
Qt::TimeSpec timeSpec() const;
void setTimeSpec(Qt::TimeSpec spec);
- QSize sizeHint() const;
+ QSize sizeHint() const override;
- virtual void clear();
- virtual void stepBy(int steps);
+ void clear() override;
+ void stepBy(int steps) override;
- bool event(QEvent *event);
+ bool event(QEvent *event) override;
Q_SIGNALS:
void dateTimeChanged(const QDateTime &dateTime);
void timeChanged(const QTime &time);
@@ -176,20 +176,20 @@ public Q_SLOTS:
void setTime(const QTime &time);
protected:
- virtual void keyPressEvent(QKeyEvent *event);
+ void keyPressEvent(QKeyEvent *event) override;
#ifndef QT_NO_WHEELEVENT
- virtual void wheelEvent(QWheelEvent *event);
+ void wheelEvent(QWheelEvent *event) override;
#endif
- virtual void focusInEvent(QFocusEvent *event);
- virtual bool focusNextPrevChild(bool next);
- virtual QValidator::State validate(QString &input, int &pos) const;
- virtual void fixup(QString &input) const;
+ void focusInEvent(QFocusEvent *event) override;
+ bool focusNextPrevChild(bool next) override;
+ QValidator::State validate(QString &input, int &pos) const override;
+ void fixup(QString &input) const override;
virtual QDateTime dateTimeFromText(const QString &text) const;
virtual QString textFromDateTime(const QDateTime &dt) const;
- virtual StepEnabled stepEnabled() const;
- virtual void mousePressEvent(QMouseEvent *event);
- virtual void paintEvent(QPaintEvent *event);
+ StepEnabled stepEnabled() const override;
+ void mousePressEvent(QMouseEvent *event) override;
+ void paintEvent(QPaintEvent *event) override;
void initStyleOption(QStyleOptionSpinBox *option) const;
QDateTimeEdit(const QVariant &val, QVariant::Type parserType, QWidget *parent = Q_NULLPTR);
diff --git a/src/widgets/widgets/qdatetimeedit_p.h b/src/widgets/widgets/qdatetimeedit_p.h
index 6889bda041..730aa0f0b2 100644
--- a/src/widgets/widgets/qdatetimeedit_p.h
+++ b/src/widgets/widgets/qdatetimeedit_p.h
@@ -167,10 +167,10 @@ private Q_SLOTS:
void dateSelectionChanged();
protected:
- void hideEvent(QHideEvent *);
- void mousePressEvent(QMouseEvent *e);
- void mouseReleaseEvent(QMouseEvent *);
- bool event(QEvent *e);
+ void hideEvent(QHideEvent *) override;
+ void mousePressEvent(QMouseEvent *e) override;
+ void mouseReleaseEvent(QMouseEvent *) override;
+ bool event(QEvent *e) override;
private:
QCalendarWidget *verifyCalendarInstance();
diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp
index 1df7259aba..c9cb826213 100644
--- a/src/widgets/widgets/qdockwidget.cpp
+++ b/src/widgets/widgets/qdockwidget.cpp
@@ -797,8 +797,10 @@ void QDockWidgetPrivate::endDrag(bool abort)
if (abort || !mwLayout->plug(state->widgetItem)) {
if (hasFeature(this, QDockWidget::DockWidgetFloatable)) {
// This QDockWidget will now stay in the floating state.
- if (state->ownWidgetItem)
+ if (state->ownWidgetItem) {
delete state->widgetItem;
+ state->widgetItem = nullptr;
+ }
mwLayout->restore();
QDockWidgetLayout *dwLayout = qobject_cast<QDockWidgetLayout*>(layout);
if (!dwLayout->nativeWindowDeco()) {
diff --git a/src/widgets/widgets/qlineedit.cpp b/src/widgets/widgets/qlineedit.cpp
index dd5f5325b1..ffe1ca1c66 100644
--- a/src/widgets/widgets/qlineedit.cpp
+++ b/src/widgets/widgets/qlineedit.cpp
@@ -603,7 +603,7 @@ const QValidator * QLineEdit::validator() const
The initial setting is to have no input validator (i.e. any input
is accepted up to maxLength()).
- \sa validator(), QIntValidator, QDoubleValidator, QRegExpValidator
+ \sa validator(), hasAcceptableInput(), QIntValidator, QDoubleValidator, QRegExpValidator
*/
void QLineEdit::setValidator(const QValidator *v)
diff --git a/src/widgets/widgets/qmacnativewidget_mac.h b/src/widgets/widgets/qmacnativewidget_mac.h
index 84389f16df..a8faffd6be 100644
--- a/src/widgets/widgets/qmacnativewidget_mac.h
+++ b/src/widgets/widgets/qmacnativewidget_mac.h
@@ -54,11 +54,11 @@ public:
QMacNativeWidget(NSView *parentView = Q_NULLPTR);
~QMacNativeWidget();
- QSize sizeHint() const;
+ QSize sizeHint() const override;
NSView *nativeView() const;
protected:
- bool event(QEvent *ev);
+ bool event(QEvent *ev) override;
};
QT_END_NAMESPACE
diff --git a/src/widgets/widgets/qmdiarea.cpp b/src/widgets/widgets/qmdiarea.cpp
index 183f1c2848..9b39743281 100644
--- a/src/widgets/widgets/qmdiarea.cpp
+++ b/src/widgets/widgets/qmdiarea.cpp
@@ -160,7 +160,7 @@
#include <QApplication>
#include <QStyle>
-#if 0 /* Used to be included in Qt4 for Q_WS_MAC */ && !defined(QT_NO_STYLE_MAC)
+#if 0 /* Used to be included in Qt4 for Q_WS_MAC */ && QT_CONFIG(style_mac)
#include <private/qmacstyle_mac_p.h>
#endif
#include <QChildEvent>
diff --git a/src/widgets/widgets/qmdisubwindow.cpp b/src/widgets/widgets/qmdisubwindow.cpp
index 2fff2fc729..a627c86871 100644
--- a/src/widgets/widgets/qmdisubwindow.cpp
+++ b/src/widgets/widgets/qmdisubwindow.cpp
@@ -158,7 +158,7 @@
#include <QMainWindow>
#include <QScrollBar>
#include <QDebug>
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
#include <private/qmacstyle_mac_p.h>
#endif
#include <QMdiArea>
@@ -295,7 +295,7 @@ static void showToolTip(QHelpEvent *helpEvent, QWidget *widget, const QStyleOpti
Q_ASSERT(helpEvent->type() == QEvent::ToolTip);
Q_ASSERT(widget);
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
// Native Mac windows don't show tool tip.
if (qobject_cast<QMacStyle *>(widget->style()))
return;
@@ -1076,7 +1076,7 @@ void QMdiSubWindowPrivate::updateCursor()
{
#ifndef QT_NO_CURSOR
Q_Q(QMdiSubWindow);
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(q->style()))
return;
#endif
@@ -1504,7 +1504,7 @@ void QMdiSubWindowPrivate::processClickedSubControl()
q->showNormal();
break;
case QStyle::SC_TitleBarMinButton:
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(q->style())) {
if (q->isMinimized())
q->showNormal();
@@ -1521,7 +1521,7 @@ void QMdiSubWindowPrivate::processClickedSubControl()
q->showNormal();
break;
case QStyle::SC_TitleBarMaxButton:
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(q->style())) {
if (q->isMaximized())
q->showNormal();
@@ -1568,7 +1568,7 @@ QRegion QMdiSubWindowPrivate::getRegion(Operation operation) const
}
QRegion region;
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(q->style()))
return region;
#endif
@@ -1775,7 +1775,7 @@ bool QMdiSubWindowPrivate::drawTitleBarWhenMaximized() const
if (isChildOfTabbedQMdiArea(q))
return false;
-#if defined(Q_OS_DARWIN) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
Q_UNUSED(isChildOfQMdiSubWindow);
return true;
#else
@@ -2191,7 +2191,7 @@ void QMdiSubWindowPrivate::setSizeGrip(QSizeGrip *newSizeGrip)
return;
newSizeGrip->setFixedSize(newSizeGrip->sizeHint());
bool putSizeGripInLayout = layout ? true : false;
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(q->style()))
putSizeGripInLayout = false;
#endif
@@ -2843,7 +2843,7 @@ bool QMdiSubWindow::event(QEvent *event)
d->isMaximizeMode = false;
d->isWidgetHiddenByUs = false;
if (!parent()) {
-#if !defined(QT_NO_SIZEGRIP) && defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if !defined(QT_NO_SIZEGRIP) && QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(style()))
delete d->sizeGrip;
#endif
@@ -2938,7 +2938,7 @@ void QMdiSubWindow::showEvent(QShowEvent *showEvent)
return;
}
-#if !defined(QT_NO_SIZEGRIP) && defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if !defined(QT_NO_SIZEGRIP) && QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(style()) && !d->sizeGrip
&& !(windowFlags() & Qt::FramelessWindowHint)) {
d->setSizeGrip(new QSizeGrip(this));
@@ -3333,7 +3333,7 @@ void QMdiSubWindow::mouseMoveEvent(QMouseEvent *mouseEvent)
hoverRegion += style()->subControlRect(QStyle::CC_TitleBar, &options,
d->hoveredSubControl, this);
}
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
if (qobject_cast<QMacStyle *>(style()) && !hoverRegion.isEmpty())
hoverRegion += QRegion(0, 0, width(), d->titleBarHeight(options));
#endif
@@ -3543,7 +3543,7 @@ QSize QMdiSubWindow::minimumSizeHint() const
int sizeGripHeight = 0;
if (d->sizeGrip && d->sizeGrip->isVisibleTo(const_cast<QMdiSubWindow *>(this)))
sizeGripHeight = d->sizeGrip->height();
-#if defined(Q_OS_MAC) && !defined(QT_NO_STYLE_MAC)
+#if QT_CONFIG(style_mac)
else if (parent() && qobject_cast<QMacStyle *>(style()) && !d->sizeGrip)
sizeGripHeight = style()->pixelMetric(QStyle::PM_SizeGripSize, 0, this);
#endif
diff --git a/src/widgets/widgets/qmdisubwindow_p.h b/src/widgets/widgets/qmdisubwindow_p.h
index 650d3b0bfb..33fa73eb0d 100644
--- a/src/widgets/widgets/qmdisubwindow_p.h
+++ b/src/widgets/widgets/qmdisubwindow_p.h
@@ -80,7 +80,7 @@ public:
mdiChild = child;
}
- void *qt_metacast(const char *classname)
+ void *qt_metacast(const char *classname) override
{
if (classname && strcmp(classname, "ControlElement") == 0)
return this;
diff --git a/src/widgets/widgets/qmenubar.h b/src/widgets/widgets/qmenubar.h
index ec15155710..7ad205b77a 100644
--- a/src/widgets/widgets/qmenubar.h
+++ b/src/widgets/widgets/qmenubar.h
@@ -86,9 +86,9 @@ public:
void setDefaultUp(bool);
bool isDefaultUp() const;
- QSize sizeHint() const;
- QSize minimumSizeHint() const;
- int heightForWidth(int) const;
+ QSize sizeHint() const override;
+ QSize minimumSizeHint() const override;
+ int heightForWidth(int) const override;
QRect actionGeometry(QAction *) const;
QAction *actionAt(const QPoint &) const;
@@ -104,27 +104,27 @@ public:
void setNativeMenuBar(bool nativeMenuBar);
QPlatformMenuBar *platformMenuBar();
public Q_SLOTS:
- virtual void setVisible(bool visible);
+ void setVisible(bool visible) override;
Q_SIGNALS:
void triggered(QAction *action);
void hovered(QAction *action);
protected:
- void changeEvent(QEvent *);
- void keyPressEvent(QKeyEvent *);
- void mouseReleaseEvent(QMouseEvent *);
- void mousePressEvent(QMouseEvent *);
- void mouseMoveEvent(QMouseEvent *);
- void leaveEvent(QEvent *);
- void paintEvent(QPaintEvent *);
- void resizeEvent(QResizeEvent *);
- void actionEvent(QActionEvent *);
- void focusOutEvent(QFocusEvent *);
- void focusInEvent(QFocusEvent *);
- void timerEvent(QTimerEvent *);
- bool eventFilter(QObject *, QEvent *);
- bool event(QEvent *);
+ void changeEvent(QEvent *) override;
+ void keyPressEvent(QKeyEvent *) override;
+ void mouseReleaseEvent(QMouseEvent *) override;
+ void mousePressEvent(QMouseEvent *) override;
+ void mouseMoveEvent(QMouseEvent *) override;
+ void leaveEvent(QEvent *) override;
+ void paintEvent(QPaintEvent *) override;
+ void resizeEvent(QResizeEvent *) override;
+ void actionEvent(QActionEvent *) override;
+ void focusOutEvent(QFocusEvent *) override;
+ void focusInEvent(QFocusEvent *) override;
+ void timerEvent(QTimerEvent *) override;
+ bool eventFilter(QObject *, QEvent *) override;
+ bool event(QEvent *) override;
void initStyleOption(QStyleOptionMenuItem *option, const QAction *action) const;
private:
diff --git a/src/widgets/widgets/qpushbutton.h b/src/widgets/widgets/qpushbutton.h
index 859ac247fb..b0d1ccacdb 100644
--- a/src/widgets/widgets/qpushbutton.h
+++ b/src/widgets/widgets/qpushbutton.h
@@ -87,9 +87,6 @@ public Q_SLOTS:
protected:
bool event(QEvent *e) Q_DECL_OVERRIDE;
-#if 0 // Used to be included in Qt4 for Q_WS_MAC
- bool hitButton(const QPoint &pos) const;
-#endif
void paintEvent(QPaintEvent *) Q_DECL_OVERRIDE;
void keyPressEvent(QKeyEvent *) Q_DECL_OVERRIDE;
void focusInEvent(QFocusEvent *) Q_DECL_OVERRIDE;
diff --git a/src/widgets/widgets/qspinbox.h b/src/widgets/widgets/qspinbox.h
index 2e77f0be7a..2eb12fd90d 100644
--- a/src/widgets/widgets/qspinbox.h
+++ b/src/widgets/widgets/qspinbox.h
@@ -91,11 +91,11 @@ public:
void setDisplayIntegerBase(int base);
protected:
- bool event(QEvent *event);
- virtual QValidator::State validate(QString &input, int &pos) const;
+ bool event(QEvent *event) override;
+ QValidator::State validate(QString &input, int &pos) const override;
virtual int valueFromText(const QString &text) const;
virtual QString textFromValue(int val) const;
- virtual void fixup(QString &str) const;
+ void fixup(QString &str) const override;
public Q_SLOTS:
@@ -151,10 +151,10 @@ public:
int decimals() const;
void setDecimals(int prec);
- virtual QValidator::State validate(QString &input, int &pos) const;
+ QValidator::State validate(QString &input, int &pos) const override;
virtual double valueFromText(const QString &text) const;
virtual QString textFromValue(double val) const;
- virtual void fixup(QString &str) const;
+ void fixup(QString &str) const override;
public Q_SLOTS:
void setValue(double val);
diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp
index 9b65dc43d1..a862274a3d 100644
--- a/src/widgets/widgets/qwidgetlinecontrol.cpp
+++ b/src/widgets/widgets/qwidgetlinecontrol.cpp
@@ -1924,19 +1924,15 @@ void QWidgetLineControl::processKeyEvent(QKeyEvent* event)
unknown = false;
}
- // QTBUG-35734: ignore Ctrl/Ctrl+Shift; accept only AltGr (Alt+Ctrl) on German keyboards
- if (unknown && !isReadOnly()
- && event->modifiers() != Qt::ControlModifier
- && event->modifiers() != (Qt::ControlModifier | Qt::ShiftModifier)) {
- QString t = event->text();
- if (!t.isEmpty() && t.at(0).isPrint()) {
- insert(t);
+ if (unknown
+ && !isReadOnly()
+ && isAcceptableInput(event)) {
+ insert(event->text());
#ifndef QT_NO_COMPLETER
- complete(event->key());
+ complete(event->key());
#endif
- event->accept();
- return;
- }
+ event->accept();
+ return;
}
if (unknown)
diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h
index d4a4534fb5..b9340c0aff 100644
--- a/src/widgets/widgets/qwidgetlinecontrol_p.h
+++ b/src/widgets/widgets/qwidgetlinecontrol_p.h
@@ -64,6 +64,7 @@
#include "QtCore/qpoint.h"
#include "QtWidgets/qcompleter.h"
#include "QtCore/qthread.h"
+#include "QtGui/private/qinputcontrol_p.h"
#include "qplatformdefs.h"
@@ -76,13 +77,14 @@
QT_BEGIN_NAMESPACE
-class Q_WIDGETS_EXPORT QWidgetLineControl : public QObject
+class Q_WIDGETS_EXPORT QWidgetLineControl : public QInputControl
{
Q_OBJECT
public:
QWidgetLineControl(const QString &txt = QString())
- : m_cursor(0), m_preeditCursor(0), m_cursorWidth(0), m_layoutDirection(Qt::LayoutDirectionAuto),
+ : QInputControl(LineEdit)
+ , m_cursor(0), m_preeditCursor(0), m_cursorWidth(0), m_layoutDirection(Qt::LayoutDirectionAuto),
m_hideCursor(false), m_separator(0), m_readOnly(0),
m_dragEnabled(0), m_echoMode(0), m_textDirty(0), m_selDirty(0),
m_validInput(1), m_blinkStatus(0), m_blinkEnabled(false), m_blinkTimer(0), m_deleteAllTimer(0),
diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp
index 47806a194e..f5672bd87a 100644
--- a/src/widgets/widgets/qwidgettextcontrol.cpp
+++ b/src/widgets/widgets/qwidgettextcontrol.cpp
@@ -848,21 +848,21 @@ void QWidgetTextControl::redo()
}
QWidgetTextControl::QWidgetTextControl(QObject *parent)
- : QObject(*new QWidgetTextControlPrivate, parent)
+ : QInputControl(QInputControl::TextEdit, *new QWidgetTextControlPrivate, parent)
{
Q_D(QWidgetTextControl);
d->init();
}
QWidgetTextControl::QWidgetTextControl(const QString &text, QObject *parent)
- : QObject(*new QWidgetTextControlPrivate, parent)
+ : QInputControl(QInputControl::TextEdit, *new QWidgetTextControlPrivate, parent)
{
Q_D(QWidgetTextControl);
d->init(Qt::RichText, text);
}
QWidgetTextControl::QWidgetTextControl(QTextDocument *doc, QObject *parent)
- : QObject(*new QWidgetTextControlPrivate, parent)
+ : QInputControl(QInputControl::TextEdit, *new QWidgetTextControlPrivate, parent)
{
Q_D(QWidgetTextControl);
d->init(Qt::RichText, QString(), doc);
@@ -1361,14 +1361,7 @@ void QWidgetTextControlPrivate::keyPressEvent(QKeyEvent *e)
process:
{
- // QTBUG-35734: ignore Ctrl/Ctrl+Shift; accept only AltGr (Alt+Ctrl) on German keyboards
- if (e->modifiers() == Qt::ControlModifier
- || e->modifiers() == (Qt::ShiftModifier | Qt::ControlModifier)) {
- e->ignore();
- return;
- }
- QString text = e->text();
- if (!text.isEmpty() && (text.at(0).isPrint() || text.at(0) == QLatin1Char('\t'))) {
+ if (q->isAcceptableInput(e)) {
if (overwriteMode
// no need to call deleteChar() if we have a selection, insertText
// does it already
@@ -1376,7 +1369,7 @@ process:
&& !cursor.atBlockEnd())
cursor.deleteChar();
- cursor.insertText(text);
+ cursor.insertText(e->text());
selectionChanged();
} else {
e->ignore();
diff --git a/src/widgets/widgets/qwidgettextcontrol_p.h b/src/widgets/widgets/qwidgettextcontrol_p.h
index b45f4fff74..f540a3c9ad 100644
--- a/src/widgets/widgets/qwidgettextcontrol_p.h
+++ b/src/widgets/widgets/qwidgettextcontrol_p.h
@@ -63,6 +63,7 @@
#include <QtGui/qtextdocumentfragment.h>
#include <QtGui/qclipboard.h>
#include <QtCore/qmimedata.h>
+#include <QtGui/private/qinputcontrol_p.h>
QT_BEGIN_NAMESPACE
@@ -75,7 +76,7 @@ class QAbstractScrollArea;
class QEvent;
class QTimerEvent;
-class Q_WIDGETS_EXPORT QWidgetTextControl : public QObject
+class Q_WIDGETS_EXPORT QWidgetTextControl : public QInputControl
{
Q_OBJECT
Q_DECLARE_PRIVATE(QWidgetTextControl)