Class TBaseInstallDlg (unit Instdlg)

Inherits from

TBaseHelperComponent

Ancestors MUST have an overriding implementation of DoExternalComponentCall

Constructors


constructor Create(AOwner: TComponent);

Published declarations


Functions

destructor Destroy;

Register this as a dialog

procedure Loaded;

In case we somehow get "freed", we do not want to create a gap in the "back-chaining", so we will relinquish control of the event handler to the component that took it before us.

procedure DoCancelClick(Sender: TObject);

This must always go here.

procedure DoExternalComponentCall(Install: TInstall;ComponentCall: String;PO: TObject);


procedure DoInstallClick(Sender: TObject);


procedure SetDialogText(Value: TStrings);

Well, we want to be able to intercept "external component calls" made by the TInstall componet (or for that matter, any component that is installing itself).

procedure SetThemeBitmap(Value: TBitmap);


Properties

property DialogText : TStrings

Public declarations

property InstallComponent :


property OverwriteText : Boolean


property ThemeBitmap : TBitmap


Events

event OnInstallClick : TContinueEvent

Events

Variables

PreviousExternalComponentCall : TExternalComponentCall;


WrappingDialog : TForm;

Protected declarations

FDialogText : TStrings;

Private declarations

FInstallClickEvent : TContinueEvent;

Events

FOverwriteText : Boolean;


FThemeBitmap : TBitmap;



Constructors


constructor Create(AOwner: TComponent);

Published declarations


Functions


destructor Destroy;

Register this as a dialog


procedure Loaded;

In case we somehow get "freed", we do not want to create a gap in the "back-chaining", so we will relinquish control of the event handler to the component that took it before us... A fair shake if I may say so myself.


procedure DoCancelClick(Sender: TObject);

This must always go here... If we have more than one component intercepting this event, then we must "back-chain" the event calls. I.e., we will know call the event that we was previously assigned to the ExternalComponentCall event of the TInstall, if there was one. Also, ancestor must always call the inherited DoExternalComponentCall (i.e. this)


procedure DoExternalComponentCall(Install: TInstall;ComponentCall: String;PO: TObject);


procedure DoInstallClick(Sender: TObject);


procedure SetDialogText(Value: TStrings);

Well, we want to be able to intercept "external component calls" made by the TInstall componet (or for that matter, any component that is installing itself). To do this we assign an event handler to the ExternalComponentCall event of the TInstall component. However, there will probably be components before us that also want to handle the event. So what we do here is remember who was before us so that when it is our turn to handle the event, we will be "unselfish" and let the person before us call handle the event and after he/she/it is done, we will call our event handler. In essence, we have a "back-chaining" of this event call.


procedure SetThemeBitmap(Value: TBitmap);


Properties


property DialogText : TStrings

Public declarations


property InstallComponent :


property OverwriteText : Boolean


property ThemeBitmap : TBitmap


Events


event OnInstallClick : TContinueEvent

Events


Variables


PreviousExternalComponentCall : TExternalComponentCall;


WrappingDialog : TForm;

Protected declarations


FDialogText : TStrings;

Private declarations


FInstallClickEvent : TContinueEvent;

Events


FOverwriteText : Boolean;


FThemeBitmap : TBitmap;