File indexing completed on 2024-05-12 04:57:43
0001 /* 0002 This file is part of Choqok, the KDE micro-blogging client 0003 0004 SPDX-FileCopyrightText: 2010-2012 Andrey Esin <gmlastik@gmail.com> 0005 0006 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0007 */ 0008 0009 #include "tinyarro_ws_config.h" 0010 0011 #include <QComboBox> 0012 #include <QVBoxLayout> 0013 0014 #include <KAboutData> 0015 #include <KLocalizedString> 0016 #include <KPluginFactory> 0017 #include <KSharedConfig> 0018 0019 #include "passwordmanager.h" 0020 0021 #include "tinyarro_ws_settings.h" 0022 0023 K_PLUGIN_CLASS_WITH_JSON(Tinyarro_ws_Config, "choqok_tinyarro_ws_config.json") 0024 0025 Tinyarro_ws_Config::Tinyarro_ws_Config(QWidget *parent, const QVariantList &): 0026 KCModule(parent) 0027 { 0028 QVBoxLayout *layout = new QVBoxLayout(this); 0029 QWidget *wd = new QWidget(this); 0030 wd->setObjectName(QLatin1String("mTinyarro_ws_Ctl")); 0031 ui.setupUi(wd); 0032 addConfig(Tinyarro_ws_Settings::self(), wd); 0033 layout->addWidget(wd); 0034 QString domain = QLatin1String(".ws"); 0035 hostList.insert(QChar(0x27A8) + domain, QLatin1String("xn--ogi.ws")); 0036 hostList.insert(QChar(0x27AF) + domain, QLatin1String("xn--vgi.ws")); 0037 hostList.insert(QChar(0x2794) + domain, QLatin1String("xn--3fi.ws")); 0038 hostList.insert(QChar(0x279E) + domain, QLatin1String("xn--egi.ws")); 0039 hostList.insert(QChar(0x27BD) + domain, QLatin1String("xn--9gi.ws")); 0040 hostList.insert(QChar(0x27B9) + domain, QLatin1String("xn--5gi.ws")); 0041 hostList.insert(QChar(0x2729) + domain, QLatin1String("xn--1ci.ws")); 0042 hostList.insert(QChar(0x273F) + domain, QLatin1String("xn--odi.ws")); 0043 hostList.insert(QChar(0x2765) + domain, QLatin1String("xn--rei.ws")); 0044 hostList.insert(QChar(0x203A) + domain, QLatin1String("xn--cwg.ws")); 0045 hostList.insert(QChar(0x2318) + domain, QLatin1String("xn--bih.ws")); 0046 hostList.insert(QChar(0x203D) + domain, QLatin1String("xn--fwg.ws")); 0047 hostList.insert(QChar(0x2601) + domain, QLatin1String("xn--l3h.ws")); 0048 hostList.insert(QLatin1String("ta.gd"), QLatin1String("ta.gd")); 0049 hostList.insert(i18n("Random host"), QLatin1String("Random")); 0050 0051 for (const QString &host: hostList.keys()) { 0052 ui.kcfg_tinyarro_ws_host->addItem(host); 0053 } 0054 0055 connect(ui.kcfg_tinyarro_ws_host, (void (QComboBox::*)(int))&QComboBox::currentIndexChanged, 0056 this, &Tinyarro_ws_Config::emitChanged); 0057 } 0058 0059 Tinyarro_ws_Config::~Tinyarro_ws_Config() 0060 { 0061 } 0062 0063 void Tinyarro_ws_Config::load() 0064 { 0065 KCModule::load(); 0066 KConfigGroup grp(KSharedConfig::openConfig(), "Tinyarro.ws Shortener"); 0067 ui.kcfg_tinyarro_ws_host->setCurrentIndex(grp.readEntry("tinyarro_ws_host", "0").toInt()); 0068 } 0069 0070 void Tinyarro_ws_Config::save() 0071 { 0072 KCModule::save(); 0073 KConfigGroup grp(KSharedConfig::openConfig(), "Tinyarro.ws Shortener"); 0074 grp.writeEntry("tinyarro_ws_host", ui.kcfg_tinyarro_ws_host->currentIndex()); 0075 grp.writeEntry("tinyarro_ws_host_punny", hostList[ui.kcfg_tinyarro_ws_host->currentText()]); 0076 } 0077 0078 void Tinyarro_ws_Config::emitChanged() 0079 { 0080 Q_EMIT changed(true); 0081 } 0082 0083 #include "moc_tinyarro_ws_config.cpp" 0084 #include "tinyarro_ws_config.moc"