1#ifndef MyLanguageMODEL_H
2#define MyLanguageMODEL_H
4#include <QCoreApplication>
8#include <QListIterator>
9#include <QStandardItemModel>
10#include <QAbstractListModel>
23 #include <QAbstractItemView>
24 #include <QAbstractItemView>
25 #include <QHeaderView>
30#include "ui_MainWindow.h"
57 Q_INVOKABLE
void addItem(
const QString &thisName,
const QString &thisNameTranslated);
62 int rowCount(
const QModelIndex & parent = QModelIndex())
const;
64 QVariant
data(
const QModelIndex & index,
int role = Qt::DisplayRole)
const;
67 Q_INVOKABLE
void setLanguage(
const QString &thisLanguageName);
69 QStringList
getTsFiles(
const QString &thisFolder);
70 QStringList
getQmFiles(
const QString &thisFolder);
94 QString
getLocalizerCode(
const QString &thisPrefix,
const QString &thisQmFile);
96 QString
getLanguageFile(
const QString &thisLanguageCode,
const QString &thisPath,
const QString &thisPrefix);
98 bool languageMatch(
const QString &thisPrefix,
const QString &thisLang,
const QString &thisQmFile);
100 QString
language(
const QLocale &thisLocale);
122 QHash<int, QByteArray>
roleNames()
const;
126 QQmlEngine &myEngine;
128 QList<MyLanguageData> myItems;
129 static const QMap<QString, QString> s_genericLanguageCodeToName;
130 static const QMap<QString, QString> s_genericLanguageNameToCode;
131 QTranslator *myTranslator =
nullptr;
132 QString myTranslationSource =
"";
133 QString myHelpSource =
"";
134 QString myTransFilePrefix =
"";
135 QString myLanguageCode =
"";
136 QString myLanguageName =
"";
137 QMap<QString, QString> myCurrentQmFiles;
138 QStringList myLanguages;
139 bool isDebugMessage =
false;
140 bool isMainLoaded =
false;
Language Data. /class MyLanguageData.
Abstact Model used for ComboBox. /class MyLanguageModel.
void setTransFilePrefix(const QString &thisTransFilePrefix)
set TransFile Prefix
Q_INVOKABLE void setLanguages()
set Languages
bool getDebugMessage()
get Debug Message
QString getLanguageCode()
get Language Code
QStringList getTsFiles(const QString &thisFolder)
get Ts Files
MyLanguageModel(QObject *parent=nullptr)
My Abstact Model Constructor.
~MyLanguageModel()
Deconstructor.
QString language(const QLocale &thisLocale)
language
QHash< int, QByteArray > roleNames() const
roleNames
Q_INVOKABLE void setLanguageList(const QStringList &thisLanguageList)
set Language List
QStringList getQmFiles(const QString &thisFolder)
get Qm Files
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
data
QString getDefaultLanguageCode()
get Default Language Code
QString getHelpSource()
get Help Source
QString languageName(const QLocale &thisLocale)
language Name used for tr to translate all names
void setTranslationSource(const QString &thisTranslationSource)
set Translation Source
bool getMainLoaded()
get Main Loaded
void setDebugMessage(bool thisState)
set Debug Message
QString getLangCode(const QString &thisString)
get Lang Code
QString getTranslationSource()
get Translation Source
Q_INVOKABLE void addItem(const QString &thisName, const QString &thisNameTranslated)
add Item
void setLanguageCode(const QString &thisLanguageCode)
set Language Code
int rowCount(const QModelIndex &parent=QModelIndex()) const
row Count
Q_INVOKABLE QStringList & getLanguageList()
get Language List
void setMainLoaded(bool thisMainLoaded)
set Main Loaded
QString getLanguageFromFile(const QString &thisPrefix, const QString &thisQmLanguageFile)
get Language From File
QString getLanguageName()
get Language Name
QString translateThis(const QString &thisPhrase)
translate This is required for Translation Files
void setHelpSource(const QString &thisHelpSource)
set Help Source
Q_INVOKABLE void setLanguage(const QString &thisLanguageName)
load Language
QString getLocalizedCodeFromFile(const QString &thisPrefix, const QString &thisQmFile)
get Localized Code From File
MyOrgSettings * mySetting
mySetting
void readLanguage()
read Language
QString getTransFilePrefix()
get TransFile Prefix
Q_INVOKABLE void removeItem(int thisRow)
remove Item
void writeLanguage()
write Language
QString getDefaultLanguageName()
get Default Lanuage Name
void setLanguageName(const QString &thisLanguageName)
set Language Name
QString getLocalizerCode(const QString &thisPrefix, const QString &thisQmFile)
get Localizer Code
QString languageCodeToName(const QString &thisLangageCode)
language Code To Name
QString languageNameToCode(const QString &lang)
language Name to Code Added by Light-Wizzard
@ NameTranslatedRole
Name Translated Role.
QString getLanguageFile(const QString &thisLanguageCode, const QString &thisPath, const QString &thisPrefix)
get Language File
void languageChanged()
language Changed Event
bool languageMatch(const QString &thisPrefix, const QString &thisLang, const QString &thisQmFile)
language Match