📄 signaturesform.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "SignaturesForm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfrmSignatures *frmSignatures;
//---------------------------------------------------------------------------
__fastcall TfrmSignatures::TfrmSignatures(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//procedure TfrmSignatures.Init(const Signatures: array of TElPGPSignature;
// const Validities: array of TSBPGPSignatureValidity;
// pgpKeyring: TElPGPKeyring);
void TfrmSignatures::Init(const TElPGPSignature **Signatures, const TSBPGPSignatureValidity** Validities, TElPGPKeyring* pgpKeyring)
{
TElPGPPublicKey* mainKey;
AnsiString userID, sigVal;
TElPGPCustomPublicKey* Key = NULL;
lvSignatures->Items->Clear();
for (int i = 0; i< sizeof(*Signatures)/sizeof(TElPGPSignature*); i++)
{
TListItem* item = lvSignatures->Items->Add();
Byte* KeyID;
Signatures[i]->GetSignerKeyID(KeyID);
pgpKeyring->FindPublicKeyByID(KeyID, Key, 0);
if (Key != NULL)
{
if (AnsiString(Key->ClassName()) == "TElPGPPublicKey")
mainKey = ((TElPGPPublicKey*)(Key));
else
// retrieving supkey...
mainKey = NULL;
if (mainKey != NULL)
{
if (mainKey->UserIDCount > 0)
userID = mainKey->UserIDs[0]->Name;
else
userID = "No name";
}
else
userID = "Unknown Key";
}
else
userID = "Unknown Key";
item->Caption = userID;
switch (*(Validities[i]))
{
case svCorrupted:
sigVal = "Corrupted";
break;
case svNoKey:
sigVal = "Signing key not found, unable to verify";
break;
case svUnknownAlgorithm:
sigVal = "Unknown signing algorithm";
break;
case svValid:
sigVal = "Valid";
break;
default:
sigVal = "Unknown reason";
}
item->SubItems->Add(sigVal);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -