aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cerence/xt9/xt9common/xt9kdblayout.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cerence/xt9/xt9common/xt9kdblayout.cpp')
-rw-r--r--src/plugins/cerence/xt9/xt9common/xt9kdblayout.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/plugins/cerence/xt9/xt9common/xt9kdblayout.cpp b/src/plugins/cerence/xt9/xt9common/xt9kdblayout.cpp
new file mode 100644
index 00000000..454b096e
--- /dev/null
+++ b/src/plugins/cerence/xt9/xt9common/xt9kdblayout.cpp
@@ -0,0 +1,40 @@
+// Copyright (C) 2021 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include "xt9kdblayout.h"
+
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
+Xt9KdbLayout::Xt9KdbLayout() :
+ primaryId(0),
+ secondaryId(0),
+ defaultLayoutWidth(0),
+ defaultLayoutHeight(0),
+ supportsExact(false),
+ smartTouchActive(false)
+{
+
+}
+
+void Xt9KdbLayout::serialize(QXmlStreamWriter &writer) const
+{
+ writer.writeStartElement(QStringLiteral("keyboard"));
+ writer.writeAttribute(QStringLiteral("primaryId"), QString::number(primaryId));
+ writer.writeAttribute(QStringLiteral("secondaryId"), QString::number(secondaryId));
+ if (defaultLayoutWidth > 0 && defaultLayoutHeight > 0) {
+ writer.writeAttribute(QStringLiteral("defaultLayoutWidth"), QString::number(defaultLayoutWidth));
+ writer.writeAttribute(QStringLiteral("defaultLayoutHeight"), QString::number(defaultLayoutHeight + 1));
+ }
+ if (supportsExact)
+ writer.writeAttribute(QStringLiteral("supportsExact"), QString(QStringLiteral("%1")).arg(supportsExact));
+ if (smartTouchActive)
+ writer.writeAttribute(QStringLiteral("smartTouchActive"), QString(QStringLiteral("%1")).arg(smartTouchActive));
+ for (const Xt9KdbArea &area : areas) {
+ area.serialize(writer);
+ }
+ writer.writeEndElement();
+}
+
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE