diff options
author | nils <nils@34ebc366-c3a9-4b3c-9f84-69acf7962910> | 2008-10-02 01:45:25 +0000 |
---|---|---|
committer | nils <nils@34ebc366-c3a9-4b3c-9f84-69acf7962910> | 2008-10-02 01:45:25 +0000 |
commit | e7857f4eace1302891a8b983eecb39264a1b918e (patch) | |
tree | 209b569ba9195d52e1178cf461e5901bf8a2faae /keymgmt.cpp | |
parent | deleted #include keyutils... (diff) | |
download | gpg4usb-e7857f4eace1302891a8b983eecb39264a1b918e.tar.gz gpg4usb-e7857f4eace1302891a8b983eecb39264a1b918e.zip |
added keymanagement including export of keys
git-svn-id: http://cpunk.de/svn/src/gpg4usb/trunk@181 34ebc366-c3a9-4b3c-9f84-69acf7962910
Diffstat (limited to 'keymgmt.cpp')
-rwxr-xr-x | keymgmt.cpp | 54 |
1 files changed, 50 insertions, 4 deletions
diff --git a/keymgmt.cpp b/keymgmt.cpp index 007c7a3..3e31bd5 100755 --- a/keymgmt.cpp +++ b/keymgmt.cpp @@ -35,6 +35,7 @@ KeyMgmt::KeyMgmt(GpgME::Context *ctx, QString iconpath) m_keyList->setColumnWidth(2,250); m_keyList->setColumnWidth(3,250); setCentralWidget(m_keyList); + createActions(); createMenus(); createToolBars(); @@ -54,15 +55,25 @@ void KeyMgmt::createActions() connect(closeAct, SIGNAL(triggered()), this, SLOT(close())); importKeyFromFileAct = new QAction(tr("Import Key From &File"), this); - importKeyFromFileAct->setIcon(QIcon(mIconPath + "importkey_editor.png")); + importKeyFromFileAct->setIcon(QIcon(mIconPath + "import_key_from_file.png")); importKeyFromFileAct->setStatusTip(tr("Import New Key From File")); connect(importKeyFromFileAct, SIGNAL(triggered()), this, SLOT(importKeyFromFile())); importKeyFromClipboardAct = new QAction(tr("Import Key From &Clipboard"), this); - importKeyFromClipboardAct->setIcon(QIcon(mIconPath + "importkey_editor.png")); + importKeyFromClipboardAct->setIcon(QIcon(mIconPath + "import_key_from_clipbaord.png")); importKeyFromClipboardAct->setStatusTip(tr("Import New Key From Clipboard")); connect(importKeyFromClipboardAct, SIGNAL(triggered()), this, SLOT(importKeyFromClipboard())); + exportKeyToClipboardAct = new QAction(tr("Export Key To &Clipboard"), this); + exportKeyToClipboardAct->setIcon(QIcon(mIconPath + "export_key_to_clipbaord.png")); + exportKeyToClipboardAct->setStatusTip(tr("Export Selected Key(s) To Clipboard")); + connect(exportKeyToClipboardAct, SIGNAL(triggered()), this, SLOT(exportKeyToClipboard())); + + exportKeyToFileAct = new QAction(tr("Export Key To &File"), this); + exportKeyToFileAct->setIcon(QIcon(mIconPath + "export_key_to_file.png")); + exportKeyToFileAct->setStatusTip(tr("Export Selected Key(s) To File")); + connect(exportKeyToFileAct, SIGNAL(triggered()), this, SLOT(exportKeyToFile())); + deleteSelectedKeysAct = new QAction(tr("Delete Selected Key(s)"), this); deleteSelectedKeysAct->setStatusTip(tr("Delete the Selected keys")); connect(deleteSelectedKeysAct, SIGNAL(triggered()), this, SLOT(deleteSelectedKeys())); @@ -75,12 +86,15 @@ void KeyMgmt::createActions() void KeyMgmt::createMenus() { - fileMenu = menuBar()->addMenu(tr("&Quit")); + fileMenu = menuBar()->addMenu(tr("&File")); fileMenu->addAction(closeAct); + keyMenu = menuBar()->addMenu(tr("&Key")); keyMenu->addAction(importKeyFromFileAct); keyMenu->addAction(importKeyFromClipboardAct); keyMenu->addSeparator(); + keyMenu->addAction(exportKeyToFileAct); + keyMenu->addAction(exportKeyToClipboardAct); keyMenu->addAction(deleteCheckedKeysAct); } @@ -91,6 +105,9 @@ void KeyMgmt::createToolBars() keyToolBar->addAction(importKeyFromClipboardAct); keyToolBar->addSeparator(); keyToolBar->addAction(deleteCheckedKeysAct); + keyToolBar->addSeparator(); + keyToolBar->addAction(exportKeyToFileAct); + keyToolBar->addAction(exportKeyToClipboardAct); } void KeyMgmt::importKeyFromFile() @@ -100,7 +117,7 @@ void KeyMgmt::importKeyFromFile() QFile file; file.setFileName(fileName); if (!file.open(QIODevice::ReadOnly)) { - qDebug() << tr("couldn't open file: ") + fileName; + qDebug() << tr("Couldn't Open File: ") + fileName; } QByteArray inBuffer = file.readAll(); @@ -127,3 +144,32 @@ void KeyMgmt::deleteCheckedKeys() mCtx->deleteKeys(m_keyList->getChecked()); m_keyList->refresh(); } + +void KeyMgmt::exportKeyToFile() +{ + QList<QString> *uidList = m_keyList->getChecked(); + QByteArray *keyArray = new QByteArray(); + + mCtx->exportKeys(uidList, keyArray); + + QString fileName = QFileDialog::getSaveFileName(this, tr("Export Key To File"), "", tr("Key Files") + " (*.asc *.txt);;All Files (*.*)"); + QFile file(fileName); + if (!file.open( QIODevice::WriteOnly |QIODevice::Text)) + return; + QTextStream stream( &file ); + stream << *keyArray; + file.close(); + delete keyArray; +} + +void KeyMgmt::exportKeyToClipboard() +{ + QList<QString> *uidList = m_keyList->getChecked(); + QByteArray *keyArray = new QByteArray(); + + mCtx->exportKeys(uidList, keyArray); + QClipboard *cb = QApplication::clipboard(); + cb->setText(*keyArray); +} + + |