summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp
diff options
context:
space:
mode:
authorKevin Krammer <kevin.krammer.qnx@kdab.com>2012-03-27 17:43:43 +0200
committerQt by Nokia <qt-info@nokia.com>2012-03-30 11:47:55 +0200
commit831943d7f12addef79fb536e5550da0f72480217 (patch)
tree2b0d8bd1287c51e49bfbc6bfe59316c75d40d84a /src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp
parent724e0e20aecb3ac20601c9e7a29e1041a24e2214 (diff)
Separate virtual keyboard interface and implementation
Allows us to create a BPS based implementation and drop it in without further changes to users of the interface. Change-Id: I16313717e1200d717c330cbb18c3314567af51c2 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Diffstat (limited to 'src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp')
-rw-r--r--src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp103
1 files changed, 103 insertions, 0 deletions
diff --git a/src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp b/src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp
new file mode 100644
index 0000000000..0ac1af6d2f
--- /dev/null
+++ b/src/plugins/platforms/qnx/qqnxabstractvirtualkeyboard.cpp
@@ -0,0 +1,103 @@
+/***************************************************************************
+**
+** Copyright (C) 2011 - 2012 Research In Motion
+** Contact: http://www.qt-project.org/
+**
+** This file is part of the plugins of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser General Public
+** License version 2.1 as published by the Free Software Foundation and
+** appearing in the file LICENSE.LGPL included in the packaging of this
+** file. Please review the following information to ensure the GNU Lesser
+** General Public License version 2.1 requirements will be met:
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License version 3.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of this
+** file. Please review the following information to ensure the GNU General
+** Public License version 3.0 requirements will be met:
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "qqnxabstractvirtualkeyboard.h"
+
+QT_BEGIN_NAMESPACE
+
+QQnxAbstractVirtualKeyboard::QQnxAbstractVirtualKeyboard(QObject *parent)
+ : QObject(parent)
+ , m_height(0)
+ , m_visible(false)
+ , m_locale(QLocale::system())
+ , m_keyboardMode(Default)
+{
+}
+
+void QQnxAbstractVirtualKeyboard::setKeyboardMode(KeyboardMode mode)
+{
+ if (mode == m_keyboardMode)
+ return;
+
+ m_keyboardMode = mode;
+
+ applyKeyboardMode(mode);
+}
+
+void QQnxAbstractVirtualKeyboard::setHeight(int height)
+{
+ if (height == m_height)
+ return;
+
+ const int effectiveHeight = this->height();
+
+ m_height = height;
+
+ if (effectiveHeight != this->height())
+ emit heightChanged(this->height());
+}
+
+void QQnxAbstractVirtualKeyboard::setVisible(bool visible)
+{
+ if (visible == m_visible)
+ return;
+
+ const int effectiveHeight = height();
+
+ m_visible = visible;
+
+ emit visibilityChanged(visible);
+
+ if (effectiveHeight != height())
+ emit heightChanged(height());
+}
+
+void QQnxAbstractVirtualKeyboard::setLocale(const QLocale &locale)
+{
+ if (locale == m_locale)
+ return;
+
+ m_locale = locale;
+
+ emit localeChanged(locale);
+}
+
+QT_END_NAMESPACE