21
21
#include "kalarm.h"
24
#include <QGridLayout>
23
#include "resourceremote.h"
24
#include "resourceremotewidget.moc"
26
#include <kcal/resourcecachedconfig.h>
26
28
#include <kurlrequester.h>
27
29
#include <klocale.h>
28
30
#include <kmessagebox.h>
29
31
#include <kdebug.h>
31
#include <kcal/resourcecachedconfig.h>
33
#include "resourceremote.h"
34
#include "resourceremotewidget.moc"
34
#include <QGridLayout>
37
37
ResourceRemoteConfigWidget::ResourceRemoteConfigWidget(QWidget* parent)
38
: ResourceConfigWidget(parent)
38
: ResourceConfigWidget(parent)
40
QGridLayout* layout = new QGridLayout(this);
42
QLabel* label = new QLabel(i18nc("@label:textbox", "Download from:"), this);
43
layout->addWidget(label, 1, 0);
44
mDownloadUrl = new KUrlRequester(this);
45
mDownloadUrl->setMode(KFile::File);
46
layout->addWidget(mDownloadUrl, 1, 1);
48
label = new QLabel(i18nc("@label:textbox", "Upload to:"), this);
49
layout->addWidget(label, 2, 0);
50
mUploadUrl = new KUrlRequester(this);
51
mUploadUrl->setMode(KFile::File);
52
layout->addWidget(mUploadUrl, 2, 1);
54
mReloadConfig = new KCal::ResourceCachedReloadConfig(this);
55
layout->addWidget(mReloadConfig, 3, 0, 1, 2);
57
mSaveConfig = new KCal::ResourceCachedSaveConfig(this);
58
layout->addWidget(mSaveConfig, 4, 0, 1, 2);
40
QGridLayout* layout = new QGridLayout(this);
42
QLabel* label = new QLabel(i18nc("@label:textbox", "Download from:"), this);
43
layout->addWidget(label, 1, 0);
44
mDownloadUrl = new KUrlRequester(this);
45
mDownloadUrl->setMode(KFile::File);
46
layout->addWidget(mDownloadUrl, 1, 1);
48
label = new QLabel(i18nc("@label:textbox", "Upload to:"), this);
49
layout->addWidget(label, 2, 0);
50
mUploadUrl = new KUrlRequester(this);
51
mUploadUrl->setMode(KFile::File);
52
layout->addWidget(mUploadUrl, 2, 1);
54
mReloadConfig = new KCal::ResourceCachedReloadConfig(this);
55
layout->addWidget(mReloadConfig, 3, 0, 1, 2);
57
mSaveConfig = new KCal::ResourceCachedSaveConfig(this);
58
layout->addWidget(mSaveConfig, 4, 0, 1, 2);
61
61
void ResourceRemoteConfigWidget::loadSettings(KRES::Resource* resource)
63
// KAResourceRemote* res = dynamic_cast<KAResourceRemote*>(resource);
64
KAResourceRemote* res = static_cast<KAResourceRemote*>(resource);
66
kError(KARES_DEBUG) << "KAResourceRemote: cast failed";
69
ResourceConfigWidget::loadSettings(resource);
70
mDownloadUrl->setUrl(res->downloadUrl().url());
71
mUploadUrl->setUrl(res->uploadUrl().url());
72
mReloadConfig->loadSettings(res);
73
mSaveConfig->loadSettings(res);
63
// KAResourceRemote* res = dynamic_cast<KAResourceRemote*>(resource);
64
KAResourceRemote* res = static_cast<KAResourceRemote*>(resource);
66
kError(KARES_DEBUG) << "KAResourceRemote: cast failed";
69
ResourceConfigWidget::loadSettings(resource);
70
mDownloadUrl->setUrl(res->downloadUrl().url());
71
mUploadUrl->setUrl(res->uploadUrl().url());
72
mReloadConfig->loadSettings(res);
73
mSaveConfig->loadSettings(res);
75
kDebug(KARES_DEBUG) << "File" << mDownloadUrl->url() << " type" << res->typeName();
75
kDebug(KARES_DEBUG) << "File" << mDownloadUrl->url() << " type" << res->typeName();
80
80
void ResourceRemoteConfigWidget::saveSettings(KRES::Resource* resource)
82
// KAResourceRemote* res = dynamic_cast<KAResourceRemote*>(resource);
83
KAResourceRemote* res = static_cast<KAResourceRemote*>(resource);
85
kDebug(KARES_DEBUG) << "KAResourceRemote: cast failed";
88
res->setUrls(mDownloadUrl->url(), mUploadUrl->url());
89
mReloadConfig->saveSettings(res);
90
mSaveConfig->saveSettings(res);
82
// KAResourceRemote* res = dynamic_cast<KAResourceRemote*>(resource);
83
KAResourceRemote* res = static_cast<KAResourceRemote*>(resource);
85
kDebug(KARES_DEBUG) << "KAResourceRemote: cast failed";
88
res->setUrls(mDownloadUrl->url(), mUploadUrl->url());
89
mReloadConfig->saveSettings(res);
90
mSaveConfig->saveSettings(res);
92
if (mUploadUrl->url().isEmpty() && !resource->readOnly())
94
KMessageBox::information(this, i18nc("@info", "You have specified no upload URL: the alarm calendar will be read-only."),
95
"RemoteResourseNoUploadURL");
96
resource->setReadOnly(true);
92
if (mUploadUrl->url().isEmpty() && !resource->readOnly())
94
KMessageBox::information(this, i18nc("@info", "You have specified no upload URL: the alarm calendar will be read-only."),
95
"RemoteResourseNoUploadURL");
96
resource->setReadOnly(true);