Subject | Inheriting event |
---|---|
Author | Paul Gallagher |
Post date | 2001-02-16T02:39:41Z |
How do I inherit the OnAfterPost event in a custom component? The SysDataChanged and SysStateChanged seem to be there automatically. I have tried just including the IBA_Dataset.INT file with a compiler directive, but that didn't work....
Any advise for a challenged component designer would be appreciated. I pasted the interface section of my component here, just to give you a clue what I am doing.
TIA
Paul Gallagher
unit IB_VTree;
interface
uses
Classes, Controls, Messages, DsgnIntf, VirtualTrees,
IB_Header, IB_Constants, IB_Components, IB_Editors,
IB_FieldDataLink, SysUtils, ActiveX, ExtCtrls, ComCtrls, CommCtrl,
StdCtrls, Buttons, Windows, Forms, Graphics, Menus, ImgList;
{$DEFINE IB_FieldControl}
{$DEFINE IB_UserClass}
{$DEFINE IBC_VTree}
procedure Register;
type
TIB_CustomVTree = class(TVirtualStringTree)
{$I IB_Control.INT}
private
FIB_ParentFieldDataLink: TIB_FieldDataLink;
FParentField : string;
FKeyField : string;
FDisplayField : string;
FFolderField : string;
FImageIndexField : string;
FFolderConstraints : boolean;
FFolderImageIndex : integer;
FNode : PVirtualNode;
procedure AddRootNode;
procedure AddChildNode;
//procedure OnAfterScroll; override;
function FindNode(AID: integer): PVirtualNode;
protected
procedure DoGetText(Node: PVirtualNode; Column: Integer; TextType: TVSTTextType;
var Text: WideString); override;
procedure DoInitNode(Parent, Node: PVirtualNode;
var InitStates: TVirtualNodeInitStates); override;
procedure DoChange(Node: PVirtualNode); override;
function DoDragDrop(const DataObject: IDataObject; KeyState: Integer; Pt: TPoint;
var Effect: Integer): HResult; override;
function DoGetImageIndex(Node: PVirtualNode; Kind: TVTImageKind;
Column: Integer): Integer; override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure LoadData;
published
property ParentField: string read FParentField write FParentField;
property KeyField: string read FKeyField write FKeyField;
property DisplayField: string read FDisplayField write FDisplayField;
property FolderField: string read FFolderField write FFolderField;
property ImageIndexField: string read FImageIndexField write FImageIndexField;
property FolderConstraints: boolean read FFolderConstraints write FFolderConstraints;
property FolderImageIndex: integer read FFolderImageIndex write FFolderImageIndex default -1;
end;
TIB_VTree = class(TIB_CustomVTree)
//{$I IB_Control.PBL}
published
property DataSource;
end;
[Non-text portions of this message have been removed]
Any advise for a challenged component designer would be appreciated. I pasted the interface section of my component here, just to give you a clue what I am doing.
TIA
Paul Gallagher
unit IB_VTree;
interface
uses
Classes, Controls, Messages, DsgnIntf, VirtualTrees,
IB_Header, IB_Constants, IB_Components, IB_Editors,
IB_FieldDataLink, SysUtils, ActiveX, ExtCtrls, ComCtrls, CommCtrl,
StdCtrls, Buttons, Windows, Forms, Graphics, Menus, ImgList;
{$DEFINE IB_FieldControl}
{$DEFINE IB_UserClass}
{$DEFINE IBC_VTree}
procedure Register;
type
TIB_CustomVTree = class(TVirtualStringTree)
{$I IB_Control.INT}
private
FIB_ParentFieldDataLink: TIB_FieldDataLink;
FParentField : string;
FKeyField : string;
FDisplayField : string;
FFolderField : string;
FImageIndexField : string;
FFolderConstraints : boolean;
FFolderImageIndex : integer;
FNode : PVirtualNode;
procedure AddRootNode;
procedure AddChildNode;
//procedure OnAfterScroll; override;
function FindNode(AID: integer): PVirtualNode;
protected
procedure DoGetText(Node: PVirtualNode; Column: Integer; TextType: TVSTTextType;
var Text: WideString); override;
procedure DoInitNode(Parent, Node: PVirtualNode;
var InitStates: TVirtualNodeInitStates); override;
procedure DoChange(Node: PVirtualNode); override;
function DoDragDrop(const DataObject: IDataObject; KeyState: Integer; Pt: TPoint;
var Effect: Integer): HResult; override;
function DoGetImageIndex(Node: PVirtualNode; Kind: TVTImageKind;
Column: Integer): Integer; override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure LoadData;
published
property ParentField: string read FParentField write FParentField;
property KeyField: string read FKeyField write FKeyField;
property DisplayField: string read FDisplayField write FDisplayField;
property FolderField: string read FFolderField write FFolderField;
property ImageIndexField: string read FImageIndexField write FImageIndexField;
property FolderConstraints: boolean read FFolderConstraints write FFolderConstraints;
property FolderImageIndex: integer read FFolderImageIndex write FFolderImageIndex default -1;
end;
TIB_VTree = class(TIB_CustomVTree)
//{$I IB_Control.PBL}
published
property DataSource;
end;
[Non-text portions of this message have been removed]