1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
// Copyright (C) 2019 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QLoggingCategory>
#include <QJsonDocument>
#include <QJsonObject>
#include <QFile>
#include <QDir>
#include "handlelanguagechange.h"
namespace {
const QString KFilePath = "/x11vkbwrapper_language/";
const QString KFilePathName = KFilePath + "currentLang.json";
}
Q_LOGGING_CATEGORY(lcHandleLanguageChange, "qt.virtualkeyboard.tests.manual.x11vkbwrapper.handlelanguagechange")
/**
* @brief HandleJson::HandleJson
* Class is only for testing purpose
* @param parent
*/
HandleLanguageChange::HandleLanguageChange(QObject *parent) : QObject(parent)
{
}
/**
* @brief HandleLanguageChange::languageChanged
* Signal emitted on QML when a language is changed
* @param language
*/
void HandleLanguageChange::languageChanged(const QString &language) const
{
qCDebug(lcHandleLanguageChange) << Q_FUNC_INFO << QDir::homePath();
QJsonDocument langDoc;
QJsonObject langObj;
langObj["language"] = language;
langDoc.setObject(langObj);
if (!QDir(QDir::homePath() + KFilePath).exists()) {
QDir dir;
dir.mkdir(QDir::homePath() + KFilePath);
}
QFile jsonFile(QDir::homePath() + KFilePathName);
jsonFile.open(QFile::WriteOnly);
jsonFile.write(langDoc.toJson());
jsonFile.flush();
jsonFile.close();
}
|