aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates/qquickabstractbutton.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quicktemplates/qquickabstractbutton.cpp')
-rw-r--r--src/quicktemplates/qquickabstractbutton.cpp49
1 files changed, 23 insertions, 26 deletions
diff --git a/src/quicktemplates/qquickabstractbutton.cpp b/src/quicktemplates/qquickabstractbutton.cpp
index b173269268..0c1af73e55 100644
--- a/src/quicktemplates/qquickabstractbutton.cpp
+++ b/src/quicktemplates/qquickabstractbutton.cpp
@@ -87,6 +87,25 @@ QT_BEGIN_NAMESPACE
This signal is emitted when the button is interactively double clicked by the user via touch or mouse.
*/
+void QQuickAbstractButtonPrivate::init()
+{
+ Q_Q(QQuickAbstractButton);
+ q->setActiveFocusOnTab(true);
+#ifdef Q_OS_MACOS
+ q->setFocusPolicy(Qt::TabFocus);
+#else
+ q->setFocusPolicy(Qt::StrongFocus);
+#endif
+ q->setAcceptedMouseButtons(Qt::LeftButton);
+#if QT_CONFIG(quicktemplates2_multitouch)
+ q->setAcceptTouchEvents(true);
+#endif
+#if QT_CONFIG(cursor)
+ q->setCursor(Qt::ArrowCursor);
+#endif
+ setSizePolicy(QLayoutPolicy::Preferred, QLayoutPolicy::Fixed);
+}
+
QPointF QQuickAbstractButtonPrivate::centerPressPoint() const
{
return QPointF(qRound(width / 2), qRound(height / 2));
@@ -463,37 +482,15 @@ QList<QQuickAbstractButton *> QQuickAbstractButtonPrivate::findExclusiveButtons(
QQuickAbstractButton::QQuickAbstractButton(QQuickItem *parent)
: QQuickControl(*(new QQuickAbstractButtonPrivate), parent)
{
- setActiveFocusOnTab(true);
-#ifdef Q_OS_MACOS
- setFocusPolicy(Qt::TabFocus);
-#else
- setFocusPolicy(Qt::StrongFocus);
-#endif
- setAcceptedMouseButtons(Qt::LeftButton);
-#if QT_CONFIG(quicktemplates2_multitouch)
- setAcceptTouchEvents(true);
-#endif
-#if QT_CONFIG(cursor)
- setCursor(Qt::ArrowCursor);
-#endif
+ Q_D(QQuickAbstractButton);
+ d->init();
}
QQuickAbstractButton::QQuickAbstractButton(QQuickAbstractButtonPrivate &dd, QQuickItem *parent)
: QQuickControl(dd, parent)
{
- setActiveFocusOnTab(true);
-#ifdef Q_OS_MACOS
- setFocusPolicy(Qt::TabFocus);
-#else
- setFocusPolicy(Qt::StrongFocus);
-#endif
- setAcceptedMouseButtons(Qt::LeftButton);
-#if QT_CONFIG(quicktemplates2_multitouch)
- setAcceptTouchEvents(true);
-#endif
-#if QT_CONFIG(cursor)
- setCursor(Qt::ArrowCursor);
-#endif
+ Q_D(QQuickAbstractButton);
+ d->init();
}
QQuickAbstractButton::~QQuickAbstractButton()