filedowloadersettingsgui.cpp
79 lines
| 3.0 KiB
| text/x-c
|
CppLexer
r15 | /*------------------------------------------------------------------------------ | |||
-- This file is a part of the QLop Software | ||||
-- Copyright (C) 2015, Plasma Physics Laboratory - CNRS | ||||
-- | ||||
-- 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||||
-------------------------------------------------------------------------------*/ | ||||
/*-- Author : Alexis Jeandet | ||||
-- Mail : alexis.jeandet@member.fsf.org | ||||
----------------------------------------------------------------------------*/ | ||||
#include "filedowloadersettingsgui.h" | ||||
#include "ui_filedowloadersettingsgui.h" | ||||
r16 | #include <qlopsettings.h> | |||
#include <filedownloader.h> | ||||
#include <QDir> | ||||
#include <qlopnetworkproxyfactory.h> | ||||
r15 | ||||
FileDowloaderSettingsGUI::FileDowloaderSettingsGUI(QWidget *parent) : | ||||
r16 | QLopSettingsItem(parent), | |||
r15 | ui(new Ui::FileDowloaderSettingsGUI) | |||
{ | ||||
ui->setupUi(this); | ||||
this->manualProxyCFG_GUI = new ManualProxyCFG_GUI(); | ||||
lastWidget = NULL; | ||||
connect(this->ui->comboBox,SIGNAL(currentIndexChanged(QString)),this,SLOT(proxyMethodChanged(QString))); | ||||
r16 | QString proxyType = QLopSettings::value(FileDownloader::self(),CFG_PROXY_TYPE_ENTRY,CFG_PROXY_TYPE_VALUE_NONE).toString(); | |||
for(int i=0;i<ui->comboBox->count();i++) | ||||
{ | ||||
if(!this->ui->comboBox->itemText(i).compare(proxyType)) | ||||
this->ui->comboBox->setCurrentIndex(i); | ||||
} | ||||
this->ui->defaultDestPath->setText(QLopSettings::value(FileDownloader::self(),"default_path",QDir::homePath()+"/Downloads").toString()); | ||||
r15 | } | |||
FileDowloaderSettingsGUI::~FileDowloaderSettingsGUI() | ||||
{ | ||||
delete ui; | ||||
} | ||||
void FileDowloaderSettingsGUI::changeEvent(QEvent *e) | ||||
{ | ||||
QWidget::changeEvent(e); | ||||
switch (e->type()) { | ||||
case QEvent::LanguageChange: | ||||
ui->retranslateUi(this); | ||||
break; | ||||
default: | ||||
break; | ||||
} | ||||
} | ||||
r16 | void FileDowloaderSettingsGUI::accept() | |||
{ | ||||
QLopSettings::setValue(FileDownloader::self(),"default_path",this->ui->defaultDestPath->text()); | ||||
QLopSettings::setValue(FileDownloader::self(),CFG_PROXY_TYPE_ENTRY,this->ui->comboBox->currentText()); | ||||
manualProxyCFG_GUI->saveConfig(); | ||||
} | ||||
r15 | void FileDowloaderSettingsGUI::proxyMethodChanged(const QString &text) | |||
{ | ||||
this->ui->gridLayout->removeWidget(this->lastWidget); | ||||
r16 | if(text==CFG_PROXY_TYPE_VALUE_MANUAL) | |||
r15 | { | |||
this->ui->gridLayout->addWidget(this->manualProxyCFG_GUI,1,0,1,-1); | ||||
this->lastWidget = this->manualProxyCFG_GUI; | ||||
return; | ||||
} | ||||
} | ||||