home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 October / PCWorld_2000-10_cd2.bin / Borland / interbase / IBConsole_src.ZIP / ibconsole / frmuAddCertificate.pas < prev    next >
Pascal/Delphi Source File  |  2000-07-24  |  6KB  |  184 lines

  1. {
  2.  * The contents of this file are subject to the InterBase Public License
  3.  * Version 1.0 (the "License"); you may not use this file except in
  4.  * compliance with the License.
  5.  * 
  6.  * You may obtain a copy of the License at http://www.Inprise.com/IPL.html.
  7.  * 
  8.  * Software distributed under the License is distributed on an "AS IS"
  9.  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
  10.  * the License for the specific language governing rights and limitations
  11.  * under the License.  The Original Code was created by Inprise
  12.  * Corporation and its predecessors.
  13.  * 
  14.  * Portions created by Inprise Corporation are Copyright (C) Inprise
  15.  * Corporation. All Rights Reserved.
  16.  * 
  17.  * Contributor(s): ______________________________________.
  18. }
  19. {****************************************************************
  20. *
  21. *  f r m u A d d C e r t i f i c a t e
  22. *
  23. ****************************************************************
  24. *  Author: The Client Server Factory Inc.
  25. *  Date:   March 1, 1999
  26. *
  27. *  Description:  This unit provides an interface for adding
  28. *                certificates
  29. *
  30. *****************************************************************
  31. * Revisions:
  32. *
  33. *****************************************************************}
  34. unit frmuAddCertificate;
  35.  
  36. interface
  37.  
  38. uses
  39.   Windows, Forms, ExtCtrls, StdCtrls, Classes, Controls, Messages, frmuDlgClass;
  40.  
  41. type
  42.   TfrmAddCertificate = class(TDialog)
  43.     lblCertificateKey: TLabel;
  44.     lblCertificateID: TLabel;
  45.     edtCertificateID: TEdit;
  46.     edtCertificateKey: TEdit;
  47.     btnOK: TButton;
  48.     btnCancel: TButton;
  49.     memInstructions: TMemo;
  50.     function FormHelp(Command: Word; Data: Integer; var CallHelp: Boolean): Boolean;
  51.     procedure btnCancelClick(Sender: TObject);
  52.     procedure btnOKClick(Sender: TObject);
  53.   private
  54.     { Private declarations }
  55.     function VerifyInputData(): boolean;
  56.     procedure WMNCLButtonDown( var Message: TWMNCLBUTTONDOWN ); message WM_NCLBUTTONDOWN ;
  57.   public
  58.     { Public declarations }
  59.   end;
  60.  
  61. function AddCertificate(var CertificateID,CertificateKey: string): boolean;
  62.  
  63. implementation
  64.  
  65. uses frmuMessage, zluContextHelp;
  66.  
  67. {$R *.DFM}
  68.  
  69. {****************************************************************
  70. *
  71. *  A d d C e r t i f i c a t e ( )
  72. *
  73. ****************************************************************
  74. *  Author: The Client Server Factory Inc.
  75. *  Date:   March 1, 1999
  76. *
  77. *  Input:  CertificateID  - a string containing the certificate
  78. *                           ID
  79. *          CertificateKey - a string containing the certificate
  80. *                           key
  81. *
  82. *  Return: Boolean - inidicates whether or not a certificate ID
  83. *                    and certificate key are to be added
  84. *
  85. *  Description: This form is used to capture a valid
  86. *               certificate ID and certificate key.  The actual
  87. *               adding of the license is handled by the main
  88. *               form.
  89. *
  90. *****************************************************************
  91. * Revisions:
  92. *
  93. *****************************************************************}
  94. function AddCertificate(var CertificateID,CertificateKey: string): boolean;
  95. var
  96.   frmAddCertificate: TfrmAddCertificate;
  97. begin
  98.   frmAddCertificate := TfrmAddCertificate.Create(Application);
  99.   try
  100.     // display id and key if supplied
  101.     frmAddCertificate.edtCertificateID.Text := CertificateID;
  102.     frmAddCertificate.edtCertificateKey.Text := CertificateKey;
  103.     frmAddCertificate.ShowModal;       // show form as modal dialog box
  104.     if frmAddCertificate.ModalResult = mrOK then
  105.     begin
  106.       // set certificate id and key
  107.       CertificateID := frmAddCertificate.edtCertificateID.Text;
  108.       CertificateKey := frmAddCertificate.edtCertificateKey.Text;
  109.       result := true;
  110.     end
  111.     else
  112.       result := false;
  113.   finally
  114.     // deallocate memory
  115.     frmAddCertificate.Free;
  116.   end;
  117. end;
  118.  
  119.  
  120. function TfrmAddCertificate.FormHelp(Command: Word; Data: Integer;
  121.   var CallHelp: Boolean): Boolean;
  122. begin
  123.   CallHelp := False;
  124.   // call WinHelp and show Server Certificates topic
  125.   Result := WinHelp(WindowHandle,CONTEXT_HELP_FILE,HELP_CONTEXT,SERVER_CERTIFICATES);
  126. end;
  127.  
  128. procedure TfrmAddCertificate.btnCancelClick(Sender: TObject);
  129. begin
  130.   // clear fields and return ModalResult as mrCancel
  131.   edtCertificateID.Text := '';
  132.   edtCertificateKey.Text := '';
  133.   ModalResult := mrCancel;
  134. end;
  135.  
  136. procedure TfrmAddCertificate.btnOKClick(Sender: TObject);
  137. begin
  138.   // check if all fields have been populated and
  139.   // return ModalResult as mrOK
  140.   if VerifyInputData() then
  141.     ModalResult := mrOK;
  142. end;
  143.  
  144. function TfrmAddCertificate.VerifyInputData(): boolean;
  145. begin
  146.   result := true;
  147.  
  148.   // if no certificate id is specified
  149.   if (edtCertificateID.Text = '') or (edtCertificateID.Text = ' ') then
  150.   begin                                // show error message
  151.     DisplayMsg(ERR_INVALID_CERTIFICATE,'');
  152.     edtCertificateID.SetFocus;         // gice focus to this control
  153.     result := false;
  154.     Exit;
  155.   end;
  156.  
  157.   // if no certificate key is specified
  158.   if (edtCertificateKey.Text = '') or (edtCertificateKey.Text = ' ') then
  159.   begin                                // show error messaage
  160.     DisplayMsg(ERR_INVALID_CERTIFICATE,'');
  161.     edtCertificateKey.SetFocus;        // give focus to this control
  162.     result := false;
  163.     Exit;
  164.   end;
  165. end;
  166.  
  167. procedure TfrmAddCertificate.WMNCLButtonDown( var Message: TWMNCLButtonDown );
  168. var
  169.   ScreenPt: TPoint;
  170.   ClientPt: TPoint;
  171. begin
  172.   ScreenPt.X := Message.XCursor;
  173.   ScreenPt.Y := Message.YCursor;
  174.   ClientPt := ScreenToClient( ScreenPt );
  175.   if( ClientPt.X > Width-45 )and (ClientPt.X < Width-29) then
  176.    begin
  177.     WinHelp(WindowHandle,CONTEXT_HELP_FILE,HELP_CONTEXT,SERVER_CERTIFICATES);
  178.     Message.Result := 0;
  179.   end else
  180.    inherited;
  181. end;
  182.  
  183. end.
  184.