vcal-setup.cc
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include "options.h"
00031
00032
00033 #include <qtabwidget.h>
00034 #include <qcheckbox.h>
00035 #include <qbuttongroup.h>
00036 #include <qcombobox.h>
00037
00038 #include <kconfig.h>
00039 #include <kurlrequester.h>
00040
00041 #include "korganizerConduit.h"
00042 #include "vcal-factorybase.h"
00043 #include "vcal-setup.h"
00044
00045
00046 VCalWidgetSetupBase::VCalWidgetSetupBase(QWidget *w, const char *n) :
00047 ConduitConfigBase(w,n),
00048 fConfigWidget(new VCalWidget(w))
00049 {
00050 FUNCTIONSETUP;
00051 fWidget=fConfigWidget;
00052
00053 fConfigWidget->fCalendarFile->setMode( KFile::File | KFile::LocalOnly );
00054 fConfigWidget->fCalendarFile->setFilter("*.vcs *.ics|ICalendars\n*.*|All Files (*.*)");
00055
00056 #define CM(a,b) connect(fConfigWidget->a,b,this,SLOT(modified()));
00057 CM(fSyncDestination,SIGNAL(clicked(int)));
00058 CM(fCalendarFile,SIGNAL(textChanged(const QString &)));
00059 CM(fArchive,SIGNAL(toggled(bool)));
00060 CM(fConflictResolution,SIGNAL(activated(int)));
00061 #undef CM
00062 }
00063
00064 VCalWidgetSetupBase::~VCalWidgetSetupBase()
00065 {
00066 FUNCTIONSETUP;
00067 }
00068
00069 void VCalWidgetSetupBase::commit(KConfig *fConfig)
00070 {
00071 FUNCTIONSETUP;
00072 if (!fConfig) return;
00073 KConfigGroupSaver s(fConfig,configGroup());
00074
00075 fConfig->writeEntry(VCalConduitFactoryBase::calendarType,
00076 fConfigWidget->fSyncDestination->id(
00077 fConfigWidget->fSyncDestination->selected()));
00078 fConfig->writePathEntry(VCalConduitFactoryBase::calendarFile,
00079 fConfigWidget->fCalendarFile->url());
00080
00081 fConfig->writeEntry(VCalConduitFactoryBase::archive,
00082 fConfigWidget->fArchive->isChecked());
00083
00084
00085 fConfig->writeEntry(VCalConduitFactoryBase::conflictResolution,
00086 fConfigWidget->fConflictResolution->currentItem()+SyncAction::eCROffset);
00087
00088 unmodified();
00089 }
00090
00091 void VCalWidgetSetupBase::load(KConfig *fConfig)
00092 {
00093 FUNCTIONSETUP;
00094
00095 if (!fConfig) return;
00096 KConfigGroupSaver s(fConfig, configGroup());
00097
00098
00099 fConfigWidget->fSyncDestination->setButton(
00100 fConfig->readNumEntry(VCalConduitFactoryBase::calendarType, 0));
00101 fConfigWidget->fCalendarFile->setURL( fConfig->readPathEntry(
00102 VCalConduitFactoryBase::calendarFile,
00103 CSL1("$HOME/.kde/share/apps/korganizer/calendar.ics")));
00104
00105 fConfigWidget->fArchive->setChecked(
00106 fConfig->readBoolEntry(VCalConduitFactoryBase::archive, true));
00107
00108
00109 fConfigWidget->fConflictResolution->setCurrentItem(
00110 fConfig->readNumEntry(VCalConduitFactoryBase::conflictResolution,
00111 SyncAction::eUseGlobalSetting)-SyncAction::eCROffset);
00112
00113 unmodified();
00114 }
00115
00116 VCalWidgetSetup::VCalWidgetSetup(QWidget *w, const char *n) :
00117 VCalWidgetSetupBase(w,n)
00118 {
00119 UIDialog::addAboutPage(fConfigWidget->tabWidget, VCalConduitFactoryBase::about());
00120 fConfigWidget->fSyncDestination->setTitle(i18n("Calendar Destination"));
00121 fConduitName=i18n("Calendar");
00122 fGroupName=VCalConduitFactoryBase::getGroup();
00123
00124 }
00125
00126 ConduitConfigBase *VCalWidgetSetup::create(QWidget *w,const char *n)
00127 {
00128 return new VCalWidgetSetup(w,n);
00129 }
This file is part of the documentation for kpilot Library Version 3.2.2.