Rev 2228 | Blame | Compare with Previous | Last modification | View Log | RSS feed
//---------------------------------------------------------------------------#include <vcl.h>#pragma hdrstop#include "GenerationProperties.h"//---------------------------------------------------------------------------#pragma package(smart_init)#pragma link "AdvDirectoryEdit"#pragma link "AdvEdBtn"#pragma link "AdvEdit"#pragma link "AdvPanel"#pragma link "advlued"#pragma link "dbadvle"#pragma resource "*.dfm"TGenerationPropertiesForm *GenerationPropertiesForm;//---------------------------------------------------------------------------__fastcall TGenerationPropertiesForm::TGenerationPropertiesForm(TComponent* Owner): TForm(Owner){}//---------------------------------------------------------------------------void __fastcall TGenerationPropertiesForm::FormShow(TObject *Sender){TRegistry * registry = 0;try{registry = new TRegistry();registry->RootKey = HKEY_CURRENT_USER;// Create the key if it doesn't exist.registry->OpenKey( "Software\\ERG\\TxnTestManager", true );AnsiString profile;AnsiString securityServer;AnsiString keyNumber;AnsiString keyVersion;AnsiString macAlgorithm;profile = registry->ReadString( "Profile" );if ( profile.IsEmpty() ){profile = "TDS";}securityServer = registry->ReadString( "SecurityServerPipe" );if ( securityServer.IsEmpty() ){securityServer = "CryptoServer";}keyNumber = registry->ReadString( "KeyNumber" );if ( keyNumber.IsEmpty() ){keyNumber = "5";}keyVersion = registry->ReadString( "KeyVersion" );if ( keyVersion.IsEmpty() ){keyVersion = "-2";}GenerationProfileComboBox->Text = profile;GenerationProfileComboBox->ItemIndex = -1;int index = 0;for ( index = 0; index < GenerationProfileComboBox->Items->Count; ++index ){if ( GenerationProfileComboBox->Items->Strings[ index ] == profile ){GenerationProfileComboBox->ItemIndex = index;break;}}SecurityServerPipeEdit->Text = securityServer;KeyNumberEdit->Text = keyNumber;KeyVersionEdit->Text = keyVersion;macAlgorithm = registry->ReadString( "MacAlgorithm" );if ( macAlgorithm.IsEmpty() ){macAlgorithm = "MAC";}for ( index = 0; index < MacAlgorithmComboBox->Items->Count; ++index ){if ( MacAlgorithmComboBox->Items->Strings[ index ] == macAlgorithm ){MacAlgorithmComboBox->ItemIndex = index;break;}}readProfile( *registry, profile );}__finally{delete registry;}}//---------------------------------------------------------------------------void __fastcall TGenerationPropertiesForm::OKClick(TObject *Sender){TRegistry * registry = 0;try{registry = new TRegistry();registry->RootKey = HKEY_CURRENT_USER;// Create the key if it doesn't exist.registry->OpenKey( "Software\\ERG\\TxnTestManager", true );registry->WriteString( "Profile", GenerationProfileComboBox->Text );registry->WriteString( "SecurityServerPipe", SecurityServerPipeEdit->Text );registry->WriteString( "KeyNumber", KeyNumberEdit->Text );registry->WriteString( "KeyVersion", KeyVersionEdit->Text );registry->WriteString( "MacAlgorithm", MacAlgorithmComboBox->Text );if ( registry->OpenKey( GenerationProfileComboBox->Text, true ) ){registry->WriteString( "Folder", GenerationFolderDirectoryEdit->Text );registry->WriteBool( "GenerateHeaders", GenerateHeadersCheckBox->Checked );registry->WriteString( "DrainFilePrefix", DrainFilePrefixEdit->Text );registry->WriteString( "DrainFileSuffix", DrainFileSuffixEdit->Text );registry->WriteBool( "BuildManifest", BuildManifestCheckBox->Checked );registry->WriteString( "ManifestPrefix", ManifestPrefixEdit->Text );registry->WriteString( "ManifestSuffix", ManifestSuffixEdit->Text );registry->WriteString( "PathmapTarget", PathmapTargetEdit->Text );}}__finally{delete registry;}}//---------------------------------------------------------------------------void __fastcall TGenerationPropertiesForm::GenerationProfileComboBoxChange(TObject *Sender){TRegistry * registry = 0;try{registry = new TRegistry();registry->RootKey = HKEY_CURRENT_USER;// Create the key if it doesn't exist.registry->OpenKey( "Software\\ERG\\TxnTestManager", true );readProfile( *registry, GenerationProfileComboBox->Text );}__finally{delete registry;}}//---------------------------------------------------------------------------void __fastcall TGenerationPropertiesForm::readProfile( TRegistry & registry, const AnsiString & profile ){if ( registry.OpenKey( profile, true ) ){AnsiString folder;bool generateHeaders = true;AnsiString drainFilePrefix;AnsiString drainFileSuffix = ".devud";bool buildManifest = true;AnsiString manifestPrefix = "udMan";AnsiString manifestSuffix = ".txt";AnsiString pathmapTarget = "/afc/ergdce/var/DCE/ud/drained";folder = registry.ReadString( "Folder" );try{generateHeaders = registry.ReadBool( "GenerateHeaders" );}catch ( ... ){generateHeaders = true;}drainFilePrefix = registry.ReadString( "DrainFilePrefix" );drainFileSuffix = registry.ReadString( "DrainFileSuffix" );if ( drainFileSuffix.IsEmpty() ){drainFileSuffix = ".devud";}try{buildManifest = registry.ReadBool( "BuildManifest" );}catch ( ... ){buildManifest = false;}manifestPrefix = registry.ReadString( "ManifestPrefix" );if ( manifestPrefix.IsEmpty() ){manifestPrefix = "udMan";}manifestSuffix = registry.ReadString( "ManifestSuffix" );if ( manifestSuffix.IsEmpty() ){manifestSuffix = ".txt";}pathmapTarget = registry.ReadString( "PathmapTarget" );if ( pathmapTarget.IsEmpty() ){pathmapTarget = "/afc/ergdce/var/DCE/ud/drained";}GenerationFolderDirectoryEdit->Text = folder;GenerateHeadersCheckBox->Checked = generateHeaders;DrainFilePrefixEdit->Text = drainFilePrefix;DrainFileSuffixEdit->Text = drainFileSuffix;BuildManifestCheckBox->Checked = buildManifest;ManifestPrefixEdit->Text = manifestPrefix;ManifestSuffixEdit->Text = manifestSuffix;PathmapTargetEdit->Text = pathmapTarget;ManifestPrefixEdit->Enabled = BuildManifestCheckBox->Checked;ManifestSuffixEdit->Enabled = BuildManifestCheckBox->Checked;PathmapTargetEdit->Enabled = BuildManifestCheckBox->Checked;}}//---------------------------------------------------------------------------void __fastcall TGenerationPropertiesForm::BuildManifestCheckBoxClick(TObject *Sender){ManifestPrefixEdit->Enabled = BuildManifestCheckBox->Checked;ManifestSuffixEdit->Enabled = BuildManifestCheckBox->Checked;PathmapTargetEdit->Enabled = BuildManifestCheckBox->Checked;}//---------------------------------------------------------------------------