aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorubbo <ubbo@34ebc366-c3a9-4b3c-9f84-69acf7962910>2012-01-08 02:44:08 +0000
committerubbo <ubbo@34ebc366-c3a9-4b3c-9f84-69acf7962910>2012-01-08 02:44:08 +0000
commita9997b0a135917abe4113ebb50229afd30945ff0 (patch)
tree356fb32e01094408fe4cf0c60ba68126a5c07829
parentdo not use formatGpgHeader() yet. needs some more care before production use. (diff)
downloadgpg4usb-a9997b0a135917abe4113ebb50229afd30945ff0.tar.gz
gpg4usb-a9997b0a135917abe4113ebb50229afd30945ff0.zip
add copyFingerprint button to detailsdialog
git-svn-id: http://cpunk.de/svn/src/gpg4usb/trunk@733 34ebc366-c3a9-4b3c-9f84-69acf7962910
-rw-r--r--gpg4usb.qrc1
-rw-r--r--keydetailsdialog.cpp23
-rw-r--r--keydetailsdialog.h1
3 files changed, 23 insertions, 2 deletions
diff --git a/gpg4usb.qrc b/gpg4usb.qrc
index 8a7e794..0885c28 100644
--- a/gpg4usb.qrc
+++ b/gpg4usb.qrc
@@ -2,5 +2,6 @@
<qresource prefix="/">
<file alias="tray.png">release/icons/keymgmt.png</file>
<file alias="help.png">release/icons/help.png</file>
+ <file alias="button_copy.png">release/icons/button_copy.png</file>
</qresource>
</RCC>
diff --git a/keydetailsdialog.cpp b/keydetailsdialog.cpp
index 0e97da9..a4ede02 100644
--- a/keydetailsdialog.cpp
+++ b/keydetailsdialog.cpp
@@ -116,8 +116,21 @@ KeyDetailsDialog::KeyDetailsDialog(GpgME::GpgContext* ctx, gpgme_key_t key, QWid
vboxFP = new QVBoxLayout();
fingerPrintVarLabel = new QLabel(beautifyFingerprint(key->subkeys->fpr));
fingerPrintVarLabel->setTextInteractionFlags(Qt::TextSelectableByMouse);
- vboxFP->addWidget(fingerPrintVarLabel);
- fingerprintBox->setLayout(vboxFP);
+ fingerPrintVarLabel->setStyleSheet("margin-left: 20; margin-right: 20;");
+ QHBoxLayout *hboxFP = new QHBoxLayout();
+
+ hboxFP->addWidget(fingerPrintVarLabel);
+ QIcon ico(":/button_copy.png");
+
+ QPushButton copyFingerprintButton(QIcon(ico.pixmap(12, 12)), "");
+ //copyFingerprintButton.setStyleSheet("QPushButton {border: 0px; } QPushButton:Pressed {} ");
+ copyFingerprintButton.setFlat(true);
+ copyFingerprintButton.setToolTip(tr("copy fingerprint to clipboard"));
+ connect(&copyFingerprintButton, SIGNAL(clicked()), this, SLOT(copyFingerprint()));
+
+ hboxFP->addWidget(&copyFingerprintButton);
+
+ fingerprintBox->setLayout(hboxFP);
mvbox->addWidget(fingerprintBox);
// If key has more than primary uid, also show the other uids
@@ -211,3 +224,9 @@ QString KeyDetailsDialog::beautifyFingerprint(QString fingerprint)
fingerprint.insert(5 * n + 4, ' ');
return fingerprint;
}
+
+void KeyDetailsDialog::copyFingerprint() {
+ QString fpr = fingerPrintVarLabel->text().trimmed().replace(" ", "");
+ QClipboard *cb = QApplication::clipboard();
+ cb->setText(fpr);
+}
diff --git a/keydetailsdialog.h b/keydetailsdialog.h
index fb515a2..15e4946 100644
--- a/keydetailsdialog.h
+++ b/keydetailsdialog.h
@@ -47,6 +47,7 @@ public:
private slots:
void exportPrivateKey();
+ void copyFingerprint();
private:
QString *keyid;