Add GUI to connect to SQL
时间:2022-03-14 02:53
(*********************************************************************************) (* *) (* Below is the list of support classes that can be used from within the Pascal *) (* script. There are also three support objects available: MainForm of type *) (* TMainForm, WizardForm of type TWizardForm and UninstallProgressForm of type *) (* TUninstallProgressForm and one special constant: crHand of type *) (* TControl.Cursor. *) (* Note: MainForm is only visible if WindowVisible is set to yes. *) (* Note: you may find it useful to also refer to the Delphi Visual Component *) (* Library (VCL) Help files by Embarcadero Technologies, since the classes below *) (* are mostly simple wrappers around the VCL classes Inno Setup uses internally. *) (* See http://docs.embarcadero.com/products/rad_studio/ . *) (* *) (*********************************************************************************) Type TObject = class constructor Create; procedure Free; end; TBits = class(TObject) function OpenBit: Integer; property Bits[Index: Integer]: Boolean; read write; property Size: Integer; read write; end; TPersistent = class(TObject) procedure Assign(Source: TPersistent); end; TStream = class(TObject) function Read(Buffer: String; Count: Longint): Longint; function Write(Buffer: String; Count: Longint): Longint; function Seek(Offset: Longint; Origin: Word): Longint; procedure ReadBuffer(Buffer: String; Count: Longint); procedure WriteBuffer(Buffer: String; Count: Longint); function CopyFrom(Source: TStream; Count: Int64): Longint; property Position: Longint; read write; property Size: Longint; read write; end; TParser = class(TObject) constructor Create(Stream: TStream); procedure CheckToken(T: Char); procedure CheckTokenSymbol(S: String); procedure Error(Ident: Integer); procedure ErrorStr(Message: String); procedure HexToBinary(Stream: TStream); function NextToken: Char; function SourcePos: Longint; function TokenComponentIdent: String; function TokenFloat: Extended; function TokenInt: Longint; function TokenString: String; function TokenSymbolIs(S: String): Boolean; property SourceLine: Integer; read; property Token: Char; read; end; TCollectionItem = class(TPersistent) constructor Create(Collection: TCollection); property Collection: TCollection; read write; property Index: Integer; read write; end; TCollection = class(TPersistent) function Add: TCollectionItem; procedure BeginUpdate; procedure Clear; procedure EndUpdate; property Count: Integer; read; property Items[Index: Integer]: TCollectionItem; read write; end; HMENU = Cardinal; HAccel = Cardinal; Exception = class(TObject) end; EMenuError = class(Exception) end; TMenuBreak = (mbNone, mbBreak, mbBarBreak); TShortCut = Word; TIMAGEINDEX = Integer; TMenuItem = class(TComponent) constructor Create(AOwner: TComponent); procedure Insert(Index: Integer; Item: TMenuItem); procedure Delete(Index: Integer); procedure Click; function IndexOf(Item: TMenuItem): Integer; function GetParentComponent: TComponent; function HasParent: Boolean; procedure Add(Item: TMenuItem); procedure Remove(Item: TMenuItem); property Command: Word; read; property Handle: HMENU; read; property Count: Integer; read; property Items[Index: Integer]: TMenuItem; read; property MenuIndex: Integer; read write; property Parent: TMenuItem; read; property Caption: String; read write; property Checked: Boolean; read write; property Default: Boolean; read write; property Enabled: Boolean; read write; property GroupIndex: Byte; read write; property HelpContext: THelpContext; read write; property Hint: String; read write; property RadioItem: Boolean; read write; property ShortCut: TShortCut; read write; property Visible: Boolean; read write; property OnClick: TNotifyEvent; read write; property ImageIndex: TImageIndex; read write; end; TMenuChangeEvent = procedure (Sender: TObject; Source: TMenuItem; Rebuild: Boolean); TFindItemKind = (fkCommand, fkHandle, fkShortCut); TWMMenuChar = record Msg: Cardinal; User: Char; MenuFlag: Word; { MF_POPUP, MF_SYSMENU } Menu: HMENU; Result: Longint; end; TMenuItemAutoFlag = (maAutomatic, maManual, maParent); TMenuAutoFlag = TMenuItemAutoFlag; TBiDiMode = (bdLeftToRight, bdRightToLeft, bdRightToLeftNoAlign, bdRightToLeftReadingOnly); TMenu = class(TComponent) constructor Create(AOwner: TComponent); function DispatchCommand(ACommand: Word): Boolean; function DispatchPopup(AHandle: HMENU): Boolean; function FindItem(Value: Integer; Kind: TFindItemKind): TMenuItem; function GetHelpContext(Value: Integer; ByCommand: Boolean): THelpContext; property Handle: HMENU; read; property WindowHandle: HWnd; read write; property Items: TMenuItem; read; property Images: TCustomImageList; read write; function IsRightToLeft: Boolean; procedure ParentBiDiModeChanged(AControl: TObject); procedure ProcessMenuChar(var Message: TWMMenuChar); property AutoHotkeys: TMenuAutoFlag; read write; property AutoLineReduction: TMenuAutoFlag; read write; property BiDiMode: TBiDiMode; read write; property OwnerDraw: Boolean; read write; property ParentBiDiMode: Boolean; read write; end; TMainMenu = class(TMenu) procedure Merge(Menu: TMainMenu); procedure Unmerge(Menu: TMainMenu); procedure PopulateOle2Menu(SharedMenu: HMENU; Groups: TArrayOfInteger; var Widths: TArrayOfInteger); procedure GetOle2AcceleratorTable(var AccelTable: HAccel; var AccelCount: Integer; Groups: TArrayOfInteger); procedure SetOle2MenuHandle(Handle: HMENU); property AutoMerge: Boolean; read write; end; TPopupAlignment = (paLeft, paRight, paCenter); TTrackButton = (tbRightButton, tbLeftButton); TMenuAnimations = (maLeftToRight, maRightToLeft, maTopToBottom, maBottomToTop, maNone); TMenuAnimation = set of TMenuAnimations; TPopupMenu = class(TMenu) constructor Create(AOwner: TComponent); procedure Popup(X, Y: Integer); property PopupComponent: TComponent; read write; property Alignment: TPopupAlignment; read write; property AutoPopup: Boolean; read write; property HelpContext: THelpContext; read write; property OnPopup: TNotifyEvent; read write; property MenuAnimation: TMenuAnimation; read write; property TrackButton: TTrackButton; read write; end; TComponentStateE = (csLoading, csReading, csWriting, csDestroying, csDesigning, csAncestor, csUpdating, csFixups, csFreeNotification, csInline, csDesignInstance); TComponentState = set of TComponentStateE; TComponent = class(TPersistent) function FindComponent(AName: String): TComponent; constructor Create(AOwner: TComponent); property Owner: TComponent; read write; property Components[Index: Integer]: TComponent; read; property ComponentCount: Integer; read; property ComponentIndex: Integer; read write; property ComponentState: Byte; read; property Name: String; read write; property Tag: Longint; read write; procedure DestroyComponents; procedure Destroying; procedure FreeNotification(AComponent: TComponent); procedure InsertComponent(AComponent: TComponent); procedure RemoveComponent(AComponent: TComponent); property DesignInfo: Longint; read write; end; TTimer = class(TComponent) property Enabled: Boolean; read write; property Interval: Cardinal; read write; property OnTimer: TNotifyEvent; read write; end; TStrings = class(TPersistent) function Add(S: String): Integer; procedure Append(S: String); procedure AddStrings(Strings: TStrings); procedure Clear; procedure Delete(Index: Integer); function IndexOf(const S: String): Integer; procedure Insert(Index: Integer; S: String); property Count: Integer; read; property Text: String; read write; property CommaText: String; read write; procedure LoadFromFile(FileName: String); procedure SaveToFile(FileName: String); property Strings[Index: Integer]: String; read write; property Objects[Index: Integer]: TObject; read write; procedure BeginUpdate; procedure EndUpdate; function Equals(Strings: TStrings): Boolean; procedure Exchange(Index1, Index2: Integer); function IndexOfName(Name: String): Integer; procedure LoadFromStream(Stream: TStream); procedure Move(CurIndex, NewIndex: Integer); procedure SaveToStream(Stream: TStream); procedure SetText(Text: PChar); property Names[Index: Integer]: String; read; property Values[Name: String]: String; read write; function AddObject(S: String; AObject: TObject): Integer; function GetText: PChar; function IndexOfObject(AObject: TObject): Integer; procedure InsertObject(Index: Integer; S: String; AObject: TObject); end; TAlignment = (taLeftJustify, taRightJustify, taCenter); THelpEvent = function (Command: Word; Data: Longint; var CallHelp: Boolean): Boolean; TGetStrProc = procedure(const S: String); TDuplicates = (dupIgnore, dupAccept, dupError); TOperation = (opInsert, opRemove); THandle = Longint; TNotifyEvent = procedure(Sender: TObject); TStringList = class(TStrings) function Find(S: String; var Index: Integer): Boolean; procedure Sort; property Duplicates: TDuplicates; read write; property Sorted: Boolean; read write; property OnChange: TNotifyEvent; read write; property OnChanging: TNotifyEvent; read write; end; THandleStream = class(TStream) constructor Create(AHandle: Integer); property Handle: Integer; read; end; TFileStream = class(THandleStream) constructor Create(Filename: String; Mode: Word); end; TCustomMemoryStream = class(TStream) procedure SaveToStream(Stream: TStream); procedure SaveToFile(FileName: String); end; TMemoryStream = class(TCustomMemoryStream) procedure Clear; procedure LoadFromStream(Stream: TStream); procedure LoadFromFile(FileName: String); procedure SetSize(NewSize: Longint); end; TResourceStream = class(TCustomMemoryStream) constructor Create(Instance: THandle; ResName: String; ResType: Integer); constructor CreateFromID(Instance: THandle; ResID: Integer; ResType: Integer); end; TGraphicsObject = class(TPersistent) property OnChange: TNotifyEvent; read write; end; TFontStyle = (fsBold, fsItalic, fsUnderline, fsStrikeOut); TFontStyles = set of TFontStyle; TFontPitch = (fpDefault, fpVariable, fpFixed); TFont = class(TGraphicsObject) constructor Create; property Handle: Integer; read; property Color: Integer; read write; property Height: Integer; read write; property Name: String; read write; property Pitch: Byte; read write; property Size: Integer; read write; property PixelsPerInch: Integer; read write; property Style: TFontStyles; read write; end; TRect = record Left, Top, Right, Bottom: Integer; end; TPenMode = (pmBlack, pmWhite, pmNop, pmNot, pmCopy, pmNotCopy, pmMergePenNot, pmMaskPenNot, pmMergeNotPen, pmMaskNotPen, pmMerge, pmNotMerge, pmMask, pmNotMask, pmXor, pmNotXor); TPenStyle = (psSolid, psDash, psDot, psDashDot, psDashDotDot, psClear, psInsideFrame); TPen = class(TGraphicsObject) constructor Create; property Color: TColor; read write; property Mode: TPenMode; read write; property Style: TPenStyle; read write; property Width: Integer; read write; end; TBrushStyle = (bsSolid, bsClear, bsHorizontal, bsVertical, bsFDiagonal, bsBDiagonal, bsCross, bsDiagCross); TColor = integer; HBITMAP = Integer; HPALETTE = Integer; TBrush = class(TGraphicsObject) constructor Create; property Color: TColor; read write; property Style: TBrushStyle; read write; end; TCanvas = class(TPersistent) procedure Arc(X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer); procedure Chord(X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer); procedure Draw(X, Y: Integer; Graphic: TGraphic); procedure Ellipse(X1, Y1, X2, Y2: Integer); procedure FillRect(const Rect: TRect); procedure FloodFill(X, Y: Integer; Color: TColor; FillStyle: Byte); procedure LineTo(X, Y: Integer); procedure MoveTo(X, Y: Integer); procedure Pie(X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer); procedure Rectangle(X1, Y1, X2, Y2: Integer); procedure Refresh; procedure RoundRect(X1, Y1, X2, Y2, X3, Y3: Integer); function TextHeight(Text: String): Integer; procedure TextOut(X, Y: Integer; Text: String); function TextWidth(Text: String): Integer; property Handle: Integer; read write; property Pixels: Integer; read write; property Brush: TBrush; read; property CopyMode: Byte; read write; property Font: TFont; read; property Pen: TPen; read; end; TGraphic = class(TPersistent) procedure LoadFromFile(const Filename: String); procedure SaveToFile(const Filename: String); property Empty: Boolean; read write; property Height: Integer; read write; property Modified: Boolean; read write; property Width: Integer; read write; property OnChange: TNotifyEvent; read write; end; TBitmap = class(TGraphic) procedure LoadFromStream(Stream: TStream); procedure SaveToStream(Stream: TStream); property Canvas: TCanvas; read write; property Handle: HBITMAP; read write; procedure Dormant; procedure FreeImage; procedure LoadFromClipboardFormat(AFormat: Word; AData: THandle; APalette: HPALETTE); procedure LoadFromResourceName(Instance: THandle; const ResName: String); procedure LoadFromResourceID(Instance: THandle; ResID: Integer); function ReleaseHandle: HBITMAP; function ReleasePalette: HPALETTE; procedure SaveToClipboardFormat(var AFormat: Word; var AData: THandle; var APalette: HPALETTE); property Monochrome: Boolean; read write; property Palette: HPALETTE; read write; property IgnorePalette: Boolean; read write; property TransparentColor: TColor; read write; end; HICON = Integer; TIcon = class(TGraphic) procedure LoadFromStream(Stream: TStream); procedure SaveToStream(Stream: TStream); function ReleaseHandle: HICON; property Handle: HICON; read write; end; TNewIcon = class(TGraphic) procedure LoadFromStream(Stream: TStream); procedure SaveToStream(Stream: TStream); procedure LoadFromResourceName(Instance: THandle; const ResName: String); procedure LoadFromResourceID(Instance: THandle; ResID: Integer); function ReleaseHandle: HICON; property Handle: HICON; read write; end; TAlign = (alNone, alTop, alBottom, alLeft, alRight, alClient); TDragMode = (dmManual, dmAutomatic); TDragState = (dsDragEnter, dsDragLeave, dsDragMove); TDragKind = (dkDrag, dkDock); TDragOverEvent = procedure(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); TDragDropEvent = procedure(Sender, Source: TObject;X, Y: Integer); TEndDragEvent = procedure(Sender, Target: TObject; X, Y: Integer); TDragObject = class(TObject) function GetName: String; procedure HideDragImage; function Instance: Longint; procedure ShowDragImage; end; TStartDragEvent = procedure(Sender: TObject; var DragObject: TDragObject); TControl = class(TComponent) constructor Create(AOwner: TComponent); procedure BringToFront; procedure Hide; procedure Invalidate; procedure Refresh; procedure Repaint; procedure SendToBack; procedure Show; procedure Update; procedure SetBounds(ALeft, ATop, AWidth, AHeight: Integer); property Parent: TWinControl; read write; property Left: Integer; read write; property Top: Integer; read write; property Width: Integer; read write; property Height: Integer; read write; property Hint: String; read write; property Align: TAlign; read write; property ClientHeight: Longint; read write; property ClientWidth: Longint; read write; property ShowHint: Boolean; read write; property ParentShowHint: Boolean; read write; property Visible: Boolean; read write; property Enabled: Boolean; read write; property Cursor: Integer; read write; function Dragging: Boolean; function HasParent: Boolean; procedure BeginDrag(Immediate: Boolean); function ClientToScreen(Point: TPoint): TPoint; procedure EndDrag(Drop: Boolean); function GetTextBuf(Buffer: PChar; BufSize: Integer): Integer; function GetTextLen: Integer; procedure SetTextBuf(Buffer: PChar); function Perform(Msg: Cardinal; WParam, LParam: Longint): Longint; function ScreenToClient(Point: TPoint): TPoint; end; TWinControl = class(TControl) property Handle: Longint; read write; property Showing: Boolean; read; property TabOrder: Integer; read write; property TabStop: Boolean; read write; function CanFocus: Boolean; function Focused: Boolean; property Controls[Index: Integer]: TControl; read; property ControlCount: Integer; read; function HandleAllocated: Boolean; procedure HandleNeeded; procedure EnableAlign; procedure RemoveControl(AControl: TControl); procedure InsertControl(AControl: TControl); procedure Realign; procedure ScaleBy(M, D: Integer); procedure ScrollBy(DeltaX, DeltaY: Integer); procedure SetFocus; procedure PaintTo(DC: HDC; X, Y: Integer); function ContainsControl(Control: TControl): Boolean; procedure DisableAlign; procedure UpdateControlState; property Brush: TBrush; read; property HelpContext: Longint; read write; end; TGraphicControl = class(TControl) end; TCustomControl = class(TWinControl) end; TFieldChangeEvent = procedure(Sender: TObject; OldField, Value: Byte); TIPAddressEdit = class(TCustomControl) procedure SetFieldFocus(Field: Byte); function IsBlank: Boolean; property Field1Value: Byte; read write; property Field2Value: Byte; read write; property Field3Value: Byte; read write; property Field4Value: Byte; read write; property Field1Max: Byte; read write; property Field1Min: Byte; read write; property Field2Max: Byte; read write; property Field2Min: Byte; read write; property Field3Max: Byte; read write; property Field3Min: Byte; read write; property Field4Max: Byte; read write; property Field4Min: Byte; read write; property IPValue: LongWord; read write; property OnChange: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnFieldChange: TFieldChangeEvent; read write; property InitClear: Boolean; read write; property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; end; TNewGroupBox = class(TCustomControl) property Caption: String; read write; property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property ParentBackground: Boolean; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TScrollBarKind = (sbHorizontal, sbVertical); TScrollBarInc = SmallInt; TControlScrollBar = class(TPersistent) property Kind: TScrollBarKind; read; property ScrollPos: Integer; read; property Margin: Word; read write; property Increment: TScrollBarInc; read write; property Range: Integer; read write; property Position: Integer; read write; property Tracking: Boolean; read write; property Visible: Boolean; read write; end; TScrollingWinControl = class(TWinControl) procedure ScrollInView(AControl: TControl); property HorzScrollBar: TControlScrollBar; read write; property VertScrollBar: TControlScrollBar; read write; end; TIdleEvent = procedure(Sender: TObject; var Done: Boolean); TFormBorderStyle = (bsNone, bsSingle, bsSizeable, bsDialog, bsToolWindow, bsSizeToolWin); TBorderStyle = TFormBorderStyle; TWindowState = (wsNormal, wsMinimized, wsMaximized); TFormStyle = (fsNormal, fsMDIChild, fsMDIForm, fsStayOnTop); TBorderIcon = (biSystemMenu, biMinimize, biMaximize, biHelp); TBorderIcons = set of TBorderIcon; TPosition = (poDesigned, poDefault, poDefaultPosOnly, poDefaultSizeOnly, poScreenCenter, poDesktopCenter, poMainFormCenter, poOwnerFormCenter); TPrintScale = (poNone, poProportional, poPrintToFit); TCloseAction = (caNone, caHide, caFree, caMinimize); TCloseEvent = procedure(Sender: TObject; var Action: TCloseAction); TCloseQueryEvent = procedure(Sender: TObject; var CanClose: Boolean); TEShiftState = (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble, ssMeta, ssSuper, ssHyper, ssAltGr, ssCaps, ssNum, ssScroll, ssTriple, ssQuad); TShiftState = set of TEShiftState; TKeyEvent = procedure(Sender: TObject; var Key: Word; Shift: TShiftState); TKeyPressEvent = procedure(Sender: TObject; var Key: Char); THelpContext = Longint; TScrollBox = class(TScrollingWinControl) property BorderStyle: TBorderStyle; read write; property Color: TColor; read write; property Font: TFont; read write; property AutoScroll: Boolean; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnResize: TNotifyEvent; read write; property DragCursor: TCursor; read write; property DragMode: TDragMode; read write; property PopupMenu: TPopupMenu; read write; property Ctl3D: Boolean; read write; property ParentCtl3D: Boolean; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TTileMode = (tbHorizontal, tbVertical); TForm = class(TScrollingWinControl) constructor CreateNew(AOwner: TComponent); procedure Close; procedure Hide; procedure Show; function ShowModal: Integer; procedure Release; property Active: Boolean; read; property ActiveControl: TWinControl; read write; property BorderIcons: TBorderIcons; read write; property BorderStyle: TFormBorderStyle; read write; property Caption: String; read write; property AutoScroll: Boolean; read write; property Color: TColor; read write; property Font: TFont; read write; property FormStyle: TFormStyle; read write; property KeyPreview: Boolean; read write; property Position: TPosition; read write; property OnActivate: TNotifyEvent; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnClose: TCloseEvent; read write; property OnCloseQuery: TCloseQueryEvent; read write; property OnCreate: TNotifyEvent; read write; property OnDestroy: TNotifyEvent; read write; property OnDeactivate: TNotifyEvent; read write; property OnHide: TNotifyEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property OnResize: TNotifyEvent; read write; property OnShow: TNotifyEvent; read write; procedure ArrangeIcons; procedure Print; procedure SendCancelMode(Sender: TControl); property ActiveOLEControl: TWinControl; read write; property OleFormObject: TOLEFORMOBJECT; read write; property ClientHandle: Longint; read; property TileMode: TTileMode; read write; procedure Cascade; function CloseQuery: Boolean; procedure DefocusControl(Control: TWinControl; Removing: Boolean); procedure FocusControl(Control: TWinControl); procedure Next; procedure Previous; function SetFocusedControl(Control: TWinControl): Boolean; procedure Tile; property ActiveMDIChild: TForm; read; property Canvas: TCanvas; read; property DropTarget: Boolean; read write; property ModalResult: Longint; read write; property MDIChildCount: Integer; read; property MDIChildren[I: Integer]: TForm; read; property Icon: TIcon; read write; property Menu: TMainMenu; read write; property ObjectMenuItem: TMenuItem; read write; property PixelsPerInch: Integer; read write; property PrintScale: TPrintScale; read write; property Scaled: Boolean; read write; property WindowState: TWindowState; read write; property WindowMenu: TMenuItem; read write; property Ctl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDockOver: TDockOverEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnPaint: TNotifyEvent; read write; property DoubleBuffered: Boolean; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TMsg = record hwnd: HWND; message: LongWord; wParam: Longint; lParam: Longint; time: LongWord; pt: TPoint; end; TMessageEvent = procedure (var Msg: TMsg; var Handled: Boolean); TApplication = class(TComponent) procedure BringToFront; function MessageBox(Text, Caption: PChar; Flags: Word): Integer; procedure Minimize; procedure ProcessMessages; procedure Restore; procedure Terminate; property Active: Boolean; read; property ExeName: String; read; property Handle: Longint; read; property UpdateFormatSettings: Boolean; read write; property Hint: String; read write; property MainForm: TForm; read; property ShowHint: Boolean; read write; property ShowMainForm: Boolean; read write; property Terminated: Boolean; read; property Title: String; read write; property OnActivate: TNotifyEvent; read write; property OnDeactivate: TNotifyEvent; read write; property OnIdle: TIdleEvent; read write; property OnHint: TNotifyEvent; read write; property OnMinimize: TNotifyEvent; read write; property OnRestore: TNotifyEvent; read write; procedure ControlDestroyed(Control: TControl); procedure CancelHint; procedure HandleException(Sender: TObject); procedure HandleMessage; procedure HideHint; procedure Initalize; procedure NormalizeTopMosts; procedure RestoreTopMosts; procedure Run; function HelpCommand(Command: Integer; Data: Longint): Boolean; function HelpContext(Context: THelpContext): Boolean; function HelpJump(JumpID: String): Boolean; property DialogHandle: Longint; read write; procedure CreateHandle; property HelpFile: String; read write; property HintColor: TColor; read write; property HintPause: Integer; read write; property HintShortPause: Integer; read write; property HintHidePause: Integer; read write; property Icon: TIcon; read write; property OnHelp: THelpEvent; read write; property OnMessage: TMessageEvent; read write; end; TScreen = class(TComponent) property ActiveControl: TWinControl; read; property ActiveForm: TForm; read; property Cursor: TCursor; read write; property Cursors[Index: Integer]: Longword; read write; property FormCount: Integer; read; property Forms[Index: Integer]: TForm; read; property Fonts: TStrings; read; property Height: Integer; read; property Width: Integer; read; property PixelsPerInch: Integer; read; property OnActiveControlChange: TNotifyEvent; read write; property OnActiveFormChange: TNotifyEvent; read write; end; TCustomLabel = class(TGraphicControl) end; TMouseButton = (mbLeft, mbRight, mbMiddle); TMouseEvent = procedure (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); TMouseMoveEvent = procedure(Sender: TObject; Shift: TShiftState; X, Y: Integer); HWND = Longint; TAnchorKind = (akTop, akLeft, akRight, akBottom); TAnchors = set of TAnchorKind; TModalResult = Integer; TCursor = Integer; TPoint = record x, y: Longint; end; TTextLayout = (tlTop, tlCenter, tlBottom); TLabel = class(TCustomLabel) property Alignment: TAlignment; read write; property AutoSize: Boolean; read write; property Caption: String; read write; property Color: TColor; read write; property FocusControl: TWinControl; read write; property Font: TFont; read write; property Layout: TTextLayout; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property Transparent: Boolean; read write; property WordWrap: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnEndDrag: TEndDragEvent; read write; property ShowAccelChar: Boolean; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TCustomEdit = class(TWinControl) procedure Clear; procedure ClearSelection; procedure SelectAll; property Modified: Boolean; read write; property SelLength: Integer; read write; property SelStart: Integer; read write; property SelText: String; read write; property Text: String; read write; procedure CopyToClipboard; procedure CutToClipboard; procedure PasteFromClipboard; function GetSelTextBuf(Buffer: PChar; BufSize: Integer): Integer; procedure SetSelTextBuf(Buffer: PChar); end; TEditCharCase = (ecNormal, ecUpperCase, ecLowerCase); TEdit = class(TCustomEdit) property AutoSelect: Boolean; read write; property AutoSize: Boolean; read write; property BorderStyle: TBorderStyle; read write; property CharCase: TEditCharCase; read write; property Color: TColor; read write; property Font: TFont; read write; property HideSelection: Boolean; read write; property MaxLength: Integer; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property PasswordChar: Char; read write; property ReadOnly: Boolean; read write; property Text: String; read write; property OnChange: TNotifyEvent; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property OEMConvert: Boolean; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TNewEdit = class(TEdit) end; TCustomMemo = class(TCustomEdit) property Lines: TStrings; read write; end; TScrollStyle = (ssNone, ssHorizontal, ssVertical, ssBoth); TMemo = class(TCustomMemo) property Alignment: TAlignment; read write; property BorderStyle: TBorderStyle; read write; property Color: TColor; read write; property Font: TFont; read write; property HideSelection: Boolean; read write; property MaxLength: Integer; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property ReadOnly: Boolean; read write; property ScrollBars: TScrollStyle; read write; property WantReturns: Boolean; read write; property WantTabs: Boolean; read write; property WordWrap: Boolean; read write; property OnChange: TNotifyEvent; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property OEMConvert: Boolean; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TNewMemo = class(TMemo) end; TCustomComboBox = class(TWinControl) property DroppedDown: Boolean; read write; property Items: TStrings; read write; property ItemIndex: Integer; read write; procedure Clear; procedure SelectAll; property Canvas: TCanvas; read; property SelLength: Integer; read write; property SelStart: Integer; read write; property SelText: String; read write; end; TComboBoxStyle = (csDropDown, csSimple, csDropDownList, csOwnerDrawFixed, csOwnerDrawVariable); TDrawItemEvent = procedure(Control: TWinControl; Index: Integer; Rect: TRect; State: Byte); TMeasureItemEvent = procedure(Control: TWinControl; Index: Integer; var Height: Integer); TComboBox = class(TCustomComboBox) property Style: TComboBoxStyle; read write; property Color: TColor; read write; property DropDownCount: Integer; read write; property Font: TFont; read write; property MaxLength: Integer; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property Sorted: Boolean; read write; property Text: String; read write; property OnChange: TNotifyEvent; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnDropDown: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property Ctl3D: Boolean; read write; property DragMode: TDragMode; read write; property DragCursor: Longint; read write; property ItemHeight: Integer; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnDrawItem: TDrawItemEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMeasureItem: TMeasureItemEvent; read write; property OnStartDrag: TStartDragEvent; read write; end; TNewComboBox = class(TComboBox) end; TButtonControl = class(TWinControl) end; TButton = class(TButtonControl) procedure Click; property Cancel: Boolean; read write; property Caption: String; read write; property Default: Boolean; read write; property Font: TFont; read write; property ModalResult: Longint; read write; property ParentFont: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TNewButton = class(TButton) property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TCustomCheckBox = class(TButtonControl) end; TCheckBoxState = (cbUnchecked, cbChecked, cbGrayed); TCheckBox = class(TCustomCheckBox) property Alignment: TAlignment; read write; property AllowGrayed: Boolean; read write; property Caption: String; read write; property Checked: Boolean; read write; property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property State: TCheckBoxState; read write; property OnClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TNewCheckBox = class(TCheckBox) property ParentBackground: Boolean; read write; end; TRadioButton = class(TButtonControl) property Alignment: TAlignment; read write; property Caption: String; read write; property Checked: Boolean; read write; property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TNewRadioButton = class(TRadioButton) property ParentBackground: Boolean; read write; end; TCustomListBox = class(TWinControl) property Items: TStrings; read write; property ItemIndex: Integer; read write; property SelCount: Integer; read; property Selected[Index: Integer]: Boolean; read write; procedure Clear; function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer; function ItemRect(Index: Integer): TRect; property Canvas: TCanvas; read; property TopIndex: Integer; read write; end; TListBoxStyle = (lbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable); TScrollCode = (scLineUp, scLineDown, scPageUp, scPageDown, scPosition, scTrack, scTop, scBottom, scEndScroll); TScrollEvent = procedure(Sender: TObject; ScrollCode: TScrollCode;var ScrollPos: Integer); TEOwnerDrawState = (odSelected, odGrayed, odDisabled, odChecked, odFocused, odDefault, odHotLight, odInactive, odNoAccel, odNoFocusRect, odReserved1, odReserved2, odComboBoxEdit); TOwnerDrawState = set of TEOwnerDrawState; TListBox = class(TCustomListBox) property BorderStyle: TBorderStyle; read write; property Color: TColor; read write; property Font: TFont; read write; property MultiSelect: Boolean; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property Sorted: Boolean; read write; property Style: TListBoxStyle; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property Columns: Integer; read write; property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property ExtendedSelect: Boolean; read write; property IntegralHeight: Boolean; read write; property ItemHeight: Integer; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property TabWidth: Integer; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnDrawItem: TDrawItemEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMeasureItem: TMeasureItemEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TNewListBox = class(TListBox) end; TScrollBar = class(TWinControl) property Kind: TScrollBarKind; read write; property Max: Integer; read write; property Min: Integer; read write; property Position: Integer; read write; property OnChange: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; procedure SetParams(APosition, AMin, AMax: Integer); property Ctl3D: Boolean; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property LargeChange: TScrollBarInc; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property SmallChange: TScrollBarInc; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnKeyDown: TKeyEvent; read write; property OnKeyPress: TKeyPressEvent; read write; property OnKeyUp: TKeyEvent; read write; property OnScroll: TScrollEvent; read write; property OnStartDrag: TStartDragEvent; read write; end; TTrackBarOrientation = (trHorizontal, trVertical); TTickMark = (tmBottomRight, tmTopLeft, tmBoth); TTickStyle = (tsNone, tsAuto, tsManual); TTrackBar = class(TWinControl) procedure SetTick(Value: Integer); property LineSize: Integer; read write; property Max: Integer; read write; property Min: Integer; read write; property Orientation: TTrackBarOrientation; read write; property PageSize: Integer; read write; property Frequency: Integer; read write; property Position: Integer; read write; property SelEnd: Integer; read write; property SelStart: Integer; read write; property TickMarks: TTickMark; read write; property TickStyle: TTickStyle; read write; property OnChange: TNotifyEvent; read write; end; TUDAlignButton = (udLeft, udRight); TUDOrientation = (udHorizontal, udVertical); TUDBtnType = (btNext, btPrev); TUDClickEvent = procedure(Sender: TObject; Button: TUDBtnType); TUDChangingEvent = procedure(Sender: TObject; var AllowChange: Boolean); TCustomUpDown = class(TWinControl) end; TUpDown = class(TCustomUpDown) property AlignButton: TUDAlignButton; read write; property Associate: TWinControl; read write; property ArrowKeys: Boolean; read write; property Min: SmallInt; read write; property Max: SmallInt; read write; property Increment: Integer; read write; property Orientation: TUDOrientation; read write; property Position: SmallInt; read write; property Thousands: Boolean; read write; property Wrap: Boolean; read write; property OnChanging: TUDChangingEvent; read write; property OnClick: TUDClickEvent; read write; end; THKModifier = (hkShift, hkCtrl, hkAlt, hkExt); THKModifiers = set of THKModifier; THKInvalidKey = (hcNone, hcShift, hcCtrl, hcAlt, hcShiftCtrl, hcShiftAlt, hcCtrlAlt, hcShiftCtrlAlt); THKInvalidKeys = set of THKInvalidKey; TCustomHotKey = class(TWinControl) end; THotKey = class(TCustomHotKey) property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property AutoSize: Boolean; read write; property HotKey: TShortCut; read write; property InvalidKeys: THKInvalidKeys; read write; property Modifiers: THKModifiers; read write; property PopupMenu: TPopupMenu; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TCustomTabControl = class(TWinControl) end; TTabChangingEvent = procedure(Sender: TObject; var AllowChange: Boolean); TTabControl = class(TCustomTabControl) property ParentFont: Boolean; read write; property Font: TFont; read write; property DisplayRect: TRect; read; property MultiLine: Boolean; read write; property TabHeight: Smallint; read write; property TabIndex: Integer; read write; property Tabs: TStrings; read write; property TabWidth: Smallint; read write; property OnChange: TNotifyEvent; read write; property OnChanging: TTabChangingEvent; read write; end; TTabSheet = class(TWinControl) property ParentFont: Boolean; read write; property Font: TFont; read write; property PageControl: TPageControl; read write; property Caption: String; read write; property TabIndex: Integer; read; property PageIndex: Integer; read write; property TabVisible: Boolean; read write; end; TPageControl = class(TCustomTabControl) property ParentFont: Boolean; read write; property Font: TFont; read write; function FindNextPage(CurPage: TTabSheet; GoForward, CheckTabVisible: Boolean): TTabSheet; procedure SelectNextPage(GoForward: Boolean); property PageCount: Integer; read; property Pages[Index: Integer]: TTabSheet; read; property ActivePage: TTabSheet; read write; property MultiLine: Boolean; read write; property TabHeight: Smallint; read write; property TabWidth: Smallint; read write; property OnChange: TNotifyEvent; read write; property OnChanging: TTabChangingEvent; read write; end; TShapeType = (stRectangle, stSquare, stRoundRect, stRoundSquare, stEllipse, stCircle); TBevelShape = (bsBox, bsFrame, bsTopLine, bsBottomLine, bsLeftLine, bsRightLine, bsSpacer); TBevelStyle = (bsLowered, bsRaised); TBevel = class(TGraphicControl) property Shape: TBevelShape; read write; property Style: TBevelStyle; read write; end; TShape = class(TGraphicControl) property Brush: TBrush; read write; property Pen: TPen; read write; property Shape: TShapeType; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TPaintBox = class(TGraphicControl) property Canvas: TCanvas; read; property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnPaint: TNotifyEvent; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; TCustomPanel = class(TCustomControl) end; TPanelBevel = (bvNone, bvLowered, bvRaised, bvSpace); TBevelWidth = Longint; TBorderWidth = Longint; TSectionEvent = procedure(Sender: TObject; ASection, AWidth: Integer); TPanel = class(TCustomPanel) property Alignment: TAlignment; read write; property BevelInner: TPanelBevel; read write; property BevelOuter: TPanelBevel; read write; property BevelWidth: TBevelWidth; read write; property BorderWidth: TBorderWidth; read write; property BorderStyle: TBorderStyle; read write; property Caption: String; read write; property Color: TColor; read write; property Font: TFont; read write; property ParentColor: Boolean; read write; property ParentFont: Boolean; read write; property OnClick: TNotifyEvent; read write; property OnDblClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property DragCursor: Longint; read write; property DragMode: TDragMode; read write; property Ctl3D: Boolean; read write; property Locked: Boolean; read write; property ParentCtl3D: Boolean; read write; property PopupMenu: TPopupMenu; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnEndDrag: TEndDragEvent; read write; property OnMouseDown: TMouseEvent; read write; property OnMouseMove: TMouseMoveEvent; read write; property OnMouseUp: TMouseEvent; read write; property OnResize: TNotifyEvent; read write; property OnStartDrag: TStartDragEvent; read write; property ParentBackground: Boolean; read write; property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; end; THeaderSectionStyle = (hsText, hsOwnerDraw); THeaderSection = class(TCollectionItem) property Left: Integer; read; property Right: Integer; read; property Alignment: TAlignment; read write; property AllowClick: Boolean; read write; property MaxWidth: Integer; read write; property MinWidth: Integer; read write; property Style: THeaderSectionStyle; read write; property Text: string; read write; property Width: Integer; read write; end; THeaderSections = class(TCollection) constructor Create(HeaderControl: THeaderControl); function Add: THeaderSection; Property Items[Index: Integer]: THeaderSection; read write; end; TSectionTrackState = (tsTrackBegin, tsTrackMove, tsTrackEnd); TDrawSectionEvent = procedure(HeaderControl: THeaderControl; Section: THeaderSection; const Rect: TRect; Pressed: Boolean); TSectionNotifyEvent = procedure(HeaderControl: THeaderControl; Section: THeaderSection); TSectionTrackEvent = procedure(HeaderControl: THeaderControl; Section: THeaderSection; Width: Integer; State: TSectionTrackState); THeaderControl = class(TWinControl) property Canvas: TCanvas; read; property Sections: THeaderSections; read write; property OnDrawSection: TDrawSectionEvent; read write; property OnResize: TNotifyEvent; read write; property OnSectionClick: TSectionNotifyEvent; read write; property OnSectionResize: TSectionNotifyEvent; read write; property OnSectionTrack: TSectionTrackEvent; read write; end; HTreeItem = Longword; TTVCompare = function(lParam1, lParam2, lParamSort: Longint): Integer; TNodeAttachMode = (naAdd, naAddFirst, naAddChild, naAddChildFirst, naInsert); THitTest = (htAbove, htBelow, htNowhere, htOnItem, htOnButton, htOnIcon, htOnIndent, htOnLabel, htOnRight, htOnStateIcon, htToLeft, htToRight); THitTests = set of THitTest; TSortType = (stNone, stData, stText, stBoth); TResType = (rtBitmap, rtCursor, rtIcon); HImageList = THandle; TDrawingStyle = (dsFocus, dsSelected, dsNormal, dsTransparent); TImageType = (itImage, itMask); TTreeNode = class(TPersistent) constructor Create(AOwner: TTreeNodes); function AlphaSort: Boolean; procedure Collapse(Recurse: Boolean); function CustomSort(SortProc: TTVCompare; Data: Longint): Boolean; procedure Delete; procedure DeleteChildren; function DisplayRect(TextOnly: Boolean): TRect; function EditText: Boolean; procedure EndEdit(Cancel: Boolean); procedure Expand(Recurse: Boolean); function GetFirstChild: TTreeNode; function GetHandle: HWND; function GetLastChild: TTreeNode; function GetNext: TTreeNode; function GetNextChild(Value: TTreeNode): TTreeNode; function GetNextSibling: TTreeNode; function GetNextVisible: TTreeNode; function GetPrev: TTreeNode; function GetPrevChild(Value: TTreeNode): TTreeNode; function GetPrevSibling: TTreeNode; function GetPrevVisible: TTreeNode; function HasAsParent(Value: TTreeNode): Boolean; function IndexOf(Value: TTreeNode): Integer; procedure MakeVisible; procedure MoveTo(Destination: TTreeNode; Mode: TNodeAttachMode); property AbsoluteIndex: Integer; read; property Count: Integer; read; property Cut: Boolean; read write; property Data: TObject; read write; property Deleting: Boolean; read; property Focused: Boolean; read write; property DropTarget: Boolean; read write; property Selected: Boolean; read write; property Expanded: Boolean; read write; property Handle: HWND; read; property HasChildren: Boolean; read write; property ImageIndex: Integer; read write; property Index: Integer; read; property IsVisible: Boolean; read; property Item[Index: Integer]: TTreeNode; read write; property ItemId: HTreeItem; read; property Level: Integer; read; property OverlayIndex: Integer; read write; property Parent: TTreeNode; read; property SelectedIndex: Integer; read write; property StateIndex: Integer; read write; property Text: String; read write; property Owner: TTreeNodes; read; property TreeView: TCustomTreeView; read; end; TTreeNodes = class(TPersistent) constructor Create(AOwner: TCustomTreeView); function AddChildFirst(Node: TTreeNode; const S: String): TTreeNode; function AddChild(Node: TTreeNode; const S: String): TTreeNode; function AddChildObjectFirst(Node: TTreeNode; const S: String; Obj: TObject): TTreeNode; function AddChildObject(Node: TTreeNode; const S: String; Obj: TObject): TTreeNode; function AddFirst(Node: TTreeNode; const S: String): TTreeNode; function Add(Node: TTreeNode; const S: String): TTreeNode; function AddObjectFirst(Node: TTreeNode; const S: String; Obj: TObject): TTreeNode; function AddObject(Node: TTreeNode; const S: String; Obj: TObject): TTreeNode; procedure BeginUpdate; procedure Clear; procedure Delete(Node: TTreeNode); procedure EndUpdate; function GetFirstNode: TTreeNode; function GetNode(ItemId: HTreeItem): TTreeNode; function Insert(Node: TTreeNode; const S: String): TTreeNode; function InsertObject(Node: TTreeNode; const S: String; Obj: TObject): TTreeNode; property Count: Integer; read; property Handle: HWND; read; property Item[Index: Integer]: TTreeNode; read; property Owner: TCustomTreeView; read; end; TTVChangingEvent = procedure(Sender: TObject; Node: TTreeNode; var AllowChange: Boolean); TTVChangedEvent = procedure(Sender: TObject; Node: TTreeNode); TTVEditingEven = procedure(Sender: TObject; Node: TTreeNode; var AllowEdit: Boolean); TTVEditedEvent = procedure(Sender: TObject; Node: TTreeNode; var S: String); TTVExpandingEvent = procedure(Sender: TObject; Node: TTreeNode; var AllowExpansion: Boolean); TTVCollapsingEvent = procedure(Sender: TObject; Node: TTreeNode; var AllowCollapse: Boolean); TTVExpandedEvent = procedure(Sender: TObject; Node: TTreeNode); TTVCompareEvent = procedure(Sender: TObject; Node1, Node2: TTreeNode; Data: Integer; var Compare: Integer); TCustomImageList = class(TComponent) Constructor CreateSize(AWidth, AHeight: Integer); function Add(Image, Mask: TBitmap): Integer; function AddIcon(Image: TIcon): Integer; procedure AddImages(Value: TCustomImageList); function AddMasked(Image: TBitmap; MaskColor: TColor): Integer; procedure Clear; procedure Delete(Index: Integer); procedure Draw(Canvas: TCanvas; X, Y, Index: Integer); procedure DrawOverlay(Canvas: TCanvas; X, Y: Integer; ImageIndex: Integer; Overlay: Byte); function FileLoad(ResType: TResType; Name: String; MaskColor: TColor): Boolean; procedure GetBitmap(Index: Integer; Image: TBitmap); function GetHotSpot: TPoint; procedure GetIcon(Index: Integer; Image: TIcon); function GetImageBitmap: HBITMAP; function GetMaskBitmap: HBITMAP; function GetResource(ResType: TResType; Name: String; Width: Integer; LoadFlags: TLoadResources; MaskColor: TColor): Boolean; function HandleAllocated: Boolean; procedure Insert(Index: Integer; Image, Mask: TBitmap); procedure InsertIcon(Index: Integer; Image: TIcon); procedure InsertMasked(Index: Integer; Image: TBitmap; MaskColor: TColor); procedure Move(CurIndex, NewIndex: Integer); function Overlay(ImageIndex: Integer; Overlay: TOverlay): Boolean; function ResourceLoad(ResType: TResType; Name: String; MaskColor: TColor): Boolean; procedure Replace(Index: Integer; Image, Mask: TBitmap); procedure ReplaceIcon(Index: Integer; Image: TIcon); procedure ReplaceMasked(Index: Integer; NewImage: TBitmap; MaskColor: TColor); property Count: Integer; read; property Handle: HImageList; read write; end; TImageList = class(TCustomImageList) property BlendColor: TColor; read write; property BkColor: TColor; read write; property AllocBy: Integer; read write; property DrawingStyle: TDrawingStyle; read write; property Height: Integer; read write; property ImageType: TImageType; read write; property Masked: Boolean; read write; property OnChange: TNotifyEvent; read write; property ShareImages: Boolean; read write; property Width: Integer; read write; end; TCustomTreeView = class(TWinControl) function AlphaSort: Boolean; function CustomSort(SortProc: TTVCompare; Data: Longint): Boolean; procedure FullCollapse; procedure FullExpand; function GetHitTestInfoAt(X, Y: Integer): THitTests; function GetNodeAt(X, Y: Integer): TTreeNode; function IsEditing: Boolean; procedure LoadFromFile(const FileName: String); procedure LoadFromStream(Stream: TStream); procedure SaveToFile(const FileName: String); procedure SaveToStream(Stream: TStream); property DropTarget: TTreeNode; read write; property Selected: TTreeNode; read write; property TopItem: TTreeNode; read write; end; TTreeView = class(TCustomTreeView) property ShowButtons: Boolean; read write; property BorderStyle: TBorderStyle; read write; property DragCursor: TCursor; read write; property ShowLines: Boolean; read write; property ShowRoot: Boolean; read write; property ReadOnly: Boolean; read write; property DragMode: TDragMode; read write; property HideSelection: Boolean; read write; property Indent: Integer; read write; property Items: TTreeNodes; read write; property OnEditing: TTVEditingEvent; read write; property OnEdited: TTVEditedEvent; read write; property OnExpanding: TTVExpandingEvent; read write; property OnExpanded: TTVExpandedEvent; read write; property OnCollapsing: TTVCollapsingEvent; read write; property OnCompare: TTVCompareEvent; read write; property OnCollapsed: TTVExpandedEvent; read write; property OnChanging: TTVChangingEvent; read write; property OnChange: TTVChangedEvent; read write; property OnDeletion: TTVExpandedEvent; read write; property OnGetImageIndex: TTVExpandedEvent; read write; property OnGetSelectedIndex: TTVExpandedEvent; read write; property Font: TFont; read write; property Color: TColor; read write; property ParentColor: Boolean; read write; property ParentCtl3D: Boolean; read write; property Ctl3D: Boolean; read write; property SortType: TSortType; read write; property OnClick: TNotifyEvent; read write; property OnEnter: TNotifyEvent; read write; property OnExit: TNotifyEvent; read write; property OnDragDrop: TDragDropEvent; read write; property OnDragOver: TDragOverEvent; read write; property OnStartDrag: TStartDragEvent; read write; property OnEndDrag: TEndDrag