*Better speedlimits calculation in core
[kdenetwork.git] / kget / ui / groupsettingsdialog.cpp
blob12f3374bee899b15028dabc7edd9a2364ddf6b20
1 /* This file is part of the KDE project
3 Copyright (C) 2008 Lukas Appelhans <l.appelhans@gmx.de>
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
9 */
10 #include "groupsettingsdialog.h"
12 #include "core/transfergrouphandler.h"
14 GroupSettingsDialog::GroupSettingsDialog(QWidget *parent, TransferGroupHandler *group)
15 : KDialog(parent),
16 m_group(group)
18 setCaption(i18n("Group-Settings for %1", group->name()));
19 QWidget *widget = new QWidget(this);
20 Ui::GroupSettingsDialog ui;
21 ui.setupUi(widget);
22 setMainWidget(widget);
23 m_downloadBox = ui.downloadBox;
24 m_downloadBox->setValue(group->visibleDownloadLimit());
25 m_uploadBox = ui.uploadBox;
26 m_uploadBox->setValue(group->visibleUploadLimit());
27 m_downloadCheck = ui.downloadCheck;
28 if (m_downloadBox->value() != 0)
29 m_downloadCheck->setChecked(true);
30 m_uploadCheck = ui.uploadCheck;
31 if (m_uploadBox->value() != 0)
32 m_uploadCheck->setChecked(true);
33 m_defaultFolderRequester = ui.defaultFolderRequester;
34 m_defaultFolderRequester->setMode(KFile::Directory);
35 m_defaultFolderRequester->setPath(group->defaultFolder());
36 connect(this, SIGNAL(accepted()), SLOT(save()));
39 GroupSettingsDialog::~GroupSettingsDialog()
43 void GroupSettingsDialog::save()
45 m_group->setDefaultFolder(m_defaultFolderRequester->url().path());
47 if (m_downloadCheck->isChecked())
48 m_group->setVisibleDownloadLimit(m_downloadBox->value());
49 else
50 m_group->setVisibleDownloadLimit(0);
52 if (m_uploadCheck->isChecked())
53 m_group->setVisibleUploadLimit(m_uploadBox->value());
54 else
55 m_group->setVisibleUploadLimit(0);
58 #include "groupsettingsdialog.moc"