/** * configdialog.cpp * * Copyright (C) 2004 Zack Rusin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301 USA */ #include "configdialog.h" #include "configwidget.h" #include using namespace Sonnet; class ConfigDialog::Private { public: Private( ConfigDialog *parent ) : q( parent ) {} ConfigWidget *ui; ConfigDialog *q; void slotConfigChanged(); }; void ConfigDialog::Private::slotConfigChanged() { emit q->languageChanged( ui->language() ); } ConfigDialog::ConfigDialog(KConfig *config, QWidget *parent) : KDialog(parent), d(new Private(this)) { setObjectName( "SonnetConfigDialog" ); setModal( true ); setCaption( i18n( "Spell Checking Configuration" ) ); setButtons( Help | Ok /*| Apply*/ | Cancel ); setDefaultButton( Ok ); init(config); } ConfigDialog::~ConfigDialog() { delete d; } void ConfigDialog::init(KConfig *config) { d->ui = new ConfigWidget(config, this); setMainWidget(d->ui); setHelp(QString(),"kcontrol/spellchecking"); connect(this, SIGNAL(okClicked()), this, SLOT(slotOk())); /* connect(this, SIGNAL(applyClicked()), this, SLOT(slotApply())); */ connect(d->ui, SIGNAL(configChanged()), this, SLOT(slotConfigChanged())); connect(d->ui, SIGNAL(configChanged()), this, SIGNAL(configChanged())); } void ConfigDialog::slotOk() { d->ui->save(); accept(); } void ConfigDialog::slotApply() { d->ui->save(); } void ConfigDialog::setLanguage( const QString &language ) { d->ui->setLanguage( language ); } QString ConfigDialog::language() const { return d->ui->language(); } #include "moc_configdialog.cpp"