aboutsummaryrefslogtreecommitdiffstats
path: root/keydetailsdialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'keydetailsdialog.cpp')
-rw-r--r--keydetailsdialog.cpp121
1 files changed, 62 insertions, 59 deletions
diff --git a/keydetailsdialog.cpp b/keydetailsdialog.cpp
index 0712143..51c472d 100644
--- a/keydetailsdialog.cpp
+++ b/keydetailsdialog.cpp
@@ -18,21 +18,22 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*/
-
+
#include "keydetailsdialog.h"
//#include "QDebug"
-KeyDetailsDialog::KeyDetailsDialog(GpgME::Context* ctx, gpgme_key_t key) {
-
+KeyDetailsDialog::KeyDetailsDialog(GpgME::Context* ctx, gpgme_key_t key)
+{
+
mCtx = ctx;
keyid = new QString(key->subkeys->keyid);
-
- ownerBox = new QGroupBox(tr("Owner details"));
- keyBox = new QGroupBox(tr("Key details"));
- fingerprintBox = new QGroupBox(tr("Fingerprint"));
- buttonBox = new QDialogButtonBox(QDialogButtonBox::Close);
- connect(buttonBox, SIGNAL(rejected()), this, SLOT(close()));
-
+
+ ownerBox = new QGroupBox(tr("Owner details"));
+ keyBox = new QGroupBox(tr("Key details"));
+ fingerprintBox = new QGroupBox(tr("Fingerprint"));
+ buttonBox = new QDialogButtonBox(QDialogButtonBox::Close);
+ connect(buttonBox, SIGNAL(rejected()), this, SLOT(close()));
+
nameLabel = new QLabel(tr("Name:"));
emailLabel = new QLabel(tr("E-Mailaddress:"));
commentLabel = new QLabel(tr("Comment:"));
@@ -46,20 +47,20 @@ KeyDetailsDialog::KeyDetailsDialog(GpgME::Context* ctx, gpgme_key_t key) {
commentVarLabel = new QLabel(key->uids->comment);
//keySizeVarLabel = new QLabel();
QString keySizeVal, keyExpireVal, keyCreatedVal, keyAlgoVal;
-
- if ( key->subkeys->expires == 0 ) {
+
+ if (key->subkeys->expires == 0) {
keyExpireVal = tr("Never");
} else {
keyExpireVal = QDateTime::fromTime_t(key->subkeys->expires).toString("dd. MMM. yyyy");
}
-
+
keyAlgoVal = gpgme_pubkey_algo_name(key->subkeys->pubkey_algo);
keyCreatedVal = QDateTime::fromTime_t(key->subkeys->timestamp).toString("dd. MMM. yyyy");
-
+
// have el-gamal key?
- if(key->subkeys->next) {
- keySizeVal.sprintf("%d / %d", int(key->subkeys->length), int(key->subkeys->next->length) );
- if ( key->subkeys->next->expires == 0 ) {
+ if (key->subkeys->next) {
+ keySizeVal.sprintf("%d / %d", int(key->subkeys->length), int(key->subkeys->next->length));
+ if (key->subkeys->next->expires == 0) {
keyExpireVal += tr(" / Never");
} else {
keyExpireVal += " / " + QDateTime::fromTime_t(key->subkeys->next->expires).toString("dd. MMM. yyyy");
@@ -67,19 +68,19 @@ KeyDetailsDialog::KeyDetailsDialog(GpgME::Context* ctx, gpgme_key_t key) {
keyAlgoVal.append(" / ").append(gpgme_pubkey_algo_name(key->subkeys->next->pubkey_algo));
keyCreatedVal += " / " + QDateTime::fromTime_t(key->subkeys->next->timestamp).toString("dd. MMM. yyyy");
} else {
- keySizeVal.setNum( int(key->subkeys->length));
+ keySizeVal.setNum(int(key->subkeys->length));
}
-
+
keySizeVarLabel = new QLabel(keySizeVal);
expireVarLabel = new QLabel(keyExpireVal);
- createdVarLabel = new QLabel(keyCreatedVal);
+ createdVarLabel = new QLabel(keyCreatedVal);
algorithmVarLabel = new QLabel(keyAlgoVal);
-
+
mvbox = new QVBoxLayout();
vboxKD = new QGridLayout();
- vboxOD = new QGridLayout();
-
+ vboxOD = new QGridLayout();
+
vboxOD->addWidget(nameLabel, 0, 0);
vboxOD->addWidget(emailLabel, 1, 0);
vboxOD->addWidget(commentLabel, 2, 0);
@@ -96,54 +97,55 @@ KeyDetailsDialog::KeyDetailsDialog(GpgME::Context* ctx, gpgme_key_t key) {
vboxKD->addWidget(expireVarLabel, 1, 1);
vboxKD->addWidget(algorithmVarLabel, 3, 1);
vboxKD->addWidget(createdVarLabel, 4, 1);
-
- ownerBox->setLayout(vboxOD);
- mvbox->addWidget(ownerBox);
-
- keyBox->setLayout(vboxKD);
- mvbox->addWidget(keyBox);
-
- vboxFP = new QVBoxLayout();
+
+ ownerBox->setLayout(vboxOD);
+ mvbox->addWidget(ownerBox);
+
+ keyBox->setLayout(vboxKD);
+ mvbox->addWidget(keyBox);
+
+ vboxFP = new QVBoxLayout();
fingerPrintLabel = new QLabel(beautifyFingerprint(key->subkeys->fpr));
fingerPrintLabel->setTextInteractionFlags(Qt::TextSelectableByMouse);
- vboxFP->addWidget(fingerPrintLabel);
- fingerprintBox->setLayout(vboxFP);
- mvbox->addWidget(fingerprintBox);
+ vboxFP->addWidget(fingerPrintLabel);
+ fingerprintBox->setLayout(vboxFP);
+ mvbox->addWidget(fingerprintBox);
- if(key->secret) {
+ if (key->secret) {
QGroupBox *privKeyBox = new QGroupBox(tr("Private Key"));
QVBoxLayout *vboxPK = new QVBoxLayout();
-
+
QPushButton *exportButton = new QPushButton(tr("Export Private Key"));
vboxPK->addWidget(exportButton);
connect(exportButton, SIGNAL(clicked()), this, SLOT(exportPrivateKey()));
-
+
privKeyBox->setLayout(vboxPK);
mvbox->addWidget(privKeyBox);
}
- mvbox->addWidget(buttonBox);
-
- this->setLayout(mvbox);
+ mvbox->addWidget(buttonBox);
+
+ this->setLayout(mvbox);
this->setWindowTitle(tr("Keydetails"));
- this->show();
+ this->show();
- exec();
+ exec();
}
-void KeyDetailsDialog::exportPrivateKey() {
-
+void KeyDetailsDialog::exportPrivateKey()
+{
+
int ret = QMessageBox::information(this, tr("Exporting private Key"),
- tr("You are about to export your private key.\n"
- "This is NOT your public key, so don't give it away.\n"
- "Make sure you keep it save."),
- QMessageBox::Cancel | QMessageBox::Ok);
-
- if(ret==QMessageBox::Ok) {
-
+ tr("You are about to export your private key.\n"
+ "This is NOT your public key, so don't give it away.\n"
+ "Make sure you keep it save."),
+ QMessageBox::Cancel | QMessageBox::Ok);
+
+ if (ret == QMessageBox::Ok) {
+
QByteArray *keyArray = new QByteArray();
mCtx->exportSecretKey(*keyid, 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))
@@ -153,13 +155,14 @@ void KeyDetailsDialog::exportPrivateKey() {
file.close();
delete keyArray;
}
-
+
}
-QString KeyDetailsDialog::beautifyFingerprint(QString fingerprint) {
- uint len = fingerprint.length();
- if((len>0) && (len%4 == 0))
- for (uint n = 0; 4 * (n + 1) < len; ++n)
- fingerprint.insert(5 * n + 4, ' ');
- return fingerprint;
+QString KeyDetailsDialog::beautifyFingerprint(QString fingerprint)
+{
+ uint len = fingerprint.length();
+ if ((len > 0) && (len % 4 == 0))
+ for (uint n = 0; 4 *(n + 1) < len; ++n)
+ fingerprint.insert(5 * n + 4, ' ');
+ return fingerprint;
}