summaryrefslogtreecommitdiffstats
path: root/plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp')
-rw-r--r--plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp38
1 files changed, 26 insertions, 12 deletions
diff --git a/plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp b/plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp
index a1f6a56..f456424 100644
--- a/plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp
+++ b/plugins/qtuitest_widgets/qtwidgets/testdatetimeedit.cpp
@@ -56,7 +56,7 @@ TestDateTimeEdit::TestDateTimeEdit(QObject* _q)
this, SLOT(onDateTimeChanged(QDateTime)));
}
-void TestDateTimeEdit::onDateTimeChanged(QDateTime const& dt)
+void TestDateTimeEdit::onDateTimeChanged(const QDateTime& dt)
{ emit entered(dt); }
QString TestDateTimeEdit::text() const
@@ -70,7 +70,7 @@ QVariant TestDateTimeEdit::value() const
return q->dateTime();
}
-QRegExp dateFormatToRegExp(QString const& format)
+QRegExp dateFormatToRegExp(const QString& format)
{
QString re;
QString fmt = format;
@@ -125,7 +125,7 @@ QRegExp dateFormatToRegExp(QString const& format)
return QRegExp(re);
}
-bool TestDateTimeEdit::canEnter(QVariant const& item) const
+bool TestDateTimeEdit::canEnter(const QVariant& item) const
{
QString text;
if (item.canConvert<QDateTime>()) {
@@ -149,7 +149,7 @@ bool TestDateTimeEdit::canEnter(QVariant const& item) const
return ret;
}
-QPoint TestDateTimeEdit::nextClick( QStringList const& cap,
+QPoint TestDateTimeEdit::nextClick( const QStringList& cap,
QMap<QDateTimeEdit::Section,int> const& capMap,
bool *final, bool *ok)
{
@@ -161,6 +161,7 @@ QPoint TestDateTimeEdit::nextClick( QStringList const& cap,
int activeSection = -1;
int moveUpDown = 0;
int sectionsNeedingChanges = 0;
+ bool ampm = q->displayedSections() & QDateTimeEdit::AmPmSection;
/* Sections, from most to least significant.
* It is necessary to edit most significant first because that can affect
@@ -194,10 +195,23 @@ QPoint TestDateTimeEdit::nextClick( QStringList const& cap,
if (-1 == activeSection) {
bool is_int = false;
int src = text.toInt(&is_int);
- if (!is_int) return ret;
int dest = cap.at(cap_i).toInt(&is_int);
- if (!is_int) return ret;
- moveUpDown = (dest - src);
+ if (!is_int && section == QDateTimeEdit::MonthSection) {
+ if (q->displayFormat().contains("MMMM")) {
+ moveUpDown = QDate::fromString(cap.at(cap_i), "MMMM").month() - QDate::fromString(text, "MMMM").month();
+ } else if (q->displayFormat().contains("MMM")) {
+ moveUpDown = QDate::fromString(cap.at(cap_i), "MMM").month() - QDate::fromString(text, "MMM").month();
+ }
+ } else if (section == QDateTimeEdit::AmPmSection) {
+ if (text.toUpper() == "PM")
+ moveUpDown = -1;
+ else
+ moveUpDown = 1;
+ } else if (section == QDateTimeEdit::HourSection && ampm && dest == 12) {
+ moveUpDown = (src - dest);
+ } else {
+ moveUpDown = (dest - src);
+ }
activeSection = cap_i;
}
}
@@ -263,7 +277,7 @@ QPoint TestDateTimeEdit::nextClick( QStringList const& cap,
return ret;
}
-bool TestDateTimeEdit::enterByMouse(QString const& format, QDateTime const& dt)
+bool TestDateTimeEdit::enterByMouse(const QString& format, const QDateTime& dt)
{
bool final = false;
bool ok = true;
@@ -302,7 +316,7 @@ bool TestDateTimeEdit::enterByMouse(QString const& format, QDateTime const& dt)
return ok;
}
-bool TestDateTimeEdit::enterByKeys(QString const& format, QDateTime const& dt, bool noCommit)
+bool TestDateTimeEdit::enterByKeys(const QString& format, const QDateTime& dt, bool noCommit)
{
if (!hasEditFocus() && !setEditFocus(true)) return false;
TestWidgetsLog() << "got focus";
@@ -317,7 +331,7 @@ bool TestDateTimeEdit::enterByKeys(QString const& format, QDateTime const& dt, b
return setEditFocus(false);
}
-bool TestDateTimeEdit::enter(QVariant const& item, bool noCommit)
+bool TestDateTimeEdit::enter(const QVariant& item, bool noCommit)
{
QString text;
QDateTime dt;
@@ -359,7 +373,7 @@ bool TestDateTimeEdit::enter(QVariant const& item, bool noCommit)
}
bool TestDateTimeEdit::enterSectionByKeys(QDateTimeEdit::Section section,
- QString const& fmt, QDateTime const& dt)
+ const QString& fmt, const QDateTime& dt)
{
using namespace QtUiTest;
@@ -448,7 +462,7 @@ bool TestDateTimeEdit::enterSectionByKeys(QDateTimeEdit::Section section,
TestWidgetsLog() << "Going to enter" << text << "in section" << section;
- foreach (QChar const& c, text) {
+ foreach (const QChar& c, text) {
if (!keyClick(q, asciiToKey(c.toLatin1()))) {
return false;
}