aboutsummaryrefslogtreecommitdiffstats
path: root/src/virtualkeyboard/t9writeworker.h
diff options
context:
space:
mode:
authorJarkko Koivikko <jarkko.koivikko@code-q.fi>2017-04-17 11:04:04 +0300
committerJarkko Koivikko <jarkko.koivikko@code-q.fi>2017-07-08 19:28:08 +0000
commit7f780a44c0d5ccc65880666dcf388ed6bd3769a8 (patch)
tree7a139b5c4478154ba3a509c3ca2b4bf0d96203ff /src/virtualkeyboard/t9writeworker.h
parent0bf1c6ad9e0b5572b8ea99f5fc8945dade5675b7 (diff)
Add support for T9 Write CJK
This change adds support for handwriting in Simplified Chinese. The integration is based on T9 Write CJK SDK v7.8.1. [ChangeLog] Added support for CJK (Chinese/Japanese/Korean) handwriting via T9 Write. Change-Id: I18481cfd897987ecb471c49ecfcac62ea0c3489c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
Diffstat (limited to 'src/virtualkeyboard/t9writeworker.h')
-rw-r--r--src/virtualkeyboard/t9writeworker.h24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/virtualkeyboard/t9writeworker.h b/src/virtualkeyboard/t9writeworker.h
index 23a4cf02..5dc8c0d9 100644
--- a/src/virtualkeyboard/t9writeworker.h
+++ b/src/virtualkeyboard/t9writeworker.h
@@ -41,7 +41,8 @@
#include <QMap>
#include <QVector>
-#include "decuma_hwr.h"
+#include "t9write.h"
+#include "t9writedictionary.h"
namespace QtVirtualKeyboard {
@@ -59,6 +60,7 @@ public:
protected:
DECUMA_SESSION *decumaSession;
+ bool cjk;
private:
QSemaphore runSema;
@@ -68,16 +70,20 @@ class T9WriteDictionaryTask : public T9WriteTask
{
Q_OBJECT
public:
- explicit T9WriteDictionaryTask(const QString &fileUri,
- const DECUMA_MEM_FUNCTIONS &memFuncs);
+ explicit T9WriteDictionaryTask(QSharedPointer<T9WriteDictionary> dictionary,
+ const QString &dictionaryFileName,
+ bool convertDictionary,
+ const DECUMA_SRC_DICTIONARY_INFO &dictionaryInfo);
void run();
- const QString fileUri;
- const DECUMA_MEM_FUNCTIONS &memFuncs;
+ QSharedPointer<T9WriteDictionary> dictionary;
+ const QString dictionaryFileName;
+ bool convertDictionary;
+ const DECUMA_SRC_DICTIONARY_INFO dictionaryInfo;
signals:
- void completed(const QString &fileUri, void *dictionary);
+ void completed(QSharedPointer<T9WriteDictionary> dictionary);
};
class T9WriteRecognitionResult
@@ -87,12 +93,14 @@ class T9WriteRecognitionResult
public:
explicit T9WriteRecognitionResult(int id, int maxResults, int maxCharsPerWord);
+ DECUMA_STATUS status;
QVector<DECUMA_HWR_RESULT> results;
DECUMA_UINT16 numResults;
int instantGesture;
const int id;
const int maxResults;
const int maxCharsPerWord;
+
private:
QVector<DECUMA_UNICODE> _chars;
QVector<DECUMA_INT16> _symbolChars;
@@ -135,6 +143,7 @@ public:
signals:
void resultsAvailable(const QVariantList &resultList);
+ void recognitionError(int status);
private:
QSharedPointer<T9WriteRecognitionResult> result;
@@ -144,7 +153,7 @@ class T9WriteWorker : public QThread
{
Q_OBJECT
public:
- explicit T9WriteWorker(DECUMA_SESSION *decumaSession, QObject *parent = 0);
+ explicit T9WriteWorker(DECUMA_SESSION *decumaSession, const bool cjk, QObject *parent = 0);
~T9WriteWorker();
void addTask(QSharedPointer<T9WriteTask> task);
@@ -176,6 +185,7 @@ private:
QMutex taskLock;
DECUMA_SESSION *decumaSession;
QAtomicInteger<bool> abort;
+ const bool cjk;
};
} // namespace QtVirtualKeyboard