Mercurial > trustbridge
view ui/proxysettingsdlg.cpp @ 964:706405a2f3e8
(issue89) Add help icon to help button
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Thu, 28 Aug 2014 12:55:19 +0200 |
parents | 0f7aeb12e5e9 |
children | c1f32c87716a |
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #include <QHBoxLayout> #include <QVBoxLayout> #include <QLabel> #include <QLineEdit> #include <QSettings> #include <QPushButton> #include <QUrl> #include <QDebug> #include <QIcon> #include <QPixmap> #include "proxysettingsdlg.h" ProxySettingsDlg::ProxySettingsDlg(QWidget *parent) : QDialog (parent) { setWindowIcon(QIcon(":/img/preferences-network_16.png")); setWindowTitle(tr("Proxy server settings")); QVBoxLayout *mainLayout = new QVBoxLayout(); QHBoxLayout *iconTextLayout = new QHBoxLayout(); QHBoxLayout *labelLineLayout = new QHBoxLayout(); QHBoxLayout *okCancelLayout = new QHBoxLayout(); QSettings settings; QLabel *iconLabel = new QLabel(); iconLabel->setPixmap(QPixmap(":/img/preferences-network_64.png")); iconTextLayout->addWidget(iconLabel); QLabel *explanation = new QLabel(tr("Please enter the proxy server to use in the field below.") + "</br>" + tr("The URL can follow the scheme:") + " " + tr("<username>:<password>@<hostname>:<port>") + "</br></br>"); explanation->setTextFormat(Qt::RichText); explanation->setWordWrap(true); iconTextLayout->addWidget(explanation); mainLayout->addLayout(iconTextLayout); mProxyURL = new QLineEdit(settings.value("ProxyURL").toString()); QLabel *proxyLabel = new QLabel(tr("Proxy Server:")); proxyLabel->setBuddy(mProxyURL); labelLineLayout->addWidget(proxyLabel); labelLineLayout->addWidget(mProxyURL); mSaveButton = new QPushButton (tr("&Save")); QPushButton * cancelButton = new QPushButton (tr("&Cancel")); okCancelLayout->addStretch(10); okCancelLayout->addWidget(mSaveButton); okCancelLayout->addWidget(cancelButton); connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject())); connect(mSaveButton, SIGNAL(clicked()), this, SLOT(save())); connect(mProxyURL, SIGNAL(textChanged(const QString &)), this, SLOT(checkCanSave(const QString&))); mainLayout->addLayout(labelLineLayout); mainLayout->addLayout(okCancelLayout); setLayout(mainLayout); } void ProxySettingsDlg::checkCanSave(const QString &val) { mSaveButton->setEnabled(val.isEmpty() || QUrl(val).isValid()); } void ProxySettingsDlg::save() { QSettings settings; settings.setValue("ProxyURL", mProxyURL->text()); settings.sync(); accept(); }