summaryrefslogtreecommitdiffstats
path: root/korganizer/plugins/hebrew/configdialog.cpp
blob: aad50a680b956dd9ee491d9f88aa7e9ce109399f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
/*
    This file is part of KOrganizer.
    Copyright (c) 2003 Jonathan Singer <jsinger@leeta.net>

    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.

    This program 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 General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#include "configdialog.h"
#include "configdialog.moc"
#include <klocale.h>
#include <qlayout.h>
#include <kapplication.h>
#include <kglobal.h>
#include <kconfig.h>
#include <kstandarddirs.h>
#include <ksimpleconfig.h>

ConfigDialog::ConfigDialog(QWidget * parent):KDialogBase(Plain, i18n("Configure Holidays"), Ok|Cancel, Ok,
            parent)
{
  QFrame *topFrame = plainPage();
  QVBoxLayout *topLayout =
    new QVBoxLayout(topFrame, 0, spacingHint());

  israel_box = new QCheckBox(topFrame);
  israel_box->setText(i18n("Use Israeli holidays"));
  topLayout->addWidget(israel_box);

  parsha_box = new QCheckBox(topFrame);
  parsha_box->setText(i18n("Show weekly parsha"));
  topLayout->addWidget(parsha_box);

  omer_box = new QCheckBox(topFrame);
  omer_box->setText(i18n("Show day of Omer"));
  topLayout->addWidget(omer_box);

  chol_box = new QCheckBox(topFrame);
  chol_box->setText(i18n("Show Chol HaMoed"));
  topLayout->addWidget(chol_box);

  load();
}

ConfigDialog::~ConfigDialog()
{
}

void ConfigDialog::load()
{
  KConfig config("korganizerrc", true, false); // Open read-only, no kdeglobals

  config.setGroup("Calendar/Hebrew Calendar Plugin");
  israel_box->setChecked(config.
                         readBoolEntry("Israel",
                                       (KGlobal::locale()->
                                        country() == ".il")));
  parsha_box->setChecked(config.readBoolEntry("Parsha", true));
  chol_box->setChecked(config.readBoolEntry("Chol_HaMoed", true));
  omer_box->setChecked(config.readBoolEntry("Omer", true));

}

void ConfigDialog::save()
{
  KConfig config("korganizerrc", false, false); // Open read-write, no kdeglobals

  config.setGroup("Calendar/Hebrew Calendar Plugin");
  config.writeEntry("Israel", israel_box->isChecked());
  config.writeEntry("Parsha", parsha_box->isChecked());
  config.writeEntry("Chol_HaMoed", chol_box->isChecked());
  config.writeEntry("Omer", omer_box->isChecked());
  config.sync();
}

void ConfigDialog::slotOk()
{
  save();

  accept();
}