Krita Source Code Documentation
Loading...
Searching...
No Matches
kswitchlanguagedialog_p.cpp File Reference
#include <QApplication>
#include <QDialogButtonBox>
#include <QDir>
#include <QLayout>
#include <QLabel>
#include <QPushButton>
#include <QEvent>
#include <QMap>
#include <QSettings>
#include <QSharedPointer>
#include <QStandardPaths>
#include <QDebug>
#include "kswitchlanguagedialog_p.h"
#include <klanguagebutton.h>
#include <klocalizedstring.h>
#include <kmessagebox.h>

Go to the source code of this file.

Classes

class  KDEPrivate::KisKSwitchLanguageDialogPrivate
 
struct  KDEPrivate::LanguageRowData
 

Namespaces

namespace  KDEPrivate
 

Typedefs

typedef QSharedPointer< QSettings > QSettingsPtr
 

Functions

static QByteArray getApplicationSpecificLanguage (const QByteArray &defaultCode=QByteArray())
 
static void initializeLanguages ()
 
static QSettingsPtr localeOverridesSettings ()
 
static void setApplicationSpecificLanguage (const QByteArray &languageCode)
 
static bool KDEPrivate::stripCountryCode (QString *languageCode)
 

Variables

static constexpr bool ALLOW_FALLBACK_LANGUAGES = true
 

Typedef Documentation

◆ QSettingsPtr

typedef QSharedPointer<QSettings> QSettingsPtr

Definition at line 44 of file kswitchlanguagedialog_p.cpp.

Function Documentation

◆ getApplicationSpecificLanguage()

static QByteArray getApplicationSpecificLanguage ( const QByteArray & defaultCode = QByteArray())
static

Definition at line 56 of file kswitchlanguagedialog_p.cpp.

57{
59 settings->beginGroup(QStringLiteral("Language"));
60 //qDebug() << "our language" << settings->value(qAppName(), defaultCode).toByteArray();
61 return settings->value(qAppName(), defaultCode).toByteArray();
62}
static QSettingsPtr localeOverridesSettings()

References localeOverridesSettings().

◆ initializeLanguages()

static void initializeLanguages ( )
static

Definition at line 76 of file kswitchlanguagedialog_p.cpp.

77{
78 const QByteArray languageCode = getApplicationSpecificLanguage();
79
80 if (!languageCode.isEmpty()) {
81 QByteArray languages = qgetenv("LANGUAGE");
82 if (languages.isEmpty()) {
83 qputenv("LANGUAGE", languageCode);
84 } else {
85 QByteArray ba(languageCode);
86 ba.append(":");
87 ba.append(languages);
88 qputenv("LANGUAGE", ba);
89 }
90 }
91 //qDebug() << ">>>>>>>>>>>>>> LANGUAGE" << qgetenv("LANGUAGE");
92 //qDebug() << ">>>>>>>>>>>>>> DATADIRS" << qgetenv("XDG_DATA_DIRS");
93}
static QByteArray getApplicationSpecificLanguage(const QByteArray &defaultCode=QByteArray())

References getApplicationSpecificLanguage().

◆ localeOverridesSettings()

static QSettingsPtr localeOverridesSettings ( )
static

Definition at line 46 of file kswitchlanguagedialog_p.cpp.

47{
48 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
49 const QDir configDir(configPath);
50 if (!configDir.exists()) {
51 configDir.mkpath(QStringLiteral("."));
52 }
53 return QSettingsPtr(new QSettings(configPath + QStringLiteral("/klanguageoverridesrc"), QSettings::IniFormat));
54}
QSharedPointer< QSettings > QSettingsPtr

◆ setApplicationSpecificLanguage()

static void setApplicationSpecificLanguage ( const QByteArray & languageCode)
static

Definition at line 64 of file kswitchlanguagedialog_p.cpp.

65{
67 settings->beginGroup(QStringLiteral("Language"));
68
69 if (languageCode.isEmpty()) {
70 settings->remove(qAppName());
71 } else {
72 settings->setValue(qAppName(), languageCode);
73 }
74}

References localeOverridesSettings().

Variable Documentation

◆ ALLOW_FALLBACK_LANGUAGES

constexpr bool ALLOW_FALLBACK_LANGUAGES = true
staticconstexpr

Definition at line 38 of file kswitchlanguagedialog_p.cpp.