From 9593ea91d54c3656eef945bdd728355f6e015e5a Mon Sep 17 00:00:00 2001 From: nils Date: Sun, 16 Sep 2012 18:28:21 +0000 Subject: beautified keyservertab in settingsdialog git-svn-id: http://cpunk.de/svn/src/gpg4usb/trunk@955 34ebc366-c3a9-4b3c-9f84-69acf7962910 --- gpg4usb.qrc | 2 ++ settingsdialog.cpp | 62 ++++++++++++++++++++++++------------------------------ settingsdialog.h | 3 ++- 3 files changed, 32 insertions(+), 35 deletions(-) diff --git a/gpg4usb.qrc b/gpg4usb.qrc index 0271b67..5411a45 100644 --- a/gpg4usb.qrc +++ b/gpg4usb.qrc @@ -47,5 +47,7 @@ release/icons/mimetypes/image-x-generic.png release/icons/mimetypes/text-plain.png release/icons/mimetypes/unknown.png + release/icons/button_trash.png + release/icons/button_plus.png diff --git a/settingsdialog.cpp b/settingsdialog.cpp index 60e58a8..1cb4ce8 100755 --- a/settingsdialog.cpp +++ b/settingsdialog.cpp @@ -396,7 +396,6 @@ void AppearanceTab::applySettings() case 3:settings.setValue("toolbar/iconstyle", Qt::ToolButtonTextUnderIcon); break; } - settings.setValue("window/windowSave", windowSizeCheckBox->isChecked()); } @@ -405,49 +404,41 @@ KeyserverTab::KeyserverTab(QWidget *parent) { QVBoxLayout *mainLayout = new QVBoxLayout(this); + QWidget *keyServerBox = new QWidget(this); + QHBoxLayout *keyServerBoxLayout = new QHBoxLayout(keyServerBox); + comboBox = new QComboBox; comboBox->setEditable(false); comboBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); - /* - * box for adding a new keyserver - */ - QWidget *addKeyServerBox = new QWidget(this); - QHBoxLayout *addKeyServerLayout = new QHBoxLayout(addKeyServerBox); - QLabel *http = new QLabel("http://"); - newKeyServerEdit = new QLineEdit(this); - QPushButton *newKeyServerButton = new QPushButton(tr("Add to keyserverlist"), this); - connect(newKeyServerButton,SIGNAL(clicked()), this, SLOT(addKeyServer())); - addKeyServerLayout->addWidget(http); - addKeyServerLayout->addWidget(newKeyServerEdit); - addKeyServerLayout->addWidget(newKeyServerButton); - - /* - * box for removing currently chosen keyserver - */ - QWidget *removeKeyServerBox = new QWidget(this); - QPushButton *removeKeyServerButton = new QPushButton(tr("Remove currently chosen from keyserverlist"), this); + // button for removing currently chosen keyserver + QIcon ico(":button_trash.png"); + QPushButton *removeKeyServerButton = new QPushButton(QIcon(ico.pixmap(24, 24)), ""); + removeKeyServerButton->setToolTip(tr("remove currently selected server from list")); connect(removeKeyServerButton,SIGNAL(clicked()), this, SLOT(removeKeyServer())); - QHBoxLayout *removeKeyServerBoxLayout = new QHBoxLayout(removeKeyServerBox); - removeKeyServerBoxLayout->addStretch(1); - removeKeyServerBoxLayout->addWidget(removeKeyServerButton); + + QIcon ico2(":button_plus.png"); + QPushButton *addKeyServerButton = new QPushButton(QIcon(ico2.pixmap(24, 24)), ""); + addKeyServerButton->setToolTip(tr("Add new keyserver to list")); + connect(addKeyServerButton,SIGNAL(clicked()), this, SLOT(addKeyServer())); + + keyServerBoxLayout->addWidget(comboBox); + keyServerBoxLayout->addWidget(removeKeyServerButton); + keyServerBoxLayout->addWidget(addKeyServerButton); + keyServerBoxLayout->addStretch(1); /* * add everything to the mainlayout */ - mainLayout->addWidget(new QLabel(tr("Default Keyserver for import:"))); - mainLayout->addWidget(comboBox); - mainLayout->addWidget(new QLabel(tr("The currently chosen server is set as default keyserver for all keyserver related operations."))); - mainLayout->addWidget(removeKeyServerBox); - mainLayout->addWidget(addKeyServerBox); - + mainLayout->addWidget(new QLabel(tr("Default keyserver:"))); + mainLayout->addWidget(keyServerBox); mainLayout->addStretch(1); // Read keylist from ini-file and fill it into combobox setSettings(); + connect(comboBox, SIGNAL(editTextChanged(QString)), this, SLOT(editTextChangedAction())); } - /********************************** * Read the settings from config * and set the buttons and checkboxes @@ -482,12 +473,15 @@ void KeyserverTab::applySettings() *************************************/ void KeyserverTab::addKeyServer() { - if (newKeyServerEdit->text().startsWith("http://")) { - comboBox->addItem(newKeyServerEdit->text()); - } else { - comboBox->addItem("http://" +newKeyServerEdit->text()); - } + comboBox->addItem("http://"); + comboBox->setEditable(true); comboBox->setCurrentIndex(comboBox->count()-1); + comboBox->setFocus(); +} + +void KeyserverTab::editTextChangedAction() +{ + comboBox->setItemText(comboBox->currentIndex(),comboBox->currentText()); } void KeyserverTab::removeKeyServer() diff --git a/settingsdialog.h b/settingsdialog.h index af6e2b5..d97fd49 100755 --- a/settingsdialog.h +++ b/settingsdialog.h @@ -107,6 +107,7 @@ private slots: class KeyserverTab : public QWidget { Q_OBJECT + public: KeyserverTab(QWidget *parent = 0); void setSettings(); @@ -114,11 +115,11 @@ private slots: private: QComboBox *comboBox; - QLineEdit *newKeyServerEdit; private slots: void addKeyServer(); void removeKeyServer(); + void editTextChangedAction(); }; class AdvancedTab : public QWidget -- cgit v1.2.3