aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquicktextinput_p_p.h
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2015-06-08 13:59:09 +0200
committerSimon Hausmann <simon.hausmann@theqtcompany.com>2015-06-15 09:31:01 +0000
commit2cb853c429db2fb5cdb54e9033ca48ee6e9c9478 (patch)
tree4de3993af82edb08d0939a6745f878bbdd1de06c /src/quick/items/qquicktextinput_p_p.h
parent9eb4b013f9ceea1d667ddc47ee58a55a4efa5070 (diff)
QQuickTextInput: move paddings into extraData
Task-number: QTBUG-46529 Change-Id: Ifa072dccdf2dc8c52c6865d13ccf1930c92ec51d Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Diffstat (limited to 'src/quick/items/qquicktextinput_p_p.h')
-rw-r--r--src/quick/items/qquicktextinput_p_p.h36
1 files changed, 17 insertions, 19 deletions
diff --git a/src/quick/items/qquicktextinput_p_p.h b/src/quick/items/qquicktextinput_p_p.h
index 25ee2e79ce..387eb2934c 100644
--- a/src/quick/items/qquicktextinput_p_p.h
+++ b/src/quick/items/qquicktextinput_p_p.h
@@ -47,6 +47,7 @@
#include <QtGui/qpalette.h>
#include <QtGui/qtextlayout.h>
#include <QtGui/qstylehints.h>
+#include <private/qlazilyallocated_p.h>
#include "qplatformdefs.h"
@@ -71,18 +72,24 @@ public:
typedef QQuickTextInput Public;
+ struct ExtraData {
+ ExtraData();
+
+ qreal padding;
+ qreal topPadding;
+ qreal leftPadding;
+ qreal rightPadding;
+ qreal bottomPadding;
+ bool explicitTopPadding : 1;
+ bool explicitLeftPadding : 1;
+ bool explicitRightPadding : 1;
+ bool explicitBottomPadding : 1;
+ };
+ QLazilyAllocated<ExtraData> extra;
+
QQuickTextInputPrivate()
: hscroll(0)
, vscroll(0)
- , padding(0)
- , topPadding(0)
- , leftPadding(0)
- , rightPadding(0)
- , bottomPadding(0)
- , explicitTopPadding(false)
- , explicitLeftPadding(false)
- , explicitRightPadding(false)
- , explicitBottomPadding(false)
, cursorItem(0)
, textNode(0)
, m_maskData(0)
@@ -198,16 +205,6 @@ public:
qreal hscroll;
qreal vscroll;
- qreal padding;
- qreal topPadding;
- qreal leftPadding;
- qreal rightPadding;
- qreal bottomPadding;
- bool explicitTopPadding;
- bool explicitLeftPadding;
- bool explicitRightPadding;
- bool explicitBottomPadding;
-
QTextLayout m_textLayout;
QString m_text;
QString m_inputMask;
@@ -439,6 +436,7 @@ public:
qreal getImplicitWidth() const Q_DECL_OVERRIDE;
+ inline qreal padding() const { return extra.isAllocated() ? extra->padding : 0.0; }
void setTopPadding(qreal value, bool reset = false);
void setLeftPadding(qreal value, bool reset = false);
void setRightPadding(qreal value, bool reset = false);