Files
Renderive/YSGraphic_Core/base/VirtualKeyBoard/InputCore.h
T
2026-06-16 13:33:27 +08:00

50 lines
1.6 KiB
C++

#pragma once
#include <QObject>
#include <QDebug>
#include <QDir>
#include <QFile>
#include "googlepinyin/atomdictbase.h"
#include "googlepinyin/dictbuilder.h"
#include "googlepinyin/dictdef.h"
#include "googlepinyin/dictlist.h"
#include "googlepinyin/dicttrie.h"
#include "googlepinyin/lpicache.h"
#include "googlepinyin/matrixsearch.h"
#include "googlepinyin/mystdlib.h"
#include "googlepinyin/ngram.h"
#include "googlepinyin/pinyinime.h"
#include "googlepinyin/searchutility.h"
#include "googlepinyin/spellingtable.h"
#include "googlepinyin/spellingtrie.h"
#include "googlepinyin/splparser.h"
#include "googlepinyin/sync.h"
#include "googlepinyin/userdict.h"
#include "googlepinyin/utf16char.h"
#include "googlepinyin/utf16reader.h"
using namespace ime_pinyin;
namespace YSG {
class InputCore : public QObject {
Q_OBJECT
Q_PROPERTY(bool m_able READ getEnable WRITE setEnable NOTIFY signal_input_able)
public:
explicit InputCore(QObject *parent = nullptr);
~InputCore() override;
bool init(int max_spell_len = 64, int max_out_len = 64);
void deinit();
unsigned int search(const QString &spell);
int cur_search_pos();
void reset_search();
bool getEnable();
void setEnable(bool able);
QStringList get_candidate(unsigned int cnadnum);
signals:
void signal_input_able(bool);
private:
bool m_able = false;
int m_spell_len;
int m_out_len;
const QString dict_path = "dict_pinyin.dat";
const QString dict_user_path = "dict_pinyin_user.dat";
};
}