referencesform.cpp

来自「著名的SecureBlackBox控件完整源码」· C++ 代码 · 共 101 行

CPP
101
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "ReferencesForm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfrmReferences *frmReferences;
//---------------------------------------------------------------------------
__fastcall TfrmReferences::TfrmReferences(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmReferences::btnAddClick(TObject *Sender)
{
    TElXMLReference* Ref = new TElXMLReference;
    frmReference->Reference = Ref;
    frmReference->Verify = Verify;
    if (frmReference->ShowModal() == mrOk)
    {
        FReferences->Add(frmReference->Reference);
        UpdateReferences();
    }
    else
        delete Ref;
}
//---------------------------------------------------------------------------
void __fastcall TfrmReferences::btnDeleteClick(TObject *Sender)
{
    for (int i = 0; i<lbReferences->Items->Count;i++)
    {
        if (lbReferences->Selected[i])
        {
            FReferences->Delete(i);
            break;
        }
    }
    UpdateReferences();
}
//---------------------------------------------------------------------------
void __fastcall TfrmReferences::btnInfoClick(TObject *Sender)
{
    bool Found = false;
    for(int i = 0;i<lbReferences->Items->Count;i++)
    {
        if (lbReferences->Selected[i])
        {
            Found = true;
            frmReference->Verify = Verify;

            frmReference->Reference = References->Reference[i];
            if (frmReference->ShowModal() == mrOk)
                frmReference->Reference;
            break;
        }
    }
    if ((!Found) && (lbReferences->Items->Count > 0))
    {
        frmReference->Verify = Verify;
        frmReference->Reference = References->Reference[0];
        if (frmReference->ShowModal() == mrOk)
            frmReference->Reference;
    }
    UpdateReferences();
}
//---------------------------------------------------------------------------
void TfrmReferences::SetReferences(const TElXMLReferenceList* Value)
{
    FReferences = (TElXMLReferenceList*)Value;
    UpdateReferences();
}
//---------------------------------------------------------------------------
void TfrmReferences::SetVerify(const bool Value)
{
    FVerify = Value;
    btnAdd->Enabled = !FVerify;
    btnDelete->Enabled = !FVerify;
}
//---------------------------------------------------------------------------
void TfrmReferences::UpdateReferences(void)
{
    AnsiString s;

    lbReferences->Clear();
    for(int i = 0; i<FReferences->Count;i++)
    {
        s = FReferences->Reference[i]->ID;
        if (s != "")
            s = s + " - ";
        s = s + FReferences->Reference[i]->URI;
        if (s == "")
            s = "none";
        lbReferences->Items->AddObject(s, FReferences->Reference[i]);
    }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?