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)
 

Typedef Documentation

◆ QSettingsPtr

typedef QSharedPointer<QSettings> QSettingsPtr

Definition at line 31 of file kswitchlanguagedialog_p.cpp.

Function Documentation

◆ getApplicationSpecificLanguage()

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

Definition at line 43 of file kswitchlanguagedialog_p.cpp.

44{
46 settings->beginGroup(QStringLiteral("Language"));
47 //qDebug() << "our language" << settings->value(qAppName(), defaultCode).toByteArray();
48 return settings->value(qAppName(), defaultCode).toByteArray();
49}
static QSettingsPtr localeOverridesSettings()

References localeOverridesSettings().

◆ initializeLanguages()

static void initializeLanguages ( )
static

Definition at line 63 of file kswitchlanguagedialog_p.cpp.

64{
65 const QByteArray languageCode = getApplicationSpecificLanguage();
66
67 if (!languageCode.isEmpty()) {
68 QByteArray languages = qgetenv("LANGUAGE");
69 if (languages.isEmpty()) {
70 qputenv("LANGUAGE", languageCode);
71 } else {
72 QByteArray ba(languageCode);
73 ba.append(":");
74 ba.append(languages);
75 qputenv("LANGUAGE", ba);
76 }
77 }
78 //qDebug() << ">>>>>>>>>>>>>> LANGUAGE" << qgetenv("LANGUAGE");
79 //qDebug() << ">>>>>>>>>>>>>> DATADIRS" << qgetenv("XDG_DATA_DIRS");
80}
static QByteArray getApplicationSpecificLanguage(const QByteArray &defaultCode=QByteArray())

References getApplicationSpecificLanguage().

◆ localeOverridesSettings()

static QSettingsPtr localeOverridesSettings ( )
static

Definition at line 33 of file kswitchlanguagedialog_p.cpp.

34{
35 const QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
36 const QDir configDir(configPath);
37 if (!configDir.exists()) {
38 configDir.mkpath(QStringLiteral("."));
39 }
40 return QSettingsPtr(new QSettings(configPath + QStringLiteral("/klanguageoverridesrc"), QSettings::IniFormat));
41}
QSharedPointer< QSettings > QSettingsPtr

◆ setApplicationSpecificLanguage()

static void setApplicationSpecificLanguage ( const QByteArray & languageCode)
static

Definition at line 51 of file kswitchlanguagedialog_p.cpp.

52{
54 settings->beginGroup(QStringLiteral("Language"));
55
56 if (languageCode.isEmpty()) {
57 settings->remove(qAppName());
58 } else {
59 settings->setValue(qAppName(), languageCode);
60 }
61}

References localeOverridesSettings().