summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2012-03-23 13:48:02 +0100
committerQt by Nokia <qt-info@nokia.com>2012-03-31 21:27:19 +0200
commitc039ad21b5b4435c657a18ffe1d940067e01bf7d (patch)
tree0429a2f391de004c53082ca9afd1a857b2793b46
parent989b7f2337aa45de2cbbf34c634364b4469ee342 (diff)
Fix inputMask accessor of QLineControl.
Do not append blank character if it is the default. Task-number: QTBUG-20834 Change-Id: I17f6ac4058f295f25ff49f33c41bd9ee40b75811 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
-rw-r--r--src/widgets/widgets/qwidgetlinecontrol_p.h13
-rw-r--r--tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp8
2 files changed, 16 insertions, 5 deletions
diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h
index ebc5758d4f..88b816d1b6 100644
--- a/src/widgets/widgets/qwidgetlinecontrol_p.h
+++ b/src/widgets/widgets/qwidgetlinecontrol_p.h
@@ -277,7 +277,18 @@ public:
bool hasAcceptableInput() const { return hasAcceptableInput(m_text); }
bool fixup();
- QString inputMask() const { return m_maskData ? m_inputMask + QLatin1Char(';') + m_blank : QString(); }
+ QString inputMask() const
+ {
+ QString mask;
+ if (m_maskData) {
+ mask = m_inputMask;
+ if (m_blank != QLatin1Char(' ')) {
+ mask += QLatin1Char(';');
+ mask += m_blank;
+ }
+ }
+ return mask;
+ }
void setInputMask(const QString &mask)
{
parseInputMask(mask);
diff --git a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp
index 384c5c2861..f2a37d81b5 100644
--- a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp
+++ b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp
@@ -665,14 +665,14 @@ void tst_QLineEdit::inputMask_data()
QTest::newRow("nul 2") << QString() << QString();
// try different masks
- QTest::newRow("mask 1") << QString("000.000.000.000") << QString("000.000.000.000; ");
+ QTest::newRow("mask 1") << QString("000.000.000.000") << QString("000.000.000.000");
QTest::newRow("mask 2") << QString("000.000.000.000;#") << QString("000.000.000.000;#");
- QTest::newRow("mask 3") << QString("AAA.aa.999.###;") << QString("AAA.aa.999.###; ");
- QTest::newRow("mask 4") << QString(">abcdef<GHIJK") << QString(">abcdef<GHIJK; ");
+ QTest::newRow("mask 3") << QString("AAA.aa.999.###;") << QString("AAA.aa.999.###");
+ QTest::newRow("mask 4") << QString(">abcdef<GHIJK") << QString(">abcdef<GHIJK");
// set an invalid input mask...
// the current behaviour is that this exact (faulty) string is returned.
- QTest::newRow("invalid") << QString("ABCDEFGHIKLMNOP;") << QString("ABCDEFGHIKLMNOP; ");
+ QTest::newRow("invalid") << QString("ABCDEFGHIKLMNOP;") << QString("ABCDEFGHIKLMNOP");
// verify that we can unset the mask again
QTest::newRow("unset") << QString("") << QString();