File indexing completed on 2024-03-24 16:04:11
0001 /* 0002 SPDX-FileCopyrightText: 2012 Milian Wolff <mail@milianw.de> 0003 0004 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #include "phpdocsconfig.h" 0008 0009 #include <KLocalizedString> 0010 #include <KPluginFactory> 0011 #include <KConfigGroup> 0012 #include <KUrlRequester> 0013 #include <KAboutData> 0014 #include <KFile> 0015 #include <ksettings/Dispatcher> 0016 0017 #include "phpdocssettings.h" 0018 #include "ui_phpdocsconfig.h" 0019 0020 K_PLUGIN_FACTORY_WITH_JSON(PhpDocsConfigFactory, "kcm_kdevphpdocs.json", registerPlugin<PhpDocsConfig>();) 0021 0022 PhpDocsConfig::PhpDocsConfig(QWidget *parent, const QVariantList &args) 0023 : KCModule(parent, args) 0024 { 0025 auto * l = new QVBoxLayout( this ); 0026 0027 QWidget* w = new QWidget; 0028 m_configWidget = new Ui::PhpDocsConfigUI; 0029 m_configWidget->setupUi( w ); 0030 0031 m_configWidget->kcfg_phpDocLocation->setMode( KFile::Directory | KFile::ExistingOnly ); 0032 0033 l->addWidget( w ); 0034 0035 addConfig( PhpDocsSettings::self(), w ); 0036 0037 load(); 0038 } 0039 0040 void PhpDocsConfig::save() 0041 { 0042 KCModule::save(); 0043 0044 // looks like we have to force a write so readConfig() can get the new values 0045 PhpDocsSettings::self()->save(); 0046 0047 KSettings::Dispatcher::reparseConfiguration( componentData().componentName() ); 0048 } 0049 0050 PhpDocsConfig::~PhpDocsConfig() 0051 { 0052 delete m_configWidget; 0053 } 0054 0055 #include "phpdocsconfig.moc" 0056 0057 #include "moc_phpdocsconfig.cpp"