OSDN Git Service

Merge KITA-KDE4
[kita/kita.git] / kita / src / prefs / writeprefpage.cpp
diff --git a/kita/src/prefs/writeprefpage.cpp b/kita/src/prefs/writeprefpage.cpp
new file mode 100644 (file)
index 0000000..f026d7b
--- /dev/null
@@ -0,0 +1,60 @@
+/***************************************************************************
+*   Copyright (C) 2003 by Hideki Ikemoto                                  *
+*   ikemo@users.sourceforge.jp                                            *
+*                                                                         *
+*   This program is free software; you can redistribute it and/or modify  *
+*   it under the terms of the GNU General Public License as published by  *
+*   the Free Software Foundation; either version 2 of the License, or     *
+*   (at your option) any later version.                                   *
+***************************************************************************/
+
+#include "writeprefpage.h"
+
+#include "libkita/writeconfig.h"
+
+using namespace Kita;
+
+WritePrefPage::WritePrefPage(QWidget* parent) : AbstractPrefPage(parent)
+{
+    setupUi(this);
+    load();
+    connect(kcfg_DefaultName, SIGNAL(textChanged(const QString &)),
+            SIGNAL(changed()));
+    connect(kcfg_DefaultMail, SIGNAL(textChanged(const QString &)),
+            SIGNAL(changed()));
+    connect(kcfg_DefaultNameUseAlways, SIGNAL(toggled(bool)),
+            SIGNAL(changed()));
+    connect(kcfg_DefaultSage, SIGNAL(toggled(bool)), SIGNAL(changed()));
+    connect(kcfg_DefaultSage, SIGNAL(toggled(bool)), SLOT(slotToggled(bool)));
+}
+
+void WritePrefPage::apply()
+{
+    WriteConfig::setDefaultName(kcfg_DefaultName->text());
+    WriteConfig::setDefaultNameUseAlways(
+            kcfg_DefaultNameUseAlways->isChecked());
+    WriteConfig::setDefaultMail(kcfg_DefaultMail->text());
+    WriteConfig::setDefaultSage(kcfg_DefaultSage->isChecked());
+}
+
+void WritePrefPage::load()
+{
+    kcfg_DefaultName->setText(WriteConfig::defaultName());
+    kcfg_DefaultNameUseAlways->setChecked(WriteConfig::defaultNameUseAlways());
+    kcfg_DefaultMail->setText(WriteConfig::defaultMail());
+    bool isSage = WriteConfig::defaultSage();
+    kcfg_DefaultMail->setReadOnly(isSage);
+    kcfg_DefaultSage->setChecked(isSage);
+}
+
+void WritePrefPage::reset()
+{
+    WriteConfig::self()->useDefaults(true);
+    load();
+    WriteConfig::self()->useDefaults(false);
+}
+
+void WritePrefPage::slotToggled(bool on)
+{
+    kcfg_DefaultMail->setReadOnly(on);
+}