diff options
Diffstat (limited to 'gpgwin.cpp')
-rw-r--r-- | gpgwin.cpp | 53 |
1 files changed, 50 insertions, 3 deletions
@@ -31,6 +31,7 @@ #include <QStringList> #include <QIcon> #include <QMessageBox> +#include <QVBoxLayout> #include "context.h" #include "gpgwin.h" @@ -161,6 +162,11 @@ void GpgWin::createActions() importKeyFromClipboardAct->setIcon(QIcon(iconPath + "importkey_editor.png")); importKeyFromClipboardAct->setStatusTip(tr("Import New Key From Clipboard")); connect(importKeyFromClipboardAct, SIGNAL(triggered()), this, SLOT(importKeyFromClipboard())); + + importKeyDialogAct = new QAction(tr("Import Key"), this); + importKeyDialogAct->setIcon(QIcon(iconPath + "importkey_editor.png")); + importKeyDialogAct->setStatusTip(tr("Import New Key")); + connect(importKeyDialogAct, SIGNAL(triggered()), this, SLOT(importKeyDialog())); /** About Menu */ aboutAct = new QAction(tr("&About"), this); @@ -201,9 +207,12 @@ void GpgWin::createMenus() void GpgWin::createToolBars() { - fileToolBar = addToolBar(tr("File")); - fileToolBar->addAction(encryptAct); - fileToolBar->addAction(decryptAct); + cryptToolBar = addToolBar(tr("Crypt")); + cryptToolBar->addAction(encryptAct); + cryptToolBar->addAction(decryptAct); + cryptToolBar->addAction(importKeyDialogAct); + + editToolBar = addToolBar(tr("Edit")); editToolBar->addAction(copyAct); @@ -425,3 +434,41 @@ void GpgWin::importKeyFromFile() } } +void GpgWin::importKeyDialog() { + + QDialog *dialog = new QDialog(); + + dialog->setWindowTitle(tr("Import Key")); + dialog->setModal(true); + + QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok|QDialogButtonBox::Cancel); + + connect(buttonBox,SIGNAL(accepted()),dialog, SLOT(accept())); + connect(buttonBox,SIGNAL(rejected()), dialog, SLOT(reject())); + + QGroupBox *groupBox = new QGroupBox(tr("Import Key From...")); + QRadioButton *radio1 = new QRadioButton(tr("&File")); + QRadioButton *radio2 = new QRadioButton(tr("&Editor")); + QRadioButton *radio3 = new QRadioButton(tr("&Clipboard")); + radio1->setChecked(true); + + QVBoxLayout *vbox1 = new QVBoxLayout(); + vbox1->addWidget(radio1); + vbox1->addWidget(radio2); + vbox1->addWidget(radio3); + + groupBox->setLayout(vbox1); + + QVBoxLayout *vbox2 = new QVBoxLayout(); + vbox2->addWidget(groupBox); + vbox2->addWidget(buttonBox); + + dialog->setLayout(vbox2); + + if(dialog->exec() == QDialog::Accepted ) { + if (radio1->isChecked()) importKeyFromFile(); + if (radio2->isChecked()) importKeyFromEdit(); + if (radio3->isChecked()) importKeyFromClipboard(); + } + +} |