home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / Runimage / Cbuilder4 / Include / Vcl / COMCTRLS.HPP < prev    next >
Encoding:
C/C++ Source or Header  |  1999-01-26  |  162.2 KB  |  4,311 lines

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1999 by Borland International
  3. // All rights reserved
  4.  
  5. // (DO NOT EDIT: machine generated header) 'ComCtrls.pas' rev: 4.00
  6.  
  7. #ifndef ComCtrlsHPP
  8. #define ComCtrlsHPP
  9.  
  10. #pragma delphiheader begin
  11. #pragma option push -w-
  12. #include <ActnList.hpp>    // Pascal unit
  13. #include <ExtCtrls.hpp>    // Pascal unit
  14. #include <ImgList.hpp>    // Pascal unit
  15. #include <ToolWin.hpp>    // Pascal unit
  16. #include <RichEdit.hpp>    // Pascal unit
  17. #include <StdCtrls.hpp>    // Pascal unit
  18. #include <Graphics.hpp>    // Pascal unit
  19. #include <Menus.hpp>    // Pascal unit
  20. #include <Forms.hpp>    // Pascal unit
  21. #include <Controls.hpp>    // Pascal unit
  22. #include <Classes.hpp>    // Pascal unit
  23. #include <Commctrl.hpp>    // Pascal unit
  24. #include <SysUtils.hpp>    // Pascal unit
  25. #include <Windows.hpp>    // Pascal unit
  26. #include <Messages.hpp>    // Pascal unit
  27. #include <SysInit.hpp>    // Pascal unit
  28. #include <System.hpp>    // Pascal unit
  29.  
  30. //-- user supplied -----------------------------------------------------------
  31.  
  32. namespace Comctrls
  33. {
  34. //-- type declarations -------------------------------------------------------
  35. typedef void __fastcall (__closure *TTabChangingEvent)(System::TObject* Sender, bool &AllowChange);
  36.  
  37. #pragma option push -b-
  38. enum TTabPosition { tpTop, tpBottom, tpLeft, tpRight };
  39. #pragma option pop
  40.  
  41. #pragma option push -b-
  42. enum TTabStyle { tsTabs, tsButtons, tsFlatButtons };
  43. #pragma option pop
  44.  
  45. class DELPHICLASS TCustomTabControl;
  46. typedef void __fastcall (__closure *TDrawTabEvent)(TCustomTabControl* Control, int TabIndex, const Windows::TRect 
  47.     &Rect, bool Active);
  48.  
  49. typedef void __fastcall (__closure *TTabGetImageEvent)(System::TObject* Sender, int TabIndex, int &ImageIndex
  50.     );
  51.  
  52. #pragma pack(push, 4)
  53. class PASCALIMPLEMENTATION TCustomTabControl : public Controls::TWinControl 
  54. {
  55.     typedef Controls::TWinControl inherited;
  56.     
  57. private:
  58.     Graphics::TCanvas* FCanvas;
  59.     bool FHotTrack;
  60.     Imglist::TChangeLink* FImageChangeLink;
  61.     Imglist::TCustomImageList* FImages;
  62.     bool FMultiLine;
  63.     bool FMultiSelect;
  64.     bool FOwnerDraw;
  65.     bool FRaggedRight;
  66.     int FSaveTabIndex;
  67.     Classes::TStringList* FSaveTabs;
  68.     bool FScrollOpposite;
  69.     TTabStyle FStyle;
  70.     TTabPosition FTabPosition;
  71.     Classes::TStrings* FTabs;
  72.     Windows::TSmallPoint FTabSize;
  73.     bool FUpdating;
  74.     Classes::TNotifyEvent FOnChange;
  75.     TTabChangingEvent FOnChanging;
  76.     TDrawTabEvent FOnDrawTab;
  77.     TTabGetImageEvent FOnGetImageIndex;
  78.     Windows::TRect __fastcall GetDisplayRect();
  79.     int __fastcall GetTabIndex(void);
  80.     void __fastcall ImageListChange(System::TObject* Sender);
  81.     bool __fastcall InternalSetMultiLine(bool Value);
  82.     void __fastcall SetHotTrack(bool Value);
  83.     void __fastcall SetImages(Imglist::TCustomImageList* Value);
  84.     void __fastcall SetMultiLine(bool Value);
  85.     void __fastcall SetMultiSelect(bool Value);
  86.     void __fastcall SetOwnerDraw(bool Value);
  87.     void __fastcall SetRaggedRight(bool Value);
  88.     void __fastcall SetScrollOpposite(bool Value);
  89.     void __fastcall SetStyle(TTabStyle Value);
  90.     void __fastcall SetTabHeight(short Value);
  91.     void __fastcall SetTabIndex(int Value);
  92.     void __fastcall SetTabPosition(TTabPosition Value);
  93.     void __fastcall SetTabs(Classes::TStrings* Value);
  94.     void __fastcall SetTabWidth(short Value);
  95.     void __fastcall TabsChanged(void);
  96.     void __fastcall UpdateTabSize(void);
  97.     HIDESBASE MESSAGE void __fastcall CMFontChanged(void *Message);
  98.     HIDESBASE MESSAGE void __fastcall CMSysColorChange(Messages::TMessage &Message);
  99.     MESSAGE void __fastcall CMTabStopChanged(Messages::TMessage &Message);
  100.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  101.     HIDESBASE MESSAGE void __fastcall CMDialogChar(Messages::TWMKey &Message);
  102.     MESSAGE void __fastcall CNDrawItem(Messages::TWMDrawItem &Message);
  103.     HIDESBASE MESSAGE void __fastcall WMDestroy(Messages::TWMNoParams &Message);
  104.     MESSAGE void __fastcall WMNotifyFormat(Messages::TMessage &Message);
  105.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TMessage &Message);
  106.     
  107. protected:
  108.     virtual void __fastcall AdjustClientRect(Windows::TRect &Rect);
  109.     DYNAMIC bool __fastcall CanChange(void);
  110.     virtual bool __fastcall CanShowTab(int TabIndex);
  111.     DYNAMIC void __fastcall Change(void);
  112.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  113.     virtual void __fastcall CreateWnd(void);
  114.     virtual void __fastcall DestroyWnd(void);
  115.     virtual void __fastcall DrawTab(int TabIndex, const Windows::TRect &Rect, bool Active);
  116.     virtual int __fastcall GetImageIndex(int TabIndex);
  117.     virtual void __fastcall Loaded(void);
  118.     void __fastcall UpdateTabImages(void);
  119.     __property Windows::TRect DisplayRect = {read=GetDisplayRect};
  120.     __property bool HotTrack = {read=FHotTrack, write=SetHotTrack, default=0};
  121.     __property Imglist::TCustomImageList* Images = {read=FImages, write=SetImages};
  122.     __property bool MultiLine = {read=FMultiLine, write=SetMultiLine, default=0};
  123.     __property bool MultiSelect = {read=FMultiSelect, write=SetMultiSelect, default=0};
  124.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  125.         );
  126.     __property bool OwnerDraw = {read=FOwnerDraw, write=SetOwnerDraw, default=0};
  127.     __property bool RaggedRight = {read=FRaggedRight, write=SetRaggedRight, default=0};
  128.     __property bool ScrollOpposite = {read=FScrollOpposite, write=SetScrollOpposite, default=0};
  129.     __property TTabStyle Style = {read=FStyle, write=SetStyle, default=0};
  130.     __property short TabHeight = {read=FTabSize.y, write=SetTabHeight, default=0};
  131.     __property int TabIndex = {read=GetTabIndex, write=SetTabIndex, default=-1};
  132.     __property TTabPosition TabPosition = {read=FTabPosition, write=SetTabPosition, default=0};
  133.     __property Classes::TStrings* Tabs = {read=FTabs, write=SetTabs};
  134.     __property short TabWidth = {read=FTabSize.x, write=SetTabWidth, default=0};
  135.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  136.     __property TTabChangingEvent OnChanging = {read=FOnChanging, write=FOnChanging};
  137.     __property TDrawTabEvent OnDrawTab = {read=FOnDrawTab, write=FOnDrawTab};
  138.     __property TTabGetImageEvent OnGetImageIndex = {read=FOnGetImageIndex, write=FOnGetImageIndex};
  139.     
  140. public:
  141.     __fastcall virtual TCustomTabControl(Classes::TComponent* AOwner);
  142.     __fastcall virtual ~TCustomTabControl(void);
  143.     __property Graphics::TCanvas* Canvas = {read=FCanvas};
  144.     __property TabStop ;
  145. public:
  146.     #pragma option push -w-inl
  147.     /* TWinControl.CreateParented */ inline __fastcall TCustomTabControl(HWND ParentWindow) : Controls::TWinControl(
  148.         ParentWindow) { }
  149.     #pragma option pop
  150.     
  151. };
  152.  
  153. #pragma pack(pop)
  154.  
  155. class DELPHICLASS TTabControl;
  156. #pragma pack(push, 4)
  157. class PASCALIMPLEMENTATION TTabControl : public TCustomTabControl 
  158. {
  159.     typedef TCustomTabControl inherited;
  160.     
  161. public:
  162.     __property DisplayRect ;
  163.     
  164. __published:
  165.     __property Align ;
  166.     __property Anchors ;
  167.     __property BiDiMode ;
  168.     __property Constraints ;
  169.     __property DockSite ;
  170.     __property DragCursor ;
  171.     __property DragKind ;
  172.     __property DragMode ;
  173.     __property Enabled ;
  174.     __property Font ;
  175.     __property HotTrack ;
  176.     __property Images ;
  177.     __property MultiLine ;
  178.     __property MultiSelect ;
  179.     __property OwnerDraw ;
  180.     __property ParentBiDiMode ;
  181.     __property ParentFont ;
  182.     __property ParentShowHint ;
  183.     __property PopupMenu ;
  184.     __property RaggedRight ;
  185.     __property ScrollOpposite ;
  186.     __property ShowHint ;
  187.     __property Style ;
  188.     __property TabHeight ;
  189.     __property TabOrder ;
  190.     __property TabPosition ;
  191.     __property Tabs ;
  192.     __property TabIndex ;
  193.     __property TabStop ;
  194.     __property TabWidth ;
  195.     __property Visible ;
  196.     __property OnChange ;
  197.     __property OnChanging ;
  198.     __property OnDockDrop ;
  199.     __property OnDockOver ;
  200.     __property OnDragDrop ;
  201.     __property OnDragOver ;
  202.     __property OnDrawTab ;
  203.     __property OnEndDock ;
  204.     __property OnEndDrag ;
  205.     __property OnEnter ;
  206.     __property OnExit ;
  207.     __property OnGetImageIndex ;
  208.     __property OnGetSiteInfo ;
  209.     __property OnMouseDown ;
  210.     __property OnMouseMove ;
  211.     __property OnMouseUp ;
  212.     __property OnResize ;
  213.     __property OnStartDock ;
  214.     __property OnStartDrag ;
  215.     __property OnUnDock ;
  216. public:
  217.     #pragma option push -w-inl
  218.     /* TCustomTabControl.Create */ inline __fastcall virtual TTabControl(Classes::TComponent* AOwner) : 
  219.         TCustomTabControl(AOwner) { }
  220.     #pragma option pop
  221.     #pragma option push -w-inl
  222.     /* TCustomTabControl.Destroy */ inline __fastcall virtual ~TTabControl(void) { }
  223.     #pragma option pop
  224.     
  225. public:
  226.     #pragma option push -w-inl
  227.     /* TWinControl.CreateParented */ inline __fastcall TTabControl(HWND ParentWindow) : TCustomTabControl(
  228.         ParentWindow) { }
  229.     #pragma option pop
  230.     
  231. };
  232.  
  233. #pragma pack(pop)
  234.  
  235. class DELPHICLASS TTabSheet;
  236. class DELPHICLASS TPageControl;
  237. #pragma pack(push, 4)
  238. class PASCALIMPLEMENTATION TPageControl : public TCustomTabControl 
  239. {
  240.     typedef TCustomTabControl inherited;
  241.     
  242. private:
  243.     Classes::TList* FPages;
  244.     TTabSheet* FActivePage;
  245.     TTabSheet* FNewDockSheet;
  246.     TTabSheet* FUndockingPage;
  247.     void __fastcall ChangeActivePage(TTabSheet* Page);
  248.     void __fastcall DeleteTab(TTabSheet* Page, int Index);
  249.     Controls::TControl* __fastcall GetDockClientFromMousePos(const Windows::TPoint &MousePos);
  250.     TTabSheet* __fastcall GetPage(int Index);
  251.     int __fastcall GetPageCount(void);
  252.     void __fastcall InsertPage(TTabSheet* Page);
  253.     void __fastcall InsertTab(TTabSheet* Page);
  254.     void __fastcall MoveTab(int CurIndex, int NewIndex);
  255.     void __fastcall RemovePage(TTabSheet* Page);
  256.     void __fastcall SetActivePage(TTabSheet* Page);
  257.     void __fastcall UpdateTab(TTabSheet* Page);
  258.     void __fastcall UpdateActivePage(void);
  259.     HIDESBASE MESSAGE void __fastcall CMDesignHitTest(Messages::TWMMouse &Message);
  260.     HIDESBASE MESSAGE void __fastcall CMDialogKey(Messages::TWMKey &Message);
  261.     HIDESBASE MESSAGE void __fastcall CMDockClient(Controls::TCMDockClient &Message);
  262.     MESSAGE void __fastcall CMDockNotification(Controls::TCMDockNotification &Message);
  263.     HIDESBASE MESSAGE void __fastcall CMUnDockClient(Controls::TCMUnDockClient &Message);
  264.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  265.     HIDESBASE MESSAGE void __fastcall WMLButtonDblClk(Messages::TWMMouse &Message);
  266.     
  267. protected:
  268.     virtual bool __fastcall CanShowTab(int TabIndex);
  269.     DYNAMIC void __fastcall Change(void);
  270.     DYNAMIC void __fastcall DoAddDockClient(Controls::TControl* Client, const Windows::TRect &ARect);
  271.     DYNAMIC void __fastcall DockOver(Controls::TDragDockObject* Source, int X, int Y, Controls::TDragState 
  272.         State, bool &Accept);
  273.     DYNAMIC void __fastcall DoRemoveDockClient(Controls::TControl* Client);
  274.     DYNAMIC void __fastcall GetChildren(Classes::TGetChildProc Proc, Classes::TComponent* Root);
  275.     virtual int __fastcall GetImageIndex(int TabIndex);
  276.     TTabSheet* __fastcall GetPageFromDockClient(Controls::TControl* Client);
  277.     DYNAMIC void __fastcall GetSiteInfo(Controls::TControl* Client, Windows::TRect &InfluenceRect, const 
  278.         Windows::TPoint &MousePos, bool &CanDock);
  279.     DYNAMIC void __fastcall SetChildOrder(Classes::TComponent* Child, int Order);
  280.     virtual void __fastcall ShowControl(Controls::TControl* AControl);
  281.     
  282. public:
  283.     __fastcall virtual TPageControl(Classes::TComponent* AOwner);
  284.     __fastcall virtual ~TPageControl(void);
  285.     TTabSheet* __fastcall FindNextPage(TTabSheet* CurPage, bool GoForward, bool CheckTabVisible);
  286.     void __fastcall SelectNextPage(bool GoForward);
  287.     __property int PageCount = {read=GetPageCount, nodefault};
  288.     __property TTabSheet* Pages[int Index] = {read=GetPage};
  289.     
  290. __published:
  291.     __property TTabSheet* ActivePage = {read=FActivePage, write=SetActivePage};
  292.     __property Align ;
  293.     __property Anchors ;
  294.     __property BiDiMode ;
  295.     __property Constraints ;
  296.     __property DockSite ;
  297.     __property DragCursor ;
  298.     __property DragKind ;
  299.     __property DragMode ;
  300.     __property Enabled ;
  301.     __property Font ;
  302.     __property HotTrack ;
  303.     __property Images ;
  304.     __property MultiLine ;
  305.     __property OwnerDraw ;
  306.     __property ParentBiDiMode ;
  307.     __property ParentFont ;
  308.     __property ParentShowHint ;
  309.     __property PopupMenu ;
  310.     __property RaggedRight ;
  311.     __property ScrollOpposite ;
  312.     __property ShowHint ;
  313.     __property Style ;
  314.     __property TabHeight ;
  315.     __property TabOrder ;
  316.     __property TabPosition ;
  317.     __property TabStop ;
  318.     __property TabWidth ;
  319.     __property Visible ;
  320.     __property OnChange ;
  321.     __property OnChanging ;
  322.     __property OnDockDrop ;
  323.     __property OnDockOver ;
  324.     __property OnDragDrop ;
  325.     __property OnDragOver ;
  326.     __property OnDrawTab ;
  327.     __property OnEndDock ;
  328.     __property OnEndDrag ;
  329.     __property OnEnter ;
  330.     __property OnExit ;
  331.     __property OnGetImageIndex ;
  332.     __property OnGetSiteInfo ;
  333.     __property OnMouseDown ;
  334.     __property OnMouseMove ;
  335.     __property OnMouseUp ;
  336.     __property OnResize ;
  337.     __property OnStartDock ;
  338.     __property OnStartDrag ;
  339.     __property OnUnDock ;
  340. public:
  341.     #pragma option push -w-inl
  342.     /* TWinControl.CreateParented */ inline __fastcall TPageControl(HWND ParentWindow) : TCustomTabControl(
  343.         ParentWindow) { }
  344.     #pragma option pop
  345.     
  346. };
  347.  
  348. #pragma pack(pop)
  349.  
  350. #pragma pack(push, 4)
  351. class PASCALIMPLEMENTATION TTabSheet : public Controls::TWinControl 
  352. {
  353.     typedef Controls::TWinControl inherited;
  354.     
  355. private:
  356.     int FImageIndex;
  357.     TPageControl* FPageControl;
  358.     bool FTabVisible;
  359.     bool FTabShowing;
  360.     Classes::TNotifyEvent FOnHide;
  361.     Classes::TNotifyEvent FOnShow;
  362.     int __fastcall GetPageIndex(void);
  363.     int __fastcall GetTabIndex(void);
  364.     void __fastcall SetImageIndex(int Value);
  365.     void __fastcall SetPageControl(TPageControl* APageControl);
  366.     void __fastcall SetPageIndex(int Value);
  367.     void __fastcall SetTabShowing(bool Value);
  368.     void __fastcall SetTabVisible(bool Value);
  369.     void __fastcall UpdateTabShowing(void);
  370.     MESSAGE void __fastcall CMTextChanged(Messages::TMessage &Message);
  371.     HIDESBASE MESSAGE void __fastcall CMShowingChanged(Messages::TMessage &Message);
  372.     
  373. protected:
  374.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  375.     DYNAMIC void __fastcall DoHide(void);
  376.     DYNAMIC void __fastcall DoShow(void);
  377.     virtual void __fastcall ReadState(Classes::TReader* Reader);
  378.     
  379. public:
  380.     __fastcall virtual TTabSheet(Classes::TComponent* AOwner);
  381.     __fastcall virtual ~TTabSheet(void);
  382.     __property TPageControl* PageControl = {read=FPageControl, write=SetPageControl};
  383.     __property int TabIndex = {read=GetTabIndex, nodefault};
  384.     
  385. __published:
  386.     __property BorderWidth ;
  387.     __property Caption ;
  388.     __property DragMode ;
  389.     __property Enabled ;
  390.     __property Font ;
  391.     __property Height  = {stored=false};
  392.     __property int ImageIndex = {read=FImageIndex, write=SetImageIndex, default=0};
  393.     __property Left  = {stored=false};
  394.     __property Constraints ;
  395.     __property int PageIndex = {read=GetPageIndex, write=SetPageIndex, stored=false, nodefault};
  396.     __property ParentFont ;
  397.     __property ParentShowHint ;
  398.     __property PopupMenu ;
  399.     __property ShowHint ;
  400.     __property bool TabVisible = {read=FTabVisible, write=SetTabVisible, default=1};
  401.     __property Top  = {stored=false};
  402.     __property Visible  = {stored=false, default=1};
  403.     __property Width  = {stored=false};
  404.     __property OnDragDrop ;
  405.     __property OnDragOver ;
  406.     __property OnEndDrag ;
  407.     __property OnEnter ;
  408.     __property OnExit ;
  409.     __property Classes::TNotifyEvent OnHide = {read=FOnHide, write=FOnHide};
  410.     __property OnMouseDown ;
  411.     __property OnMouseMove ;
  412.     __property OnMouseUp ;
  413.     __property OnResize ;
  414.     __property Classes::TNotifyEvent OnShow = {read=FOnShow, write=FOnShow};
  415.     __property OnStartDrag ;
  416. public:
  417.     #pragma option push -w-inl
  418.     /* TWinControl.CreateParented */ inline __fastcall TTabSheet(HWND ParentWindow) : Controls::TWinControl(
  419.         ParentWindow) { }
  420.     #pragma option pop
  421.     
  422. };
  423.  
  424. #pragma pack(pop)
  425.  
  426. #pragma option push -b-
  427. enum TStatusPanelStyle { psText, psOwnerDraw };
  428. #pragma option pop
  429.  
  430. #pragma option push -b-
  431. enum TStatusPanelBevel { pbNone, pbLowered, pbRaised };
  432. #pragma option pop
  433.  
  434. class DELPHICLASS TStatusPanel;
  435. #pragma pack(push, 4)
  436. class PASCALIMPLEMENTATION TStatusPanel : public Classes::TCollectionItem 
  437. {
  438.     typedef Classes::TCollectionItem inherited;
  439.     
  440. private:
  441.     AnsiString FText;
  442.     int FWidth;
  443.     Classes::TAlignment FAlignment;
  444.     TStatusPanelBevel FBevel;
  445.     Classes::TBiDiMode FBiDiMode;
  446.     bool FParentBiDiMode;
  447.     TStatusPanelStyle FStyle;
  448.     bool FUpdateNeeded;
  449.     void __fastcall SetAlignment(Classes::TAlignment Value);
  450.     void __fastcall SetBevel(TStatusPanelBevel Value);
  451.     void __fastcall SetBiDiMode(Classes::TBiDiMode Value);
  452.     void __fastcall SetParentBiDiMode(bool Value);
  453.     void __fastcall SetStyle(TStatusPanelStyle Value);
  454.     void __fastcall SetText(const AnsiString Value);
  455.     void __fastcall SetWidth(int Value);
  456.     bool __fastcall IsBiDiModeStored(void);
  457.     
  458. protected:
  459.     virtual AnsiString __fastcall GetDisplayName();
  460.     
  461. public:
  462.     __fastcall virtual TStatusPanel(Classes::TCollection* Collection);
  463.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  464.     void __fastcall ParentBiDiModeChanged(void);
  465.     bool __fastcall UseRightToLeftAlignment(void);
  466.     bool __fastcall UseRightToLeftReading(void);
  467.     
  468. __published:
  469.     __property Classes::TAlignment Alignment = {read=FAlignment, write=SetAlignment, default=0};
  470.     __property TStatusPanelBevel Bevel = {read=FBevel, write=SetBevel, default=1};
  471.     __property Classes::TBiDiMode BiDiMode = {read=FBiDiMode, write=SetBiDiMode, stored=IsBiDiModeStored
  472.         , nodefault};
  473.     __property bool ParentBiDiMode = {read=FParentBiDiMode, write=SetParentBiDiMode, default=1};
  474.     __property TStatusPanelStyle Style = {read=FStyle, write=SetStyle, default=0};
  475.     __property AnsiString Text = {read=FText, write=SetText};
  476.     __property int Width = {read=FWidth, write=SetWidth, nodefault};
  477. public:
  478.     #pragma option push -w-inl
  479.     /* TCollectionItem.Destroy */ inline __fastcall virtual ~TStatusPanel(void) { }
  480.     #pragma option pop
  481.     
  482. };
  483.  
  484. #pragma pack(pop)
  485.  
  486. class DELPHICLASS TStatusPanels;
  487. class DELPHICLASS TStatusBar;
  488. typedef void __fastcall (__closure *TDrawPanelEvent)(TStatusBar* StatusBar, TStatusPanel* Panel, const 
  489.     Windows::TRect &Rect);
  490.  
  491. #pragma pack(push, 4)
  492. class PASCALIMPLEMENTATION TStatusBar : public Controls::TWinControl 
  493. {
  494.     typedef Controls::TWinControl inherited;
  495.     
  496. private:
  497.     TStatusPanels* FPanels;
  498.     Graphics::TCanvas* FCanvas;
  499.     AnsiString FSimpleText;
  500.     bool FSimplePanel;
  501.     bool FSizeGrip;
  502.     bool FUseSystemFont;
  503.     bool FAutoHint;
  504.     TDrawPanelEvent FOnDrawPanel;
  505.     Classes::TNotifyEvent FOnHint;
  506.     void __fastcall DoRightToLeftAlignment(AnsiString &Str, Classes::TAlignment AAlignment, bool ARTLAlignment
  507.         );
  508.     HIDESBASE bool __fastcall IsFontStored(void);
  509.     void __fastcall SetPanels(TStatusPanels* Value);
  510.     void __fastcall SetSimplePanel(bool Value);
  511.     void __fastcall UpdateSimpleText(void);
  512.     void __fastcall SetSimpleText(const AnsiString Value);
  513.     void __fastcall SetSizeGrip(bool Value);
  514.     void __fastcall SyncToSystemFont(void);
  515.     void __fastcall UpdatePanel(int Index, bool Repaint);
  516.     void __fastcall UpdatePanels(bool UpdateRects, bool UpdateText);
  517.     HIDESBASE MESSAGE void __fastcall CMBiDiModeChanged(Messages::TMessage &Message);
  518.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  519.     HIDESBASE MESSAGE void __fastcall CMParentFontChanged(Messages::TMessage &Message);
  520.     HIDESBASE MESSAGE void __fastcall CMWinIniChange(Messages::TMessage &Message);
  521.     MESSAGE void __fastcall CNDrawItem(Messages::TWMDrawItem &Message);
  522.     MESSAGE void __fastcall WMGetTextLength(Messages::TWMNoParams &Message);
  523.     HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  524.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  525.     void __fastcall SetUseSystemFont(const bool Value);
  526.     
  527. protected:
  528.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  529.     virtual void __fastcall CreateWnd(void);
  530.     virtual bool __fastcall DoHint(void);
  531.     DYNAMIC void __fastcall DrawPanel(TStatusPanel* Panel, const Windows::TRect &Rect);
  532.     
  533. public:
  534.     __fastcall virtual TStatusBar(Classes::TComponent* AOwner);
  535.     __fastcall virtual ~TStatusBar(void);
  536.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  537.     DYNAMIC void __fastcall FlipChildren(bool AllLevels);
  538.     __property Graphics::TCanvas* Canvas = {read=FCanvas};
  539.     
  540. __published:
  541.     __property Action ;
  542.     __property bool AutoHint = {read=FAutoHint, write=FAutoHint, default=0};
  543.     __property Align ;
  544.     __property Anchors ;
  545.     __property BiDiMode ;
  546.     __property BorderWidth ;
  547.     __property Color ;
  548.     __property DragCursor ;
  549.     __property DragKind ;
  550.     __property DragMode ;
  551.     __property Enabled ;
  552.     __property Font  = {stored=IsFontStored};
  553.     __property Constraints ;
  554.     __property TStatusPanels* Panels = {read=FPanels, write=SetPanels};
  555.     __property ParentBiDiMode ;
  556.     __property ParentColor ;
  557.     __property ParentFont ;
  558.     __property ParentShowHint ;
  559.     __property PopupMenu ;
  560.     __property ShowHint ;
  561.     __property bool SimplePanel = {read=FSimplePanel, write=SetSimplePanel, nodefault};
  562.     __property AnsiString SimpleText = {read=FSimpleText, write=SetSimpleText};
  563.     __property bool SizeGrip = {read=FSizeGrip, write=SetSizeGrip, default=1};
  564.     __property bool UseSystemFont = {read=FUseSystemFont, write=SetUseSystemFont, default=1};
  565.     __property Visible ;
  566.     __property OnClick ;
  567.     __property OnDblClick ;
  568.     __property OnDragDrop ;
  569.     __property OnDragOver ;
  570.     __property OnEndDock ;
  571.     __property OnEndDrag ;
  572.     __property Classes::TNotifyEvent OnHint = {read=FOnHint, write=FOnHint};
  573.     __property OnMouseDown ;
  574.     __property OnMouseMove ;
  575.     __property OnMouseUp ;
  576.     __property TDrawPanelEvent OnDrawPanel = {read=FOnDrawPanel, write=FOnDrawPanel};
  577.     __property OnResize ;
  578.     __property OnStartDock ;
  579.     __property OnStartDrag ;
  580. public:
  581.     #pragma option push -w-inl
  582.     /* TWinControl.CreateParented */ inline __fastcall TStatusBar(HWND ParentWindow) : Controls::TWinControl(
  583.         ParentWindow) { }
  584.     #pragma option pop
  585.     
  586. };
  587.  
  588. #pragma pack(pop)
  589.  
  590. #pragma pack(push, 4)
  591. class PASCALIMPLEMENTATION TStatusPanels : public Classes::TCollection 
  592. {
  593.     typedef Classes::TCollection inherited;
  594.     
  595. private:
  596.     TStatusBar* FStatusBar;
  597.     HIDESBASE TStatusPanel* __fastcall GetItem(int Index);
  598.     HIDESBASE void __fastcall SetItem(int Index, TStatusPanel* Value);
  599.     
  600. protected:
  601.     DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
  602.     virtual void __fastcall Update(Classes::TCollectionItem* Item);
  603.     
  604. public:
  605.     __fastcall TStatusPanels(TStatusBar* StatusBar);
  606.     HIDESBASE TStatusPanel* __fastcall Add(void);
  607.     __property TStatusPanel* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
  608. public:
  609.     #pragma option push -w-inl
  610.     /* TCollection.Destroy */ inline __fastcall virtual ~TStatusPanels(void) { }
  611.     #pragma option pop
  612.     
  613. };
  614.  
  615. #pragma pack(pop)
  616.  
  617. #pragma option push -b-
  618. enum TCustomDrawTarget { dtControl, dtItem, dtSubItem };
  619. #pragma option pop
  620.  
  621. #pragma option push -b-
  622. enum TCustomDrawStage { cdPrePaint, cdPostPaint, cdPreErase, cdPostErase };
  623. #pragma option pop
  624.  
  625. #pragma option push -b-
  626. enum ComCtrls__8 { cdsSelected, cdsGrayed, cdsDisabled, cdsChecked, cdsFocused, cdsDefault, cdsHot, 
  627.     cdsMarked, cdsIndeterminate };
  628. #pragma option pop
  629.  
  630. typedef Set<ComCtrls__8, cdsSelected, cdsIndeterminate>  TCustomDrawState;
  631.  
  632. #pragma option push -b-
  633. enum THeaderSectionStyle { hsText, hsOwnerDraw };
  634. #pragma option pop
  635.  
  636. class DELPHICLASS THeaderSection;
  637. #pragma pack(push, 4)
  638. class PASCALIMPLEMENTATION THeaderSection : public Classes::TCollectionItem 
  639. {
  640.     typedef Classes::TCollectionItem inherited;
  641.     
  642. private:
  643.     AnsiString FText;
  644.     int FWidth;
  645.     int FMinWidth;
  646.     int FMaxWidth;
  647.     Classes::TAlignment FAlignment;
  648.     THeaderSectionStyle FStyle;
  649.     bool FAllowClick;
  650.     bool FAutoSize;
  651.     Classes::TBiDiMode FBiDiMode;
  652.     bool FParentBiDiMode;
  653.     int __fastcall GetLeft(void);
  654.     int __fastcall GetRight(void);
  655.     bool __fastcall IsBiDiModeStored(void);
  656.     void __fastcall SetAlignment(Classes::TAlignment Value);
  657.     void __fastcall SetAutoSize(bool Value);
  658.     void __fastcall SetBiDiMode(Classes::TBiDiMode Value);
  659.     void __fastcall SetMaxWidth(int Value);
  660.     void __fastcall SetMinWidth(int Value);
  661.     void __fastcall SetParentBiDiMode(bool Value);
  662.     void __fastcall SetStyle(THeaderSectionStyle Value);
  663.     void __fastcall SetText(const AnsiString Value);
  664.     void __fastcall SetWidth(int Value);
  665.     
  666. protected:
  667.     virtual AnsiString __fastcall GetDisplayName();
  668.     
  669. public:
  670.     __fastcall virtual THeaderSection(Classes::TCollection* Collection);
  671.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  672.     void __fastcall ParentBiDiModeChanged(void);
  673.     bool __fastcall UseRightToLeftAlignment(void);
  674.     bool __fastcall UseRightToLeftReading(void);
  675.     __property int Left = {read=GetLeft, nodefault};
  676.     __property int Right = {read=GetRight, nodefault};
  677.     
  678. __published:
  679.     __property Classes::TAlignment Alignment = {read=FAlignment, write=SetAlignment, default=0};
  680.     __property bool AllowClick = {read=FAllowClick, write=FAllowClick, default=1};
  681.     __property bool AutoSize = {read=FAutoSize, write=SetAutoSize, default=0};
  682.     __property Classes::TBiDiMode BiDiMode = {read=FBiDiMode, write=SetBiDiMode, stored=IsBiDiModeStored
  683.         , nodefault};
  684.     __property int MaxWidth = {read=FMaxWidth, write=SetMaxWidth, default=10000};
  685.     __property int MinWidth = {read=FMinWidth, write=SetMinWidth, default=0};
  686.     __property bool ParentBiDiMode = {read=FParentBiDiMode, write=SetParentBiDiMode, default=1};
  687.     __property THeaderSectionStyle Style = {read=FStyle, write=SetStyle, default=0};
  688.     __property AnsiString Text = {read=FText, write=SetText};
  689.     __property int Width = {read=FWidth, write=SetWidth, nodefault};
  690. public:
  691.     #pragma option push -w-inl
  692.     /* TCollectionItem.Destroy */ inline __fastcall virtual ~THeaderSection(void) { }
  693.     #pragma option pop
  694.     
  695. };
  696.  
  697. #pragma pack(pop)
  698.  
  699. class DELPHICLASS THeaderSections;
  700. class DELPHICLASS THeaderControl;
  701. #pragma option push -b-
  702. enum THeaderStyle { hsButtons, hsFlat };
  703. #pragma option pop
  704.  
  705. typedef void __fastcall (__closure *TDrawSectionEvent)(THeaderControl* HeaderControl, THeaderSection* 
  706.     Section, const Windows::TRect &Rect, bool Pressed);
  707.  
  708. typedef void __fastcall (__closure *TSectionNotifyEvent)(THeaderControl* HeaderControl, THeaderSection* 
  709.     Section);
  710.  
  711. #pragma option push -b-
  712. enum TSectionTrackState { tsTrackBegin, tsTrackMove, tsTrackEnd };
  713. #pragma option pop
  714.  
  715. typedef void __fastcall (__closure *TSectionTrackEvent)(THeaderControl* HeaderControl, THeaderSection* 
  716.     Section, int Width, TSectionTrackState State);
  717.  
  718. #pragma pack(push, 4)
  719. class PASCALIMPLEMENTATION THeaderControl : public Controls::TWinControl 
  720. {
  721.     typedef Controls::TWinControl inherited;
  722.     
  723. private:
  724.     THeaderSections* FSections;
  725.     Graphics::TCanvas* FCanvas;
  726.     bool FFullDrag;
  727.     bool FHotTrack;
  728.     THeaderStyle FStyle;
  729.     THeaderSection* FTrackSection;
  730.     int FTrackWidth;
  731.     Windows::TPoint FTrackPos;
  732.     TDrawSectionEvent FOnDrawSection;
  733.     TSectionNotifyEvent FOnSectionClick;
  734.     TSectionNotifyEvent FOnSectionResize;
  735.     TSectionTrackEvent FOnSectionTrack;
  736.     void __fastcall SetFullDrag(bool Value);
  737.     void __fastcall SetHotTrack(bool Value);
  738.     void __fastcall SetSections(THeaderSections* Value);
  739.     void __fastcall SetStyle(THeaderStyle Value);
  740.     void __fastcall UpdateItem(int Message, int Index);
  741.     void __fastcall UpdateSection(int Index);
  742.     void __fastcall UpdateSections(void);
  743.     HIDESBASE MESSAGE void __fastcall CMBiDiModeChanged(Messages::TMessage &Message);
  744.     MESSAGE void __fastcall CNDrawItem(Messages::TWMDrawItem &Message);
  745.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  746.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  747.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  748.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
  749.     
  750. protected:
  751.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  752.     virtual void __fastcall CreateWnd(void);
  753.     DYNAMIC void __fastcall DrawSection(THeaderSection* Section, const Windows::TRect &Rect, bool Pressed
  754.         );
  755.     DYNAMIC void __fastcall SectionClick(THeaderSection* Section);
  756.     DYNAMIC void __fastcall SectionResize(THeaderSection* Section);
  757.     DYNAMIC void __fastcall SectionTrack(THeaderSection* Section, int Width, TSectionTrackState State);
  758.         
  759.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  760.     
  761. public:
  762.     __fastcall virtual THeaderControl(Classes::TComponent* AOwner);
  763.     __fastcall virtual ~THeaderControl(void);
  764.     __property Graphics::TCanvas* Canvas = {read=FCanvas};
  765.     DYNAMIC void __fastcall FlipChildren(bool AllLevels);
  766.     
  767. __published:
  768.     __property Align ;
  769.     __property Anchors ;
  770.     __property BiDiMode ;
  771.     __property BorderWidth ;
  772.     __property DragCursor ;
  773.     __property DragKind ;
  774.     __property DragMode ;
  775.     __property Enabled ;
  776.     __property Font ;
  777.     __property bool FullDrag = {read=FFullDrag, write=SetFullDrag, default=1};
  778.     __property bool HotTrack = {read=FHotTrack, write=SetHotTrack, default=0};
  779.     __property Constraints ;
  780.     __property THeaderSections* Sections = {read=FSections, write=SetSections};
  781.     __property ShowHint ;
  782.     __property THeaderStyle Style = {read=FStyle, write=SetStyle, default=0};
  783.     __property ParentBiDiMode ;
  784.     __property ParentFont ;
  785.     __property ParentShowHint ;
  786.     __property PopupMenu ;
  787.     __property Visible ;
  788.     __property OnDragDrop ;
  789.     __property OnDragOver ;
  790.     __property OnEndDock ;
  791.     __property OnEndDrag ;
  792.     __property OnMouseDown ;
  793.     __property OnMouseMove ;
  794.     __property OnMouseUp ;
  795.     __property TDrawSectionEvent OnDrawSection = {read=FOnDrawSection, write=FOnDrawSection};
  796.     __property OnResize ;
  797.     __property TSectionNotifyEvent OnSectionClick = {read=FOnSectionClick, write=FOnSectionClick};
  798.     __property TSectionNotifyEvent OnSectionResize = {read=FOnSectionResize, write=FOnSectionResize};
  799.     __property TSectionTrackEvent OnSectionTrack = {read=FOnSectionTrack, write=FOnSectionTrack};
  800.     __property OnStartDock ;
  801.     __property OnStartDrag ;
  802. public:
  803.     #pragma option push -w-inl
  804.     /* TWinControl.CreateParented */ inline __fastcall THeaderControl(HWND ParentWindow) : Controls::TWinControl(
  805.         ParentWindow) { }
  806.     #pragma option pop
  807.     
  808. };
  809.  
  810. #pragma pack(pop)
  811.  
  812. #pragma pack(push, 4)
  813. class PASCALIMPLEMENTATION THeaderSections : public Classes::TCollection 
  814. {
  815.     typedef Classes::TCollection inherited;
  816.     
  817. private:
  818.     THeaderControl* FHeaderControl;
  819.     HIDESBASE THeaderSection* __fastcall GetItem(int Index);
  820.     HIDESBASE void __fastcall SetItem(int Index, THeaderSection* Value);
  821.     
  822. protected:
  823.     DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
  824.     virtual void __fastcall Update(Classes::TCollectionItem* Item);
  825.     
  826. public:
  827.     __fastcall THeaderSections(THeaderControl* HeaderControl);
  828.     HIDESBASE THeaderSection* __fastcall Add(void);
  829.     __property THeaderSection* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
  830. public:
  831.     #pragma option push -w-inl
  832.     /* TCollection.Destroy */ inline __fastcall virtual ~THeaderSections(void) { }
  833.     #pragma option pop
  834.     
  835. };
  836.  
  837. #pragma pack(pop)
  838.  
  839. #pragma option push -b-
  840. enum TNodeState { nsCut, nsDropHilited, nsFocused, nsSelected, nsExpanded };
  841. #pragma option pop
  842.  
  843. #pragma option push -b-
  844. enum TNodeAttachMode { naAdd, naAddFirst, naAddChild, naAddChildFirst, naInsert };
  845. #pragma option pop
  846.  
  847. #pragma option push -b-
  848. enum TAddMode { taAddFirst, taAdd, taInsert };
  849. #pragma option pop
  850.  
  851. struct TNodeInfo;
  852. typedef TNodeInfo *PNodeInfo;
  853.  
  854. #pragma pack(push, 1)
  855. struct TNodeInfo
  856. {
  857.     int ImageIndex;
  858.     int SelectedIndex;
  859.     int StateIndex;
  860.     int OverlayIndex;
  861.     void *Data;
  862.     int Count;
  863.     System::SmallString<255>  Text;
  864. } ;
  865. #pragma pack(pop)
  866.  
  867. class DELPHICLASS TTreeNode;
  868. class DELPHICLASS TTreeNodes;
  869. class DELPHICLASS TCustomTreeView;
  870. #pragma option push -b-
  871. enum TSortType { stNone, stData, stText, stBoth };
  872. #pragma option pop
  873.  
  874. typedef void __fastcall (__closure *TTVEditingEvent)(System::TObject* Sender, TTreeNode* Node, bool 
  875.     &AllowEdit);
  876.  
  877. typedef void __fastcall (__closure *TTVEditedEvent)(System::TObject* Sender, TTreeNode* Node, AnsiString 
  878.     &S);
  879.  
  880. typedef void __fastcall (__closure *TTVExpandedEvent)(System::TObject* Sender, TTreeNode* Node);
  881.  
  882. typedef void __fastcall (__closure *TTVExpandingEvent)(System::TObject* Sender, TTreeNode* Node, bool 
  883.     &AllowExpansion);
  884.  
  885. typedef void __fastcall (__closure *TTVCollapsingEvent)(System::TObject* Sender, TTreeNode* Node, bool 
  886.     &AllowCollapse);
  887.  
  888. typedef void __fastcall (__closure *TTVChangingEvent)(System::TObject* Sender, TTreeNode* Node, bool 
  889.     &AllowChange);
  890.  
  891. typedef void __fastcall (__closure *TTVChangedEvent)(System::TObject* Sender, TTreeNode* Node);
  892.  
  893. typedef void __fastcall (__closure *TTVCompareEvent)(System::TObject* Sender, TTreeNode* Node1, TTreeNode* 
  894.     Node2, int Data, int &Compare);
  895.  
  896. typedef void __fastcall (__closure *TTVCustomDrawEvent)(TCustomTreeView* Sender, const Windows::TRect 
  897.     &ARect, bool &DefaultDraw);
  898.  
  899. typedef void __fastcall (__closure *TTVCustomDrawItemEvent)(TCustomTreeView* Sender, TTreeNode* Node
  900.     , TCustomDrawState State, bool &DefaultDraw);
  901.  
  902. #pragma option push -b-
  903. enum THitTest { htAbove, htBelow, htNowhere, htOnItem, htOnButton, htOnIcon, htOnIndent, htOnLabel, 
  904.     htOnRight, htOnStateIcon, htToLeft, htToRight };
  905. #pragma option pop
  906.  
  907. typedef Set<THitTest, htAbove, htToRight>  THitTests;
  908.  
  909. #pragma pack(push, 4)
  910. class PASCALIMPLEMENTATION TCustomTreeView : public Controls::TWinControl 
  911. {
  912.     typedef Controls::TWinControl inherited;
  913.     
  914. private:
  915.     bool FAutoExpand;
  916.     Forms::TFormBorderStyle FBorderStyle;
  917.     Graphics::TCanvas* FCanvas;
  918.     bool FCanvasChanged;
  919.     void *FDefEditProc;
  920.     bool FDragged;
  921.     Controls::TDragImageList* FDragImage;
  922.     TTreeNode* FDragNode;
  923.     HWND FEditHandle;
  924.     void *FEditInstance;
  925.     bool FHideSelection;
  926.     bool FHotTrack;
  927.     Imglist::TChangeLink* FImageChangeLink;
  928.     Imglist::TCustomImageList* FImages;
  929.     TTreeNode* FLastDropTarget;
  930.     bool FManualNotify;
  931.     Classes::TMemoryStream* FMemStream;
  932.     TTreeNode* FRClickNode;
  933.     bool FRightClickSelect;
  934.     bool FReadOnly;
  935.     bool FRowSelect;
  936.     int FSaveIndex;
  937.     int FSaveIndent;
  938.     Classes::TStringList* FSaveItems;
  939.     int FSaveTopIndex;
  940.     bool FShowButtons;
  941.     bool FShowLines;
  942.     bool FShowRoot;
  943.     TSortType FSortType;
  944.     bool FStateChanging;
  945.     Imglist::TCustomImageList* FStateImages;
  946.     Imglist::TChangeLink* FStateChangeLink;
  947.     bool FToolTips;
  948.     TTreeNodes* FTreeNodes;
  949.     WideString FWideText;
  950.     TTVEditingEvent FOnEditing;
  951.     TTVEditedEvent FOnEdited;
  952.     TTVExpandedEvent FOnExpanded;
  953.     TTVExpandingEvent FOnExpanding;
  954.     TTVExpandedEvent FOnCollapsed;
  955.     TTVCollapsingEvent FOnCollapsing;
  956.     TTVChangingEvent FOnChanging;
  957.     TTVChangedEvent FOnChange;
  958.     TTVCompareEvent FOnCompare;
  959.     TTVExpandedEvent FOnDeletion;
  960.     TTVCustomDrawEvent FOnCustomDraw;
  961.     TTVCustomDrawItemEvent FOnCustomDrawItem;
  962.     TTVExpandedEvent FOnGetImageIndex;
  963.     TTVExpandedEvent FOnGetSelectedIndex;
  964.     void __fastcall CanvasChanged(System::TObject* Sender);
  965.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  966.     HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
  967.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  968.     HIDESBASE MESSAGE void __fastcall CMDrag(Controls::TCMDrag &Message);
  969.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  970.     void __fastcall EditWndProc(Messages::TMessage &Message);
  971.     void __fastcall DoDragOver(Controls::TDragObject* Source, int X, int Y, bool CanDrop);
  972.     int __fastcall GetChangeDelay(void);
  973.     TTreeNode* __fastcall GetDropTarget(void);
  974.     int __fastcall GetIndent(void);
  975.     TTreeNode* __fastcall GetNodeFromItem(const tagTVITEMA &Item);
  976.     TTreeNode* __fastcall GetSelection(void);
  977.     TTreeNode* __fastcall GetTopItem(void);
  978.     void __fastcall ImageListChange(System::TObject* Sender);
  979.     void __fastcall SetAutoExpand(bool Value);
  980.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  981.     void __fastcall SetButtonStyle(bool Value);
  982.     void __fastcall SetChangeDelay(int Value);
  983.     void __fastcall SetDropTarget(TTreeNode* Value);
  984.     void __fastcall SetHideSelection(bool Value);
  985.     void __fastcall SetHotTrack(bool Value);
  986.     void __fastcall SetImageList(unsigned Value, int Flags);
  987.     void __fastcall SetIndent(int Value);
  988.     void __fastcall SetImages(Imglist::TCustomImageList* Value);
  989.     void __fastcall SetLineStyle(bool Value);
  990.     void __fastcall SetReadOnly(bool Value);
  991.     void __fastcall SetRootStyle(bool Value);
  992.     void __fastcall SetRowSelect(bool Value);
  993.     void __fastcall SetSelection(TTreeNode* Value);
  994.     void __fastcall SetSortType(TSortType Value);
  995.     void __fastcall SetStateImages(Imglist::TCustomImageList* Value);
  996.     void __fastcall SetToolTips(bool Value);
  997.     void __fastcall SetTreeNodes(TTreeNodes* Value);
  998.     void __fastcall SetTopItem(TTreeNode* Value);
  999.     void __fastcall OnChangeTimer(System::TObject* Sender);
  1000.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  1001.     HIDESBASE MESSAGE void __fastcall WMRButtonDown(Messages::TWMMouse &Message);
  1002.     HIDESBASE MESSAGE void __fastcall WMRButtonUp(Messages::TWMMouse &Message);
  1003.     HIDESBASE MESSAGE void __fastcall WMNotify(Messages::TWMNotify &Message);
  1004.     HIDESBASE MESSAGE void __fastcall CMSysColorChange(Messages::TMessage &Message);
  1005.     
  1006. protected:
  1007.     Extctrls::TTimer* FChangeTimer;
  1008.     DYNAMIC bool __fastcall CanEdit(TTreeNode* Node);
  1009.     DYNAMIC bool __fastcall CanChange(TTreeNode* Node);
  1010.     DYNAMIC bool __fastcall CanCollapse(TTreeNode* Node);
  1011.     DYNAMIC bool __fastcall CanExpand(TTreeNode* Node);
  1012.     DYNAMIC void __fastcall Change(TTreeNode* Node);
  1013.     DYNAMIC void __fastcall Collapse(TTreeNode* Node);
  1014.     virtual TTreeNode* __fastcall CreateNode(void);
  1015.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1016.     virtual void __fastcall CreateWnd(void);
  1017.     virtual bool __fastcall CustomDraw(const Windows::TRect &ARect, TCustomDrawStage Stage);
  1018.     virtual bool __fastcall CustomDrawItem(TTreeNode* Node, TCustomDrawState State, TCustomDrawStage Stage
  1019.         );
  1020.     DYNAMIC void __fastcall Delete(TTreeNode* Node);
  1021.     virtual void __fastcall DestroyWnd(void);
  1022.     DYNAMIC void __fastcall DoEndDrag(System::TObject* Target, int X, int Y);
  1023.     DYNAMIC void __fastcall DoStartDrag(Controls::TDragObject* &DragObject);
  1024.     DYNAMIC void __fastcall Edit(const tagTVITEMA &Item);
  1025.     DYNAMIC void __fastcall Expand(TTreeNode* Node);
  1026.     virtual Controls::TDragImageList* __fastcall GetDragImages(void);
  1027.     virtual void __fastcall GetImageIndex(TTreeNode* Node);
  1028.     virtual void __fastcall GetSelectedIndex(TTreeNode* Node);
  1029.     bool __fastcall IsCustomDrawn(TCustomDrawTarget Target, TCustomDrawStage Stage);
  1030.     virtual void __fastcall Loaded(void);
  1031.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1032.         );
  1033.     virtual void __fastcall SetDragMode(Controls::TDragMode Value);
  1034.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  1035.     __property bool AutoExpand = {read=FAutoExpand, write=SetAutoExpand, default=0};
  1036.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=1};
  1037.     __property int ChangeDelay = {read=GetChangeDelay, write=SetChangeDelay, default=0};
  1038.     __property bool HideSelection = {read=FHideSelection, write=SetHideSelection, default=1};
  1039.     __property bool HotTrack = {read=FHotTrack, write=SetHotTrack, default=0};
  1040.     __property Imglist::TCustomImageList* Images = {read=FImages, write=SetImages};
  1041.     __property int Indent = {read=GetIndent, write=SetIndent, nodefault};
  1042.     __property TTreeNodes* Items = {read=FTreeNodes, write=SetTreeNodes};
  1043.     __property bool ReadOnly = {read=FReadOnly, write=SetReadOnly, default=0};
  1044.     __property bool RightClickSelect = {read=FRightClickSelect, write=FRightClickSelect, default=0};
  1045.     __property bool RowSelect = {read=FRowSelect, write=SetRowSelect, default=0};
  1046.     __property bool ShowButtons = {read=FShowButtons, write=SetButtonStyle, default=1};
  1047.     __property bool ShowLines = {read=FShowLines, write=SetLineStyle, default=1};
  1048.     __property bool ShowRoot = {read=FShowRoot, write=SetRootStyle, default=1};
  1049.     __property TSortType SortType = {read=FSortType, write=SetSortType, default=0};
  1050.     __property Imglist::TCustomImageList* StateImages = {read=FStateImages, write=SetStateImages};
  1051.     __property bool ToolTips = {read=FToolTips, write=SetToolTips, default=1};
  1052.     __property TTVCustomDrawEvent OnCustomDraw = {read=FOnCustomDraw, write=FOnCustomDraw};
  1053.     __property TTVCustomDrawItemEvent OnCustomDrawItem = {read=FOnCustomDrawItem, write=FOnCustomDrawItem
  1054.         };
  1055.     __property TTVEditingEvent OnEditing = {read=FOnEditing, write=FOnEditing};
  1056.     __property TTVEditedEvent OnEdited = {read=FOnEdited, write=FOnEdited};
  1057.     __property TTVExpandingEvent OnExpanding = {read=FOnExpanding, write=FOnExpanding};
  1058.     __property TTVExpandedEvent OnExpanded = {read=FOnExpanded, write=FOnExpanded};
  1059.     __property TTVCollapsingEvent OnCollapsing = {read=FOnCollapsing, write=FOnCollapsing};
  1060.     __property TTVExpandedEvent OnCollapsed = {read=FOnCollapsed, write=FOnCollapsed};
  1061.     __property TTVChangingEvent OnChanging = {read=FOnChanging, write=FOnChanging};
  1062.     __property TTVChangedEvent OnChange = {read=FOnChange, write=FOnChange};
  1063.     __property TTVCompareEvent OnCompare = {read=FOnCompare, write=FOnCompare};
  1064.     __property TTVExpandedEvent OnDeletion = {read=FOnDeletion, write=FOnDeletion};
  1065.     __property TTVExpandedEvent OnGetImageIndex = {read=FOnGetImageIndex, write=FOnGetImageIndex};
  1066.     __property TTVExpandedEvent OnGetSelectedIndex = {read=FOnGetSelectedIndex, write=FOnGetSelectedIndex
  1067.         };
  1068.     
  1069. public:
  1070.     __fastcall virtual TCustomTreeView(Classes::TComponent* AOwner);
  1071.     __fastcall virtual ~TCustomTreeView(void);
  1072.     bool __fastcall AlphaSort(void);
  1073.     bool __fastcall CustomSort(PFNTVCOMPARE SortProc, int Data);
  1074.     void __fastcall FullCollapse(void);
  1075.     void __fastcall FullExpand(void);
  1076.     THitTests __fastcall GetHitTestInfoAt(int X, int Y);
  1077.     TTreeNode* __fastcall GetNodeAt(int X, int Y);
  1078.     bool __fastcall IsEditing(void);
  1079.     void __fastcall LoadFromFile(const AnsiString FileName);
  1080.     void __fastcall LoadFromStream(Classes::TStream* Stream);
  1081.     void __fastcall SaveToFile(const AnsiString FileName);
  1082.     void __fastcall SaveToStream(Classes::TStream* Stream);
  1083.     __property Graphics::TCanvas* Canvas = {read=FCanvas};
  1084.     __property TTreeNode* DropTarget = {read=GetDropTarget, write=SetDropTarget};
  1085.     __property TTreeNode* Selected = {read=GetSelection, write=SetSelection};
  1086.     __property TTreeNode* TopItem = {read=GetTopItem, write=SetTopItem};
  1087. public:
  1088.     #pragma option push -w-inl
  1089.     /* TWinControl.CreateParented */ inline __fastcall TCustomTreeView(HWND ParentWindow) : Controls::TWinControl(
  1090.         ParentWindow) { }
  1091.     #pragma option pop
  1092.     
  1093. };
  1094.  
  1095. #pragma pack(pop)
  1096.  
  1097. #pragma pack(push, 4)
  1098. struct TNodeCache
  1099. {
  1100.     TTreeNode* CacheNode;
  1101.     int CacheIndex;
  1102. } ;
  1103. #pragma pack(pop)
  1104.  
  1105. #pragma pack(push, 4)
  1106. class PASCALIMPLEMENTATION TTreeNodes : public Classes::TPersistent 
  1107. {
  1108.     typedef Classes::TPersistent inherited;
  1109.     
  1110. private:
  1111.     TCustomTreeView* FOwner;
  1112.     int FUpdateCount;
  1113.     TNodeCache FNodeCache;
  1114.     void __fastcall AddedNode(TTreeNode* Value);
  1115.     HWND __fastcall GetHandle(void);
  1116.     TTreeNode* __fastcall GetNodeFromIndex(int Index);
  1117.     void __fastcall ReadData(Classes::TStream* Stream);
  1118.     void __fastcall Repaint(TTreeNode* Node);
  1119.     void __fastcall WriteData(Classes::TStream* Stream);
  1120.     void __fastcall ClearCache(void);
  1121.     
  1122. protected:
  1123.     HTREEITEM __fastcall AddItem(HTREEITEM Parent, HTREEITEM Target, const tagTVITEMA &Item, TAddMode AddMode
  1124.         );
  1125.     TTreeNode* __fastcall InternalAddObject(TTreeNode* Node, const AnsiString S, void * Ptr, TAddMode AddMode
  1126.         );
  1127.     virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
  1128.     tagTVITEMA __fastcall CreateItem(TTreeNode* Node);
  1129.     int __fastcall GetCount(void);
  1130.     void __fastcall SetItem(int Index, TTreeNode* Value);
  1131.     void __fastcall SetUpdateState(bool Updating);
  1132.     
  1133. public:
  1134.     __fastcall TTreeNodes(TCustomTreeView* AOwner);
  1135.     __fastcall virtual ~TTreeNodes(void);
  1136.     TTreeNode* __fastcall AddChildFirst(TTreeNode* Node, const AnsiString S);
  1137.     TTreeNode* __fastcall AddChild(TTreeNode* Node, const AnsiString S);
  1138.     TTreeNode* __fastcall AddChildObjectFirst(TTreeNode* Node, const AnsiString S, void * Ptr);
  1139.     TTreeNode* __fastcall AddChildObject(TTreeNode* Node, const AnsiString S, void * Ptr);
  1140.     TTreeNode* __fastcall AddFirst(TTreeNode* Node, const AnsiString S);
  1141.     TTreeNode* __fastcall Add(TTreeNode* Node, const AnsiString S);
  1142.     TTreeNode* __fastcall AddObjectFirst(TTreeNode* Node, const AnsiString S, void * Ptr);
  1143.     TTreeNode* __fastcall AddObject(TTreeNode* Node, const AnsiString S, void * Ptr);
  1144.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  1145.     void __fastcall BeginUpdate(void);
  1146.     void __fastcall Clear(void);
  1147.     void __fastcall Delete(TTreeNode* Node);
  1148.     void __fastcall EndUpdate(void);
  1149.     TTreeNode* __fastcall GetFirstNode(void);
  1150.     TTreeNode* __fastcall GetNode(HTREEITEM ItemId);
  1151.     TTreeNode* __fastcall Insert(TTreeNode* Node, const AnsiString S);
  1152.     TTreeNode* __fastcall InsertObject(TTreeNode* Node, const AnsiString S, void * Ptr);
  1153.     __property int Count = {read=GetCount, nodefault};
  1154.     __property HWND Handle = {read=GetHandle, nodefault};
  1155.     __property TTreeNode* Item[int Index] = {read=GetNodeFromIndex/*, default*/};
  1156.     __property TCustomTreeView* Owner = {read=FOwner};
  1157. };
  1158.  
  1159. #pragma pack(pop)
  1160.  
  1161. #pragma pack(push, 4)
  1162. class PASCALIMPLEMENTATION TTreeNode : public Classes::TPersistent 
  1163. {
  1164.     typedef Classes::TPersistent inherited;
  1165.     
  1166. private:
  1167.     TTreeNodes* FOwner;
  1168.     AnsiString FText;
  1169.     void *FData;
  1170.     _TREEITEM *FItemId;
  1171.     int FImageIndex;
  1172.     int FSelectedIndex;
  1173.     int FOverlayIndex;
  1174.     int FStateIndex;
  1175.     bool FDeleting;
  1176.     bool FInTree;
  1177.     bool __fastcall CompareCount(int CompareMe);
  1178.     bool __fastcall DoCanExpand(bool Expand);
  1179.     void __fastcall DoExpand(bool Expand);
  1180.     void __fastcall ExpandItem(bool Expand, bool Recurse);
  1181.     int __fastcall GetAbsoluteIndex(void);
  1182.     bool __fastcall GetExpanded(void);
  1183.     int __fastcall GetLevel(void);
  1184.     TTreeNode* __fastcall GetParent(void);
  1185.     bool __fastcall GetChildren(void);
  1186.     bool __fastcall GetCut(void);
  1187.     bool __fastcall GetDropTarget(void);
  1188.     bool __fastcall GetFocused(void);
  1189.     int __fastcall GetIndex(void);
  1190.     TTreeNode* __fastcall GetItem(int Index);
  1191.     bool __fastcall GetSelected(void);
  1192.     bool __fastcall GetState(TNodeState NodeState);
  1193.     int __fastcall GetCount(void);
  1194.     TCustomTreeView* __fastcall GetTreeView(void);
  1195.     void __fastcall InternalMove(TTreeNode* ParentNode, TTreeNode* Node, HTREEITEM HItem, TAddMode AddMode
  1196.         );
  1197.     bool __fastcall IsEqual(TTreeNode* Node);
  1198.     bool __fastcall IsNodeVisible(void);
  1199.     void __fastcall ReadData(Classes::TStream* Stream, PNodeInfo Info);
  1200.     void __fastcall SetChildren(bool Value);
  1201.     void __fastcall SetCut(bool Value);
  1202.     void __fastcall SetData(void * Value);
  1203.     void __fastcall SetDropTarget(bool Value);
  1204.     void __fastcall SetItem(int Index, TTreeNode* Value);
  1205.     void __fastcall SetExpanded(bool Value);
  1206.     void __fastcall SetFocused(bool Value);
  1207.     void __fastcall SetImageIndex(int Value);
  1208.     void __fastcall SetOverlayIndex(int Value);
  1209.     void __fastcall SetSelectedIndex(int Value);
  1210.     void __fastcall SetSelected(bool Value);
  1211.     void __fastcall SetStateIndex(int Value);
  1212.     void __fastcall SetText(const AnsiString S);
  1213.     void __fastcall WriteData(Classes::TStream* Stream, PNodeInfo Info);
  1214.     
  1215. public:
  1216.     __fastcall TTreeNode(TTreeNodes* AOwner);
  1217.     __fastcall virtual ~TTreeNode(void);
  1218.     bool __fastcall AlphaSort(void);
  1219.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  1220.     void __fastcall Collapse(bool Recurse);
  1221.     bool __fastcall CustomSort(PFNTVCOMPARE SortProc, int Data);
  1222.     void __fastcall Delete(void);
  1223.     void __fastcall DeleteChildren(void);
  1224.     Windows::TRect __fastcall DisplayRect(bool TextOnly);
  1225.     bool __fastcall EditText(void);
  1226.     void __fastcall EndEdit(bool Cancel);
  1227.     void __fastcall Expand(bool Recurse);
  1228.     TTreeNode* __fastcall getFirstChild(void);
  1229.     HWND __fastcall GetHandle(void);
  1230.     TTreeNode* __fastcall GetLastChild(void);
  1231.     TTreeNode* __fastcall GetNext(void);
  1232.     TTreeNode* __fastcall GetNextChild(TTreeNode* Value);
  1233.     TTreeNode* __fastcall getNextSibling(void);
  1234.     TTreeNode* __fastcall GetNextVisible(void);
  1235.     TTreeNode* __fastcall GetPrev(void);
  1236.     TTreeNode* __fastcall GetPrevChild(TTreeNode* Value);
  1237.     TTreeNode* __fastcall getPrevSibling(void);
  1238.     TTreeNode* __fastcall GetPrevVisible(void);
  1239.     bool __fastcall HasAsParent(TTreeNode* Value);
  1240.     int __fastcall IndexOf(TTreeNode* Value);
  1241.     void __fastcall MakeVisible(void);
  1242.     virtual void __fastcall MoveTo(TTreeNode* Destination, TNodeAttachMode Mode);
  1243.     __property int AbsoluteIndex = {read=GetAbsoluteIndex, nodefault};
  1244.     __property int Count = {read=GetCount, nodefault};
  1245.     __property bool Cut = {read=GetCut, write=SetCut, nodefault};
  1246.     __property void * Data = {read=FData, write=SetData};
  1247.     __property bool Deleting = {read=FDeleting, nodefault};
  1248.     __property bool Focused = {read=GetFocused, write=SetFocused, nodefault};
  1249.     __property bool DropTarget = {read=GetDropTarget, write=SetDropTarget, nodefault};
  1250.     __property bool Selected = {read=GetSelected, write=SetSelected, nodefault};
  1251.     __property bool Expanded = {read=GetExpanded, write=SetExpanded, nodefault};
  1252.     __property HWND Handle = {read=GetHandle, nodefault};
  1253.     __property bool HasChildren = {read=GetChildren, write=SetChildren, nodefault};
  1254.     __property int ImageIndex = {read=FImageIndex, write=SetImageIndex, nodefault};
  1255.     __property int Index = {read=GetIndex, nodefault};
  1256.     __property bool IsVisible = {read=IsNodeVisible, nodefault};
  1257.     __property TTreeNode* Item[int Index] = {read=GetItem, write=SetItem/*, default*/};
  1258.     __property HTREEITEM ItemId = {read=FItemId};
  1259.     __property int Level = {read=GetLevel, nodefault};
  1260.     __property int OverlayIndex = {read=FOverlayIndex, write=SetOverlayIndex, nodefault};
  1261.     __property TTreeNodes* Owner = {read=FOwner};
  1262.     __property TTreeNode* Parent = {read=GetParent};
  1263.     __property int SelectedIndex = {read=FSelectedIndex, write=SetSelectedIndex, nodefault};
  1264.     __property int StateIndex = {read=FStateIndex, write=SetStateIndex, nodefault};
  1265.     __property AnsiString Text = {read=FText, write=SetText};
  1266.     __property TCustomTreeView* TreeView = {read=GetTreeView};
  1267. };
  1268.  
  1269. #pragma pack(pop)
  1270.  
  1271. typedef TNodeCache *PNodeCache;
  1272.  
  1273. class DELPHICLASS ETreeViewError;
  1274. #pragma pack(push, 4)
  1275. class PASCALIMPLEMENTATION ETreeViewError : public Sysutils::Exception 
  1276. {
  1277.     typedef Sysutils::Exception inherited;
  1278.     
  1279. public:
  1280.     #pragma option push -w-inl
  1281.     /* Exception.Create */ inline __fastcall ETreeViewError(const AnsiString Msg) : Sysutils::Exception(
  1282.         Msg) { }
  1283.     #pragma option pop
  1284.     #pragma option push -w-inl
  1285.     /* Exception.CreateFmt */ inline __fastcall ETreeViewError(const AnsiString Msg, const System::TVarRec 
  1286.         * Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
  1287.     #pragma option pop
  1288.     #pragma option push -w-inl
  1289.     /* Exception.CreateRes */ inline __fastcall ETreeViewError(int Ident, Extended Dummy) : Sysutils::Exception(
  1290.         Ident, Dummy) { }
  1291.     #pragma option pop
  1292.     #pragma option push -w-inl
  1293.     /* Exception.CreateResFmt */ inline __fastcall ETreeViewError(int Ident, const System::TVarRec * Args
  1294.         , const int Args_Size) : Sysutils::Exception(Ident, Args, Args_Size) { }
  1295.     #pragma option pop
  1296.     #pragma option push -w-inl
  1297.     /* Exception.CreateHelp */ inline __fastcall ETreeViewError(const AnsiString Msg, int AHelpContext)
  1298.          : Sysutils::Exception(Msg, AHelpContext) { }
  1299.     #pragma option pop
  1300.     #pragma option push -w-inl
  1301.     /* Exception.CreateFmtHelp */ inline __fastcall ETreeViewError(const AnsiString Msg, const System::TVarRec 
  1302.         * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext
  1303.         ) { }
  1304.     #pragma option pop
  1305.     #pragma option push -w-inl
  1306.     /* Exception.CreateResHelp */ inline __fastcall ETreeViewError(int Ident, int AHelpContext) : Sysutils::Exception(
  1307.         Ident, AHelpContext) { }
  1308.     #pragma option pop
  1309.     #pragma option push -w-inl
  1310.     /* Exception.CreateResFmtHelp */ inline __fastcall ETreeViewError(int Ident, const System::TVarRec 
  1311.         * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Ident, Args, Args_Size, AHelpContext
  1312.         ) { }
  1313.     #pragma option pop
  1314.     
  1315. public:
  1316.     #pragma option push -w-inl
  1317.     /* TObject.Destroy */ inline __fastcall virtual ~ETreeViewError(void) { }
  1318.     #pragma option pop
  1319.     
  1320. };
  1321.  
  1322. #pragma pack(pop)
  1323.  
  1324. class DELPHICLASS TTreeView;
  1325. #pragma pack(push, 4)
  1326. class PASCALIMPLEMENTATION TTreeView : public TCustomTreeView 
  1327. {
  1328.     typedef TCustomTreeView inherited;
  1329.     
  1330. __published:
  1331.     __property Align ;
  1332.     __property Anchors ;
  1333.     __property AutoExpand ;
  1334.     __property BiDiMode ;
  1335.     __property BorderStyle ;
  1336.     __property BorderWidth ;
  1337.     __property ChangeDelay ;
  1338.     __property Color ;
  1339.     __property Ctl3D ;
  1340.     __property Constraints ;
  1341.     __property DragKind ;
  1342.     __property DragCursor ;
  1343.     __property DragMode ;
  1344.     __property Enabled ;
  1345.     __property Font ;
  1346.     __property HideSelection ;
  1347.     __property HotTrack ;
  1348.     __property Images ;
  1349.     __property Indent ;
  1350.     __property Items ;
  1351.     __property ParentBiDiMode ;
  1352.     __property ParentColor ;
  1353.     __property ParentCtl3D ;
  1354.     __property ParentFont ;
  1355.     __property ParentShowHint ;
  1356.     __property PopupMenu ;
  1357.     __property ReadOnly ;
  1358.     __property RightClickSelect ;
  1359.     __property RowSelect ;
  1360.     __property ShowButtons ;
  1361.     __property ShowHint ;
  1362.     __property ShowLines ;
  1363.     __property ShowRoot ;
  1364.     __property SortType ;
  1365.     __property StateImages ;
  1366.     __property TabOrder ;
  1367.     __property TabStop ;
  1368.     __property ToolTips ;
  1369.     __property Visible ;
  1370.     __property OnChange ;
  1371.     __property OnChanging ;
  1372.     __property OnClick ;
  1373.     __property OnCollapsing ;
  1374.     __property OnCollapsed ;
  1375.     __property OnCompare ;
  1376.     __property OnCustomDraw ;
  1377.     __property OnCustomDrawItem ;
  1378.     __property OnDblClick ;
  1379.     __property OnDeletion ;
  1380.     __property OnDragDrop ;
  1381.     __property OnDragOver ;
  1382.     __property OnEdited ;
  1383.     __property OnEditing ;
  1384.     __property OnEndDock ;
  1385.     __property OnEndDrag ;
  1386.     __property OnEnter ;
  1387.     __property OnExit ;
  1388.     __property OnExpanding ;
  1389.     __property OnExpanded ;
  1390.     __property OnGetImageIndex ;
  1391.     __property OnGetSelectedIndex ;
  1392.     __property OnKeyDown ;
  1393.     __property OnKeyPress ;
  1394.     __property OnKeyUp ;
  1395.     __property OnMouseDown ;
  1396.     __property OnMouseMove ;
  1397.     __property OnMouseUp ;
  1398.     __property OnStartDock ;
  1399.     __property OnStartDrag ;
  1400. public:
  1401.     #pragma option push -w-inl
  1402.     /* TCustomTreeView.Create */ inline __fastcall virtual TTreeView(Classes::TComponent* AOwner) : TCustomTreeView(
  1403.         AOwner) { }
  1404.     #pragma option pop
  1405.     #pragma option push -w-inl
  1406.     /* TCustomTreeView.Destroy */ inline __fastcall virtual ~TTreeView(void) { }
  1407.     #pragma option pop
  1408.     
  1409. public:
  1410.     #pragma option push -w-inl
  1411.     /* TWinControl.CreateParented */ inline __fastcall TTreeView(HWND ParentWindow) : TCustomTreeView(ParentWindow
  1412.         ) { }
  1413.     #pragma option pop
  1414.     
  1415. };
  1416.  
  1417. #pragma pack(pop)
  1418.  
  1419. #pragma option push -b-
  1420. enum TTrackBarOrientation { trHorizontal, trVertical };
  1421. #pragma option pop
  1422.  
  1423. #pragma option push -b-
  1424. enum TTickMark { tmBottomRight, tmTopLeft, tmBoth };
  1425. #pragma option pop
  1426.  
  1427. #pragma option push -b-
  1428. enum TTickStyle { tsNone, tsAuto, tsManual };
  1429. #pragma option pop
  1430.  
  1431. class DELPHICLASS TTrackBar;
  1432. #pragma pack(push, 4)
  1433. class PASCALIMPLEMENTATION TTrackBar : public Controls::TWinControl 
  1434. {
  1435.     typedef Controls::TWinControl inherited;
  1436.     
  1437. private:
  1438.     TTrackBarOrientation FOrientation;
  1439.     TTickMark FTickMarks;
  1440.     TTickStyle FTickStyle;
  1441.     int FLineSize;
  1442.     int FPageSize;
  1443.     int FThumbLength;
  1444.     bool FSliderVisible;
  1445.     int FMin;
  1446.     int FMax;
  1447.     int FFrequency;
  1448.     int FPosition;
  1449.     int FSelStart;
  1450.     int FSelEnd;
  1451.     Classes::TNotifyEvent FOnChange;
  1452.     int __fastcall GetThumbLength(void);
  1453.     void __fastcall SetOrientation(TTrackBarOrientation Value);
  1454.     void __fastcall SetParams(int APosition, int AMin, int AMax);
  1455.     void __fastcall SetPosition(int Value);
  1456.     void __fastcall SetMin(int Value);
  1457.     void __fastcall SetMax(int Value);
  1458.     void __fastcall SetFrequency(int Value);
  1459.     void __fastcall SetTickStyle(TTickStyle Value);
  1460.     void __fastcall SetTickMarks(TTickMark Value);
  1461.     void __fastcall SetLineSize(int Value);
  1462.     void __fastcall SetPageSize(int Value);
  1463.     void __fastcall SetThumbLength(int Value);
  1464.     void __fastcall SetSliderVisible(bool Value);
  1465.     void __fastcall SetSelStart(int Value);
  1466.     void __fastcall SetSelEnd(int Value);
  1467.     void __fastcall UpdateSelection(void);
  1468.     MESSAGE void __fastcall CNHScroll(Messages::TWMScroll &Message);
  1469.     MESSAGE void __fastcall CNVScroll(Messages::TWMScroll &Message);
  1470.     
  1471. protected:
  1472.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1473.     virtual void __fastcall CreateWnd(void);
  1474.     virtual void __fastcall DestroyWnd(void);
  1475.     
  1476. public:
  1477.     __fastcall virtual TTrackBar(Classes::TComponent* AOwner);
  1478.     void __fastcall SetTick(int Value);
  1479.     
  1480. __published:
  1481.     __property Align ;
  1482.     __property Anchors ;
  1483.     __property BorderWidth ;
  1484.     __property Ctl3D ;
  1485.     __property DragCursor ;
  1486.     __property DragKind ;
  1487.     __property DragMode ;
  1488.     __property Enabled ;
  1489.     __property Constraints ;
  1490.     __property int LineSize = {read=FLineSize, write=SetLineSize, default=1};
  1491.     __property int Max = {read=FMax, write=SetMax, default=10};
  1492.     __property int Min = {read=FMin, write=SetMin, default=0};
  1493.     __property TTrackBarOrientation Orientation = {read=FOrientation, write=SetOrientation, nodefault};
  1494.         
  1495.     __property ParentCtl3D ;
  1496.     __property ParentShowHint ;
  1497.     __property int PageSize = {read=FPageSize, write=SetPageSize, default=2};
  1498.     __property PopupMenu ;
  1499.     __property int Frequency = {read=FFrequency, write=SetFrequency, nodefault};
  1500.     __property int Position = {read=FPosition, write=SetPosition, nodefault};
  1501.     __property bool SliderVisible = {read=FSliderVisible, write=SetSliderVisible, default=1};
  1502.     __property int SelEnd = {read=FSelEnd, write=SetSelEnd, nodefault};
  1503.     __property int SelStart = {read=FSelStart, write=SetSelStart, nodefault};
  1504.     __property ShowHint ;
  1505.     __property TabOrder ;
  1506.     __property TabStop ;
  1507.     __property int ThumbLength = {read=GetThumbLength, write=SetThumbLength, nodefault};
  1508.     __property TTickMark TickMarks = {read=FTickMarks, write=SetTickMarks, nodefault};
  1509.     __property TTickStyle TickStyle = {read=FTickStyle, write=SetTickStyle, nodefault};
  1510.     __property Visible ;
  1511.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  1512.     __property OnDragDrop ;
  1513.     __property OnDragOver ;
  1514.     __property OnEndDock ;
  1515.     __property OnEndDrag ;
  1516.     __property OnEnter ;
  1517.     __property OnExit ;
  1518.     __property OnKeyDown ;
  1519.     __property OnKeyPress ;
  1520.     __property OnKeyUp ;
  1521.     __property OnStartDock ;
  1522.     __property OnStartDrag ;
  1523. public:
  1524.     #pragma option push -w-inl
  1525.     /* TWinControl.CreateParented */ inline __fastcall TTrackBar(HWND ParentWindow) : Controls::TWinControl(
  1526.         ParentWindow) { }
  1527.     #pragma option pop
  1528.     #pragma option push -w-inl
  1529.     /* TWinControl.Destroy */ inline __fastcall virtual ~TTrackBar(void) { }
  1530.     #pragma option pop
  1531.     
  1532. };
  1533.  
  1534. #pragma pack(pop)
  1535.  
  1536. typedef int TProgressRange;
  1537.  
  1538. #pragma option push -b-
  1539. enum TProgressBarOrientation { pbHorizontal, pbVertical };
  1540. #pragma option pop
  1541.  
  1542. class DELPHICLASS TProgressBar;
  1543. #pragma pack(push, 4)
  1544. class PASCALIMPLEMENTATION TProgressBar : public Controls::TWinControl 
  1545. {
  1546.     typedef Controls::TWinControl inherited;
  1547.     
  1548. private:
  1549.     bool F32BitMode;
  1550.     int FMin;
  1551.     int FMax;
  1552.     int FPosition;
  1553.     int FStep;
  1554.     TProgressBarOrientation FOrientation;
  1555.     bool FSmooth;
  1556.     int __fastcall GetMin(void);
  1557.     int __fastcall GetMax(void);
  1558.     int __fastcall GetPosition(void);
  1559.     void __fastcall SetParams(int AMin, int AMax);
  1560.     void __fastcall SetMin(int Value);
  1561.     void __fastcall SetMax(int Value);
  1562.     void __fastcall SetPosition(int Value);
  1563.     void __fastcall SetStep(int Value);
  1564.     void __fastcall SetOrientation(TProgressBarOrientation Value);
  1565.     void __fastcall SetSmooth(bool Value);
  1566.     
  1567. protected:
  1568.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1569.     virtual void __fastcall CreateWnd(void);
  1570.     
  1571. public:
  1572.     __fastcall virtual TProgressBar(Classes::TComponent* AOwner);
  1573.     void __fastcall StepIt(void);
  1574.     void __fastcall StepBy(int Delta);
  1575.     
  1576. __published:
  1577.     __property Align ;
  1578.     __property Anchors ;
  1579.     __property BorderWidth ;
  1580.     __property DragCursor ;
  1581.     __property DragKind ;
  1582.     __property DragMode ;
  1583.     __property Enabled ;
  1584.     __property Hint ;
  1585.     __property Constraints ;
  1586.     __property int Min = {read=GetMin, write=SetMin, nodefault};
  1587.     __property int Max = {read=GetMax, write=SetMax, nodefault};
  1588.     __property TProgressBarOrientation Orientation = {read=FOrientation, write=SetOrientation, default=0
  1589.         };
  1590.     __property ParentShowHint ;
  1591.     __property PopupMenu ;
  1592.     __property int Position = {read=GetPosition, write=SetPosition, default=0};
  1593.     __property bool Smooth = {read=FSmooth, write=SetSmooth, default=0};
  1594.     __property int Step = {read=FStep, write=SetStep, default=10};
  1595.     __property ShowHint ;
  1596.     __property TabOrder ;
  1597.     __property TabStop ;
  1598.     __property Visible ;
  1599.     __property OnDragDrop ;
  1600.     __property OnDragOver ;
  1601.     __property OnEndDock ;
  1602.     __property OnEndDrag ;
  1603.     __property OnEnter ;
  1604.     __property OnExit ;
  1605.     __property OnMouseDown ;
  1606.     __property OnMouseMove ;
  1607.     __property OnMouseUp ;
  1608.     __property OnStartDock ;
  1609.     __property OnStartDrag ;
  1610. public:
  1611.     #pragma option push -w-inl
  1612.     /* TWinControl.CreateParented */ inline __fastcall TProgressBar(HWND ParentWindow) : Controls::TWinControl(
  1613.         ParentWindow) { }
  1614.     #pragma option pop
  1615.     #pragma option push -w-inl
  1616.     /* TWinControl.Destroy */ inline __fastcall virtual ~TProgressBar(void) { }
  1617.     #pragma option pop
  1618.     
  1619. };
  1620.  
  1621. #pragma pack(pop)
  1622.  
  1623. #pragma option push -b-
  1624. enum TAttributeType { atSelected, atDefaultText };
  1625. #pragma option pop
  1626.  
  1627. #pragma option push -b-
  1628. enum TConsistentAttribute { caBold, caColor, caFace, caItalic, caSize, caStrikeOut, caUnderline, caProtected 
  1629.     };
  1630. #pragma option pop
  1631.  
  1632. typedef Set<TConsistentAttribute, caBold, caProtected>  TConsistentAttributes;
  1633.  
  1634. class DELPHICLASS TTextAttributes;
  1635. class DELPHICLASS TCustomRichEdit;
  1636. class DELPHICLASS TParaAttributes;
  1637. #pragma option push -b-
  1638. enum TNumberingStyle { nsNone, nsBullet };
  1639. #pragma option pop
  1640.  
  1641. #pragma pack(push, 4)
  1642. class PASCALIMPLEMENTATION TParaAttributes : public Classes::TPersistent 
  1643. {
  1644.     typedef Classes::TPersistent inherited;
  1645.     
  1646. private:
  1647.     TCustomRichEdit* RichEdit;
  1648.     void __fastcall GetAttributes(_paraformat &Paragraph);
  1649.     Classes::TAlignment __fastcall GetAlignment(void);
  1650.     int __fastcall GetFirstIndent(void);
  1651.     int __fastcall GetLeftIndent(void);
  1652.     int __fastcall GetRightIndent(void);
  1653.     TNumberingStyle __fastcall GetNumbering(void);
  1654.     int __fastcall GetTab(Byte Index);
  1655.     int __fastcall GetTabCount(void);
  1656.     void __fastcall InitPara(_paraformat &Paragraph);
  1657.     void __fastcall SetAlignment(Classes::TAlignment Value);
  1658.     void __fastcall SetAttributes(_paraformat &Paragraph);
  1659.     void __fastcall SetFirstIndent(int Value);
  1660.     void __fastcall SetLeftIndent(int Value);
  1661.     void __fastcall SetRightIndent(int Value);
  1662.     void __fastcall SetNumbering(TNumberingStyle Value);
  1663.     void __fastcall SetTab(Byte Index, int Value);
  1664.     void __fastcall SetTabCount(int Value);
  1665.     
  1666. public:
  1667.     __fastcall TParaAttributes(TCustomRichEdit* AOwner);
  1668.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  1669.     __property Classes::TAlignment Alignment = {read=GetAlignment, write=SetAlignment, nodefault};
  1670.     __property int FirstIndent = {read=GetFirstIndent, write=SetFirstIndent, nodefault};
  1671.     __property int LeftIndent = {read=GetLeftIndent, write=SetLeftIndent, nodefault};
  1672.     __property TNumberingStyle Numbering = {read=GetNumbering, write=SetNumbering, nodefault};
  1673.     __property int RightIndent = {read=GetRightIndent, write=SetRightIndent, nodefault};
  1674.     __property int Tab[Byte Index] = {read=GetTab, write=SetTab};
  1675.     __property int TabCount = {read=GetTabCount, write=SetTabCount, nodefault};
  1676. public:
  1677.     #pragma option push -w-inl
  1678.     /* TPersistent.Destroy */ inline __fastcall virtual ~TParaAttributes(void) { }
  1679.     #pragma option pop
  1680.     
  1681. };
  1682.  
  1683. #pragma pack(pop)
  1684.  
  1685. typedef TMetaClass*TConversionClass;
  1686.  
  1687. typedef void __fastcall (__closure *TRichEditResizeEvent)(System::TObject* Sender, const Windows::TRect 
  1688.     &Rect);
  1689.  
  1690. typedef void __fastcall (__closure *TRichEditProtectChange)(System::TObject* Sender, int StartPos, int 
  1691.     EndPos, bool &AllowChange);
  1692.  
  1693. typedef void __fastcall (__closure *TRichEditSaveClipboard)(System::TObject* Sender, int NumObjects, 
  1694.     int NumChars, bool &SaveClipboard);
  1695.  
  1696. #pragma option push -b-
  1697. enum TSearchType { stWholeWord, stMatchCase };
  1698. #pragma option pop
  1699.  
  1700. typedef Set<TSearchType, stWholeWord, stMatchCase>  TSearchTypes;
  1701.  
  1702. #pragma pack(push, 4)
  1703. class PASCALIMPLEMENTATION TCustomRichEdit : public Stdctrls::TCustomMemo 
  1704. {
  1705.     typedef Stdctrls::TCustomMemo inherited;
  1706.     
  1707. private:
  1708.     unsigned FLibHandle;
  1709.     bool FHideScrollBars;
  1710.     TTextAttributes* FSelAttributes;
  1711.     TTextAttributes* FDefAttributes;
  1712.     TParaAttributes* FParagraph;
  1713.     Classes::TAlignment FOldParaAlignment;
  1714.     int FScreenLogPixels;
  1715.     Classes::TStrings* FRichEditStrings;
  1716.     Classes::TMemoryStream* FMemStream;
  1717.     Classes::TNotifyEvent FOnSelChange;
  1718.     bool FHideSelection;
  1719.     bool FModified;
  1720.     TMetaClass*FDefaultConverter;
  1721.     TRichEditResizeEvent FOnResizeRequest;
  1722.     TRichEditProtectChange FOnProtectChange;
  1723.     TRichEditSaveClipboard FOnSaveClipboard;
  1724.     Windows::TRect FPageRect;
  1725.     HIDESBASE MESSAGE void __fastcall CMBiDiModeChanged(Messages::TMessage &Message);
  1726.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  1727.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  1728.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  1729.     bool __fastcall GetPlainText(void);
  1730.     bool __fastcall ProtectChange(int StartPos, int EndPos);
  1731.     bool __fastcall SaveClipboard(int NumObj, int NumChars);
  1732.     void __fastcall SetHideScrollBars(bool Value);
  1733.     HIDESBASE void __fastcall SetHideSelection(bool Value);
  1734.     void __fastcall SetPlainText(bool Value);
  1735.     void __fastcall SetRichEditStrings(Classes::TStrings* Value);
  1736.     void __fastcall SetDefAttributes(TTextAttributes* Value);
  1737.     void __fastcall SetSelAttributes(TTextAttributes* Value);
  1738.     HIDESBASE MESSAGE void __fastcall WMNCDestroy(Messages::TWMNoParams &Message);
  1739.     HIDESBASE MESSAGE void __fastcall WMSetCursor(Messages::TWMSetCursor &Message);
  1740.     HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  1741.     HIDESBASE MESSAGE void __fastcall WMSetFont(Messages::TWMSetFont &Message);
  1742.     
  1743. protected:
  1744.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1745.     virtual void __fastcall CreateWnd(void);
  1746.     virtual void __fastcall DestroyWnd(void);
  1747.     virtual void __fastcall RequestSize(const Windows::TRect &Rect);
  1748.     DYNAMIC void __fastcall SelectionChange(void);
  1749.     virtual void __fastcall DoSetMaxLength(int Value);
  1750.     virtual Windows::TPoint __fastcall GetCaretPos();
  1751.     virtual int __fastcall GetSelLength(void);
  1752.     virtual int __fastcall GetSelStart(void);
  1753.     virtual AnsiString __fastcall GetSelText();
  1754.     virtual void __fastcall SetSelLength(int Value);
  1755.     virtual void __fastcall SetSelStart(int Value);
  1756.     __property bool HideSelection = {read=FHideSelection, write=SetHideSelection, default=1};
  1757.     __property bool HideScrollBars = {read=FHideScrollBars, write=SetHideScrollBars, default=1};
  1758.     __property Classes::TStrings* Lines = {read=FRichEditStrings, write=SetRichEditStrings};
  1759.     __property TRichEditSaveClipboard OnSaveClipboard = {read=FOnSaveClipboard, write=FOnSaveClipboard}
  1760.         ;
  1761.     __property Classes::TNotifyEvent OnSelectionChange = {read=FOnSelChange, write=FOnSelChange};
  1762.     __property TRichEditProtectChange OnProtectChange = {read=FOnProtectChange, write=FOnProtectChange}
  1763.         ;
  1764.     __property TRichEditResizeEvent OnResizeRequest = {read=FOnResizeRequest, write=FOnResizeRequest};
  1765.     __property bool PlainText = {read=GetPlainText, write=SetPlainText, default=0};
  1766.     
  1767. public:
  1768.     __fastcall virtual TCustomRichEdit(Classes::TComponent* AOwner);
  1769.     __fastcall virtual ~TCustomRichEdit(void);
  1770.     virtual void __fastcall Clear(void);
  1771.     int __fastcall FindText(const AnsiString SearchStr, int StartPos, int Length, TSearchTypes Options)
  1772.         ;
  1773.     virtual int __fastcall GetSelTextBuf(char * Buffer, int BufSize);
  1774.     virtual void __fastcall Print(const AnsiString Caption);
  1775.     /*         class method */ static void __fastcall RegisterConversionFormat(TMetaClass* vmt, const AnsiString 
  1776.         AExtension, TMetaClass* AConversionClass);
  1777.     __property TMetaClass* DefaultConverter = {read=FDefaultConverter, write=FDefaultConverter};
  1778.     __property TTextAttributes* DefAttributes = {read=FDefAttributes, write=SetDefAttributes};
  1779.     __property TTextAttributes* SelAttributes = {read=FSelAttributes, write=SetSelAttributes};
  1780.     __property Windows::TRect PageRect = {read=FPageRect, write=FPageRect};
  1781.     __property TParaAttributes* Paragraph = {read=FParagraph};
  1782. public:
  1783.     #pragma option push -w-inl
  1784.     /* TWinControl.CreateParented */ inline __fastcall TCustomRichEdit(HWND ParentWindow) : Stdctrls::TCustomMemo(
  1785.         ParentWindow) { }
  1786.     #pragma option pop
  1787.     
  1788. };
  1789.  
  1790. #pragma pack(pop)
  1791.  
  1792. #pragma pack(push, 4)
  1793. class PASCALIMPLEMENTATION TTextAttributes : public Classes::TPersistent 
  1794. {
  1795.     typedef Classes::TPersistent inherited;
  1796.     
  1797. private:
  1798.     TCustomRichEdit* RichEdit;
  1799.     TAttributeType FType;
  1800.     void __fastcall GetAttributes(Richedit::TCharFormatA &Format);
  1801.     Graphics::TFontCharset __fastcall GetCharset(void);
  1802.     Graphics::TColor __fastcall GetColor(void);
  1803.     TConsistentAttributes __fastcall GetConsistentAttributes(void);
  1804.     int __fastcall GetHeight(void);
  1805.     AnsiString __fastcall GetName();
  1806.     Graphics::TFontPitch __fastcall GetPitch(void);
  1807.     bool __fastcall GetProtected(void);
  1808.     int __fastcall GetSize(void);
  1809.     Graphics::TFontStyles __fastcall GetStyle(void);
  1810.     void __fastcall SetAttributes(Richedit::TCharFormatA &Format);
  1811.     void __fastcall SetCharset(Graphics::TFontCharset Value);
  1812.     void __fastcall SetColor(Graphics::TColor Value);
  1813.     void __fastcall SetHeight(int Value);
  1814.     void __fastcall SetName(AnsiString Value);
  1815.     void __fastcall SetPitch(Graphics::TFontPitch Value);
  1816.     void __fastcall SetProtected(bool Value);
  1817.     void __fastcall SetSize(int Value);
  1818.     void __fastcall SetStyle(Graphics::TFontStyles Value);
  1819.     
  1820. protected:
  1821.     void __fastcall InitFormat(Richedit::TCharFormatA &Format);
  1822.     virtual void __fastcall AssignTo(Classes::TPersistent* Dest);
  1823.     
  1824. public:
  1825.     __fastcall TTextAttributes(TCustomRichEdit* AOwner, TAttributeType AttributeType);
  1826.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  1827.     __property Graphics::TFontCharset Charset = {read=GetCharset, write=SetCharset, nodefault};
  1828.     __property Graphics::TColor Color = {read=GetColor, write=SetColor, nodefault};
  1829.     __property TConsistentAttributes ConsistentAttributes = {read=GetConsistentAttributes, nodefault};
  1830.     __property AnsiString Name = {read=GetName, write=SetName};
  1831.     __property Graphics::TFontPitch Pitch = {read=GetPitch, write=SetPitch, nodefault};
  1832.     __property bool Protected = {read=GetProtected, write=SetProtected, nodefault};
  1833.     __property int Size = {read=GetSize, write=SetSize, nodefault};
  1834.     __property Graphics::TFontStyles Style = {read=GetStyle, write=SetStyle, nodefault};
  1835.     __property int Height = {read=GetHeight, write=SetHeight, nodefault};
  1836. public:
  1837.     #pragma option push -w-inl
  1838.     /* TPersistent.Destroy */ inline __fastcall virtual ~TTextAttributes(void) { }
  1839.     #pragma option pop
  1840.     
  1841. };
  1842.  
  1843. #pragma pack(pop)
  1844.  
  1845. class DELPHICLASS TConversion;
  1846. #pragma pack(push, 4)
  1847. class PASCALIMPLEMENTATION TConversion : public System::TObject 
  1848. {
  1849.     typedef System::TObject inherited;
  1850.     
  1851. public:
  1852.     virtual int __fastcall ConvertReadStream(Classes::TStream* Stream, char * Buffer, int BufSize);
  1853.     virtual int __fastcall ConvertWriteStream(Classes::TStream* Stream, char * Buffer, int BufSize);
  1854. public:
  1855.         
  1856.     #pragma option push -w-inl
  1857.     /* TObject.Create */ inline __fastcall TConversion(void) : System::TObject() { }
  1858.     #pragma option pop
  1859.     #pragma option push -w-inl
  1860.     /* TObject.Destroy */ inline __fastcall virtual ~TConversion(void) { }
  1861.     #pragma option pop
  1862.     
  1863. };
  1864.  
  1865. #pragma pack(pop)
  1866.  
  1867. struct TConversionFormat;
  1868. typedef TConversionFormat *PConversionFormat;
  1869.  
  1870. #pragma pack(push, 4)
  1871. struct TConversionFormat
  1872. {
  1873.     TMetaClass*ConversionClass;
  1874.     AnsiString Extension;
  1875.     TConversionFormat *Next;
  1876. } ;
  1877. #pragma pack(pop)
  1878.  
  1879. #pragma pack(push, 4)
  1880. struct TRichEditStreamInfo
  1881. {
  1882.     TConversion* Converter;
  1883.     Classes::TStream* Stream;
  1884. } ;
  1885. #pragma pack(pop)
  1886.  
  1887. typedef TRichEditStreamInfo *PRichEditStreamInfo;
  1888.  
  1889. class DELPHICLASS TRichEdit;
  1890. #pragma pack(push, 4)
  1891. class PASCALIMPLEMENTATION TRichEdit : public TCustomRichEdit 
  1892. {
  1893.     typedef TCustomRichEdit inherited;
  1894.     
  1895. __published:
  1896.     __property Align ;
  1897.     __property Alignment ;
  1898.     __property Anchors ;
  1899.     __property BiDiMode ;
  1900.     __property BorderStyle ;
  1901.     __property BorderWidth ;
  1902.     __property Color ;
  1903.     __property Ctl3D ;
  1904.     __property DragCursor ;
  1905.     __property DragKind ;
  1906.     __property DragMode ;
  1907.     __property Enabled ;
  1908.     __property Font ;
  1909.     __property HideSelection ;
  1910.     __property HideScrollBars ;
  1911.     __property ImeMode ;
  1912.     __property ImeName ;
  1913.     __property Constraints ;
  1914.     __property Lines ;
  1915.     __property MaxLength ;
  1916.     __property ParentBiDiMode ;
  1917.     __property ParentColor ;
  1918.     __property ParentCtl3D ;
  1919.     __property ParentFont ;
  1920.     __property ParentShowHint ;
  1921.     __property PlainText ;
  1922.     __property PopupMenu ;
  1923.     __property ReadOnly ;
  1924.     __property ScrollBars ;
  1925.     __property ShowHint ;
  1926.     __property TabOrder ;
  1927.     __property TabStop ;
  1928.     __property Visible ;
  1929.     __property WantTabs ;
  1930.     __property WantReturns ;
  1931.     __property WordWrap ;
  1932.     __property OnChange ;
  1933.     __property OnDragDrop ;
  1934.     __property OnDragOver ;
  1935.     __property OnEndDock ;
  1936.     __property OnEndDrag ;
  1937.     __property OnEnter ;
  1938.     __property OnExit ;
  1939.     __property OnKeyDown ;
  1940.     __property OnKeyPress ;
  1941.     __property OnKeyUp ;
  1942.     __property OnMouseDown ;
  1943.     __property OnMouseMove ;
  1944.     __property OnMouseUp ;
  1945.     __property OnMouseWheel ;
  1946.     __property OnMouseWheelDown ;
  1947.     __property OnMouseWheelUp ;
  1948.     __property OnProtectChange ;
  1949.     __property OnResizeRequest ;
  1950.     __property OnSaveClipboard ;
  1951.     __property OnSelectionChange ;
  1952.     __property OnStartDock ;
  1953.     __property OnStartDrag ;
  1954. public:
  1955.     #pragma option push -w-inl
  1956.     /* TCustomRichEdit.Create */ inline __fastcall virtual TRichEdit(Classes::TComponent* AOwner) : TCustomRichEdit(
  1957.         AOwner) { }
  1958.     #pragma option pop
  1959.     #pragma option push -w-inl
  1960.     /* TCustomRichEdit.Destroy */ inline __fastcall virtual ~TRichEdit(void) { }
  1961.     #pragma option pop
  1962.     
  1963. public:
  1964.     #pragma option push -w-inl
  1965.     /* TWinControl.CreateParented */ inline __fastcall TRichEdit(HWND ParentWindow) : TCustomRichEdit(ParentWindow
  1966.         ) { }
  1967.     #pragma option pop
  1968.     
  1969. };
  1970.  
  1971. #pragma pack(pop)
  1972.  
  1973. #pragma option push -b-
  1974. enum TUDAlignButton { udLeft, udRight };
  1975. #pragma option pop
  1976.  
  1977. #pragma option push -b-
  1978. enum TUDOrientation { udHorizontal, udVertical };
  1979. #pragma option pop
  1980.  
  1981. #pragma option push -b-
  1982. enum TUDBtnType { btNext, btPrev };
  1983. #pragma option pop
  1984.  
  1985. typedef void __fastcall (__closure *TUDClickEvent)(System::TObject* Sender, TUDBtnType Button);
  1986.  
  1987. typedef void __fastcall (__closure *TUDChangingEvent)(System::TObject* Sender, bool &AllowChange);
  1988.  
  1989. class DELPHICLASS TCustomUpDown;
  1990. #pragma pack(push, 4)
  1991. class PASCALIMPLEMENTATION TCustomUpDown : public Controls::TWinControl 
  1992. {
  1993.     typedef Controls::TWinControl inherited;
  1994.     
  1995. private:
  1996.     bool FArrowKeys;
  1997.     Controls::TWinControl* FAssociate;
  1998.     short FMin;
  1999.     short FMax;
  2000.     int FIncrement;
  2001.     short FPosition;
  2002.     bool FThousands;
  2003.     bool FWrap;
  2004.     TUDClickEvent FOnClick;
  2005.     TUDAlignButton FAlignButton;
  2006.     TUDOrientation FOrientation;
  2007.     TUDChangingEvent FOnChanging;
  2008.     void __fastcall UndoAutoResizing(Controls::TWinControl* Value);
  2009.     void __fastcall SetAssociate(Controls::TWinControl* Value);
  2010.     short __fastcall GetPosition(void);
  2011.     void __fastcall SetMin(short Value);
  2012.     void __fastcall SetMax(short Value);
  2013.     void __fastcall SetIncrement(int Value);
  2014.     void __fastcall SetPosition(short Value);
  2015.     void __fastcall SetAlignButton(TUDAlignButton Value);
  2016.     void __fastcall SetOrientation(TUDOrientation Value);
  2017.     void __fastcall SetArrowKeys(bool Value);
  2018.     void __fastcall SetThousands(bool Value);
  2019.     void __fastcall SetWrap(bool Value);
  2020.     MESSAGE void __fastcall CMAllChildrenFlipped(Messages::TMessage &Message);
  2021.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  2022.     HIDESBASE MESSAGE void __fastcall WMHScroll(Messages::TWMScroll &Message);
  2023.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  2024.     HIDESBASE MESSAGE void __fastcall WMVScroll(Messages::TWMScroll &Message);
  2025.     
  2026. protected:
  2027.     DYNAMIC bool __fastcall CanChange(void);
  2028.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  2029.     virtual void __fastcall CreateWnd(void);
  2030.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  2031.         );
  2032.     HIDESBASEDYNAMIC void __fastcall Click(TUDBtnType Button);
  2033.     __property TUDAlignButton AlignButton = {read=FAlignButton, write=SetAlignButton, default=1};
  2034.     __property bool ArrowKeys = {read=FArrowKeys, write=SetArrowKeys, default=1};
  2035.     __property Controls::TWinControl* Associate = {read=FAssociate, write=SetAssociate};
  2036.     __property short Min = {read=FMin, write=SetMin, nodefault};
  2037.     __property short Max = {read=FMax, write=SetMax, default=100};
  2038.     __property int Increment = {read=FIncrement, write=SetIncrement, default=1};
  2039.     __property TUDOrientation Orientation = {read=FOrientation, write=SetOrientation, default=1};
  2040.     __property short Position = {read=GetPosition, write=SetPosition, nodefault};
  2041.     __property bool Thousands = {read=FThousands, write=SetThousands, default=1};
  2042.     __property bool Wrap = {read=FWrap, write=SetWrap, nodefault};
  2043.     __property TUDChangingEvent OnChanging = {read=FOnChanging, write=FOnChanging};
  2044.     __property TUDClickEvent OnClick = {read=FOnClick, write=FOnClick};
  2045.     
  2046. public:
  2047.     __fastcall virtual TCustomUpDown(Classes::TComponent* AOwner);
  2048. public:
  2049.     #pragma option push -w-inl
  2050.     /* TWinControl.CreateParented */ inline __fastcall TCustomUpDown(HWND ParentWindow) : Controls::TWinControl(
  2051.         ParentWindow) { }
  2052.     #pragma option pop
  2053.     #pragma option push -w-inl
  2054.     /* TWinControl.Destroy */ inline __fastcall virtual ~TCustomUpDown(void) { }
  2055.     #pragma option pop
  2056.     
  2057. };
  2058.  
  2059. #pragma pack(pop)
  2060.  
  2061. class DELPHICLASS TUpDown;
  2062. #pragma pack(push, 4)
  2063. class PASCALIMPLEMENTATION TUpDown : public TCustomUpDown 
  2064. {
  2065.     typedef TCustomUpDown inherited;
  2066.     
  2067. __published:
  2068.     __property AlignButton ;
  2069.     __property Anchors ;
  2070.     __property Associate ;
  2071.     __property ArrowKeys ;
  2072.     __property Enabled ;
  2073.     __property Hint ;
  2074.     __property Min ;
  2075.     __property Max ;
  2076.     __property Increment ;
  2077.     __property Constraints ;
  2078.     __property Orientation ;
  2079.     __property ParentShowHint ;
  2080.     __property PopupMenu ;
  2081.     __property Position ;
  2082.     __property ShowHint ;
  2083.     __property TabOrder ;
  2084.     __property TabStop ;
  2085.     __property Thousands ;
  2086.     __property Visible ;
  2087.     __property Wrap ;
  2088.     __property OnChanging ;
  2089.     __property OnClick ;
  2090.     __property OnEnter ;
  2091.     __property OnExit ;
  2092.     __property OnMouseDown ;
  2093.     __property OnMouseMove ;
  2094.     __property OnMouseUp ;
  2095. public:
  2096.     #pragma option push -w-inl
  2097.     /* TCustomUpDown.Create */ inline __fastcall virtual TUpDown(Classes::TComponent* AOwner) : TCustomUpDown(
  2098.         AOwner) { }
  2099.     #pragma option pop
  2100.     
  2101. public:
  2102.     #pragma option push -w-inl
  2103.     /* TWinControl.CreateParented */ inline __fastcall TUpDown(HWND ParentWindow) : TCustomUpDown(ParentWindow
  2104.         ) { }
  2105.     #pragma option pop
  2106.     #pragma option push -w-inl
  2107.     /* TWinControl.Destroy */ inline __fastcall virtual ~TUpDown(void) { }
  2108.     #pragma option pop
  2109.     
  2110. };
  2111.  
  2112. #pragma pack(pop)
  2113.  
  2114. #pragma option push -b-
  2115. enum THKModifier { hkShift, hkCtrl, hkAlt, hkExt };
  2116. #pragma option pop
  2117.  
  2118. typedef Set<THKModifier, hkShift, hkExt>  THKModifiers;
  2119.  
  2120. #pragma option push -b-
  2121. enum THKInvalidKey { hcNone, hcShift, hcCtrl, hcAlt, hcShiftCtrl, hcShiftAlt, hcCtrlAlt, hcShiftCtrlAlt 
  2122.     };
  2123. #pragma option pop
  2124.  
  2125. typedef Set<THKInvalidKey, hcNone, hcShiftCtrlAlt>  THKInvalidKeys;
  2126.  
  2127. class DELPHICLASS TCustomHotKey;
  2128. #pragma pack(push, 4)
  2129. class PASCALIMPLEMENTATION TCustomHotKey : public Controls::TWinControl 
  2130. {
  2131.     typedef Controls::TWinControl inherited;
  2132.     
  2133. private:
  2134.     bool FAutoSize;
  2135.     THKModifiers FModifiers;
  2136.     THKInvalidKeys FInvalidKeys;
  2137.     Word FHotKey;
  2138.     void __fastcall AdjustHeight(void);
  2139.     HIDESBASE void __fastcall SetAutoSize(bool Value);
  2140.     void __fastcall SetInvalidKeys(THKInvalidKeys Value);
  2141.     void __fastcall SetModifiers(THKModifiers Value);
  2142.     void __fastcall UpdateHeight(void);
  2143.     Classes::TShortCut __fastcall GetHotKey(void);
  2144.     void __fastcall SetHotKey(Classes::TShortCut Value);
  2145.     void __fastcall ShortCutToHotKey(Classes::TShortCut Value);
  2146.     Classes::TShortCut __fastcall HotKeyToShortCut(int Value);
  2147.     
  2148. protected:
  2149.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  2150.     virtual void __fastcall CreateWnd(void);
  2151.     __property bool AutoSize = {read=FAutoSize, write=SetAutoSize, default=1};
  2152.     __property THKInvalidKeys InvalidKeys = {read=FInvalidKeys, write=SetInvalidKeys, nodefault};
  2153.     __property THKModifiers Modifiers = {read=FModifiers, write=SetModifiers, nodefault};
  2154.     __property Classes::TShortCut HotKey = {read=GetHotKey, write=SetHotKey, nodefault};
  2155.     __property TabStop ;
  2156.     
  2157. public:
  2158.     __fastcall virtual TCustomHotKey(Classes::TComponent* AOwner);
  2159. public:
  2160.     #pragma option push -w-inl
  2161.     /* TWinControl.CreateParented */ inline __fastcall TCustomHotKey(HWND ParentWindow) : Controls::TWinControl(
  2162.         ParentWindow) { }
  2163.     #pragma option pop
  2164.     #pragma option push -w-inl
  2165.     /* TWinControl.Destroy */ inline __fastcall virtual ~TCustomHotKey(void) { }
  2166.     #pragma option pop
  2167.     
  2168. };
  2169.  
  2170. #pragma pack(pop)
  2171.  
  2172. class DELPHICLASS THotKey;
  2173. #pragma pack(push, 4)
  2174. class PASCALIMPLEMENTATION THotKey : public TCustomHotKey 
  2175. {
  2176.     typedef TCustomHotKey inherited;
  2177.     
  2178. __published:
  2179.     __property Anchors ;
  2180.     __property AutoSize ;
  2181.     __property BiDiMode ;
  2182.     __property Constraints ;
  2183.     __property Enabled ;
  2184.     __property Hint ;
  2185.     __property HotKey ;
  2186.     __property InvalidKeys ;
  2187.     __property Modifiers ;
  2188.     __property ParentBiDiMode ;
  2189.     __property ParentShowHint ;
  2190.     __property PopupMenu ;
  2191.     __property ShowHint ;
  2192.     __property TabOrder ;
  2193.     __property TabStop ;
  2194.     __property Visible ;
  2195.     __property OnEnter ;
  2196.     __property OnExit ;
  2197.     __property OnMouseDown ;
  2198.     __property OnMouseMove ;
  2199.     __property OnMouseUp ;
  2200. public:
  2201.     #pragma option push -w-inl
  2202.     /* TCustomHotKey.Create */ inline __fastcall virtual THotKey(Classes::TComponent* AOwner) : TCustomHotKey(
  2203.         AOwner) { }
  2204.     #pragma option pop
  2205.     
  2206. public:
  2207.     #pragma option push -w-inl
  2208.     /* TWinControl.CreateParented */ inline __fastcall THotKey(HWND ParentWindow) : TCustomHotKey(ParentWindow
  2209.         ) { }
  2210.     #pragma option pop
  2211.     #pragma option push -w-inl
  2212.     /* TWinControl.Destroy */ inline __fastcall virtual ~THotKey(void) { }
  2213.     #pragma option pop
  2214.     
  2215. };
  2216.  
  2217. #pragma pack(pop)
  2218.  
  2219. typedef int TWidth;
  2220.  
  2221. class DELPHICLASS TListColumn;
  2222. #pragma pack(push, 4)
  2223. class PASCALIMPLEMENTATION TListColumn : public Classes::TCollectionItem 
  2224. {
  2225.     typedef Classes::TCollectionItem inherited;
  2226.     
  2227. private:
  2228.     Classes::TAlignment FAlignment;
  2229.     bool FAutoSize;
  2230.     AnsiString FCaption;
  2231.     TWidth FMaxWidth;
  2232.     TWidth FMinWidth;
  2233.     int FImageIndex;
  2234.     TWidth FPrivateWidth;
  2235.     TWidth FWidth;
  2236.     void __fastcall DoChange(void);
  2237.     TWidth __fastcall GetWidth(void);
  2238.     bool __fastcall IsWidthStored(void);
  2239.     void __fastcall ReadData(Classes::TReader* Reader);
  2240.     void __fastcall SetAlignment(Classes::TAlignment Value);
  2241.     void __fastcall SetAutoSize(bool Value);
  2242.     void __fastcall SetCaption(const AnsiString Value);
  2243.     void __fastcall SetImageIndex(int Value);
  2244.     void __fastcall SetMaxWidth(TWidth Value);
  2245.     void __fastcall SetMinWidth(TWidth Value);
  2246.     void __fastcall SetWidth(TWidth Value);
  2247.     void __fastcall WriteData(Classes::TWriter* Writer);
  2248.     
  2249. protected:
  2250.     virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
  2251.     virtual AnsiString __fastcall GetDisplayName();
  2252.     
  2253. public:
  2254.     __fastcall virtual TListColumn(Classes::TCollection* Collection);
  2255.     __fastcall virtual ~TListColumn(void);
  2256.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  2257.     __property TWidth WidthType = {read=FWidth, nodefault};
  2258.     
  2259. __published:
  2260.     __property Classes::TAlignment Alignment = {read=FAlignment, write=SetAlignment, default=0};
  2261.     __property bool AutoSize = {read=FAutoSize, write=SetAutoSize, default=0};
  2262.     __property AnsiString Caption = {read=FCaption, write=SetCaption};
  2263.     __property int ImageIndex = {read=FImageIndex, write=SetImageIndex, default=-1};
  2264.     __property TWidth MaxWidth = {read=FMaxWidth, write=SetMaxWidth, default=0};
  2265.     __property TWidth MinWidth = {read=FMinWidth, write=SetMinWidth, default=0};
  2266.     __property TWidth Width = {read=GetWidth, write=SetWidth, stored=IsWidthStored, default=50};
  2267. };
  2268.  
  2269. #pragma pack(pop)
  2270.  
  2271. class DELPHICLASS TListColumns;
  2272. class DELPHICLASS TCustomListView;
  2273. #pragma option push -b-
  2274. enum TViewStyle { vsIcon, vsSmallIcon, vsList, vsReport };
  2275. #pragma option pop
  2276.  
  2277. class DELPHICLASS TListItems;
  2278. class DELPHICLASS TListItem;
  2279. #pragma pack(push, 4)
  2280. class PASCALIMPLEMENTATION TListItems : public Classes::TPersistent 
  2281. {
  2282.     typedef Classes::TPersistent inherited;
  2283.     
  2284. private:
  2285.     TCustomListView* FOwner;
  2286.     int FUpdateCount;
  2287.     bool FNoRedraw;
  2288.     void __fastcall ReadData(Classes::TStream* Stream);
  2289.     void __fastcall WriteData(Classes::TStream* Stream);
  2290.     
  2291. protected:
  2292.     virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
  2293.     tagLVITEMA __fastcall CreateItem(int Index, TListItem* ListItem);
  2294.     int __fastcall GetCount(void);
  2295.     HWND __fastcall GetHandle(void);
  2296.     TListItem* __fastcall GetItem(int Index);
  2297.     void __fastcall SetCount(int Value);
  2298.     void __fastcall SetItem(int Index, TListItem* Value);
  2299.     void __fastcall SetUpdateState(bool Updating);
  2300.     
  2301. public:
  2302.     __fastcall TListItems(TCustomListView* AOwner);
  2303.     __fastcall virtual ~TListItems(void);
  2304.     TListItem* __fastcall Add(void);
  2305.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  2306.     void __fastcall BeginUpdate(void);
  2307.     void __fastcall Clear(void);
  2308.     void __fastcall Delete(int Index);
  2309.     void __fastcall EndUpdate(void);
  2310.     int __fastcall IndexOf(TListItem* Value);
  2311.     TListItem* __fastcall Insert(int Index);
  2312.     __property int Count = {read=GetCount, write=SetCount, nodefault};
  2313.     __property HWND Handle = {read=GetHandle, nodefault};
  2314.     __property TListItem* Item[int Index] = {read=GetItem, write=SetItem/*, default*/};
  2315.     __property TCustomListView* Owner = {read=FOwner};
  2316. };
  2317.  
  2318. #pragma pack(pop)
  2319.  
  2320. class DELPHICLASS TIconOptions;
  2321. #pragma option push -b-
  2322. enum TIconArrangement { iaTop, iaLeft };
  2323. #pragma option pop
  2324.  
  2325. #pragma pack(push, 4)
  2326. class PASCALIMPLEMENTATION TIconOptions : public Classes::TPersistent 
  2327. {
  2328.     typedef Classes::TPersistent inherited;
  2329.     
  2330. private:
  2331.     TCustomListView* FListView;
  2332.     TIconArrangement FArrangement;
  2333.     bool FAutoArrange;
  2334.     bool FWrapText;
  2335.     void __fastcall SetArrangement(TIconArrangement Value);
  2336.     void __fastcall SetAutoArrange(bool Value);
  2337.     void __fastcall SetWrapText(bool Value);
  2338.     
  2339. public:
  2340.     __fastcall TIconOptions(TCustomListView* AOwner);
  2341.     
  2342. __published:
  2343.     __property TIconArrangement Arrangement = {read=FArrangement, write=SetArrangement, default=0};
  2344.     __property bool AutoArrange = {read=FAutoArrange, write=SetAutoArrange, default=0};
  2345.     __property bool WrapText = {read=FWrapText, write=SetWrapText, default=1};
  2346. public:
  2347.     #pragma option push -w-inl
  2348.     /* TPersistent.Destroy */ inline __fastcall virtual ~TIconOptions(void) { }
  2349.     #pragma option pop
  2350.     
  2351. };
  2352.  
  2353. #pragma pack(pop)
  2354.  
  2355. #pragma option push -b-
  2356. enum TListHotTrackStyle { htHandPoint, htUnderlineCold, htUnderlineHot };
  2357. #pragma option pop
  2358.  
  2359. typedef Set<TListHotTrackStyle, htHandPoint, htUnderlineHot>  TListHotTrackStyles;
  2360.  
  2361. #pragma option push -b-
  2362. enum TItemChange { ctText, ctImage, ctState };
  2363. #pragma option pop
  2364.  
  2365. typedef void __fastcall (__closure *TLVChangeEvent)(System::TObject* Sender, TListItem* Item, TItemChange 
  2366.     Change);
  2367.  
  2368. typedef void __fastcall (__closure *TLVChangingEvent)(System::TObject* Sender, TListItem* Item, TItemChange 
  2369.     Change, bool &AllowChange);
  2370.  
  2371. typedef void __fastcall (__closure *TLVColumnClickEvent)(System::TObject* Sender, TListColumn* Column
  2372.     );
  2373.  
  2374. typedef void __fastcall (__closure *TLVCustomDrawEvent)(TCustomListView* Sender, const Windows::TRect 
  2375.     &ARect, bool &DefaultDraw);
  2376.  
  2377. typedef void __fastcall (__closure *TLVCustomDrawItemEvent)(TCustomListView* Sender, TListItem* Item
  2378.     , TCustomDrawState State, bool &DefaultDraw);
  2379.  
  2380. typedef void __fastcall (__closure *TLVCustomDrawSubItemEvent)(TCustomListView* Sender, TListItem* Item
  2381.     , int SubItem, TCustomDrawState State, bool &DefaultDraw);
  2382.  
  2383. typedef void __fastcall (__closure *TLVOwnerDataEvent)(System::TObject* Sender, TListItem* Item);
  2384.  
  2385. #pragma option push -b-
  2386. enum TItemFind { ifData, ifPartialString, ifExactString, ifNearest };
  2387. #pragma option pop
  2388.  
  2389. #pragma option push -b-
  2390. enum TSearchDirection { sdLeft, sdRight, sdAbove, sdBelow, sdAll };
  2391. #pragma option pop
  2392.  
  2393. typedef void __fastcall (__closure *TLVOwnerDataFindEvent)(System::TObject* Sender, TItemFind Find, 
  2394.     const AnsiString FindString, const Windows::TPoint &FindPosition, void * FindData, int StartIndex, 
  2395.     TSearchDirection Direction, bool Wrap, int &Index);
  2396.  
  2397. typedef void __fastcall (__closure *TLVOwnerDataHintEvent)(System::TObject* Sender, int StartIndex, 
  2398.     int EndIndex);
  2399.  
  2400. #pragma option push -b-
  2401. enum TItemState { isNone, isCut, isDropHilited, isFocused, isSelected, isActivating };
  2402. #pragma option pop
  2403.  
  2404. typedef Set<TItemState, isNone, isActivating>  TItemStates;
  2405.  
  2406. typedef void __fastcall (__closure *TLVOwnerDataStateChangeEvent)(System::TObject* Sender, int StartIndex
  2407.     , int EndIndex, TItemStates OldState, TItemStates NewState);
  2408.  
  2409. typedef void __fastcall (__closure *TLVDeletedEvent)(System::TObject* Sender, TListItem* Item);
  2410.  
  2411. typedef void __fastcall (__closure *TLVDrawItemEvent)(TCustomListView* Sender, TListItem* Item, const 
  2412.     Windows::TRect &Rect, Stdctrls::TOwnerDrawState State);
  2413.  
  2414. typedef void __fastcall (__closure *TLVEditingEvent)(System::TObject* Sender, TListItem* Item, bool 
  2415.     &AllowEdit);
  2416.  
  2417. typedef void __fastcall (__closure *TLVEditedEvent)(System::TObject* Sender, TListItem* Item, AnsiString 
  2418.     &S);
  2419.  
  2420. typedef void __fastcall (__closure *TLVNotifyEvent)(System::TObject* Sender, TListItem* Item);
  2421.  
  2422. typedef void __fastcall (__closure *TLVCompareEvent)(System::TObject* Sender, TListItem* Item1, TListItem* 
  2423.     Item2, int Data, int &Compare);
  2424.  
  2425. typedef void __fastcall (__closure *TLVSelectItemEvent)(System::TObject* Sender, TListItem* Item, bool 
  2426.     Selected);
  2427.  
  2428. #pragma option push -b-
  2429. enum TItemRequests { irText, irImage, irParam, irState, irIndent };
  2430. #pragma option pop
  2431.  
  2432. typedef Set<TItemRequests, irText, irIndent>  TItemRequest;
  2433.  
  2434. #pragma option push -b-
  2435. enum TListArrangement { arAlignBottom, arAlignLeft, arAlignRight, arAlignTop, arDefault, arSnapToGrid 
  2436.     };
  2437. #pragma option pop
  2438.  
  2439. #pragma pack(push, 4)
  2440. class PASCALIMPLEMENTATION TCustomListView : public Controls::TWinControl 
  2441. {
  2442.     typedef Controls::TWinControl inherited;
  2443.     
  2444. private:
  2445.     Graphics::TCanvas* FCanvas;
  2446.     Forms::TFormBorderStyle FBorderStyle;
  2447.     TViewStyle FViewStyle;
  2448.     bool FReadOnly;
  2449.     Imglist::TCustomImageList* FLargeImages;
  2450.     Imglist::TCustomImageList* FSmallImages;
  2451.     Imglist::TCustomImageList* FStateImages;
  2452.     Controls::TDragImageList* FDragImage;
  2453.     bool FMultiSelect;
  2454.     TSortType FSortType;
  2455.     bool FColumnClick;
  2456.     bool FShowColumnHeaders;
  2457.     TListItems* FListItems;
  2458.     bool FClicked;
  2459.     bool FRClicked;
  2460.     TIconOptions* FIconOptions;
  2461.     bool FHideSelection;
  2462.     TListColumns* FListColumns;
  2463.     Classes::TMemoryStream* FMemStream;
  2464.     bool FOwnerData;
  2465.     bool FOwnerDraw;
  2466.     Classes::TMemoryStream* FColStream;
  2467.     Classes::TMemoryStream* FCheckStream;
  2468.     void *FEditInstance;
  2469.     void *FDefEditProc;
  2470.     HWND FEditHandle;
  2471.     void *FHeaderInstance;
  2472.     void *FDefHeaderProc;
  2473.     HWND FHeaderHandle;
  2474.     int FAllocBy;
  2475.     int FDragIndex;
  2476.     TListItem* FLastDropTarget;
  2477.     bool FCheckboxes;
  2478.     bool FFlatScrollBars;
  2479.     bool FFullDrag;
  2480.     bool FGridLines;
  2481.     bool FHotTrack;
  2482.     TListHotTrackStyles FHotTrackStyles;
  2483.     bool FRowSelect;
  2484.     Imglist::TChangeLink* FLargeChangeLink;
  2485.     Imglist::TChangeLink* FSmallChangeLink;
  2486.     Imglist::TChangeLink* FStateChangeLink;
  2487.     TSortType FSavedSort;
  2488.     bool FReading;
  2489.     bool FCanvasChanged;
  2490.     TListItem* FTempItem;
  2491.     TLVChangeEvent FOnChange;
  2492.     TLVChangingEvent FOnChanging;
  2493.     TLVColumnClickEvent FOnColumnClick;
  2494.     TLVCustomDrawEvent FOnCustomDraw;
  2495.     TLVCustomDrawItemEvent FOnCustomDrawItem;
  2496.     TLVCustomDrawSubItemEvent FOnCustomDrawSubItem;
  2497.     TLVOwnerDataEvent FOnData;
  2498.     TLVOwnerDataFindEvent FOnDataFind;
  2499.     TLVOwnerDataHintEvent FOnDataHint;
  2500.     TLVOwnerDataStateChangeEvent FOnDataStateChange;
  2501.     TLVDeletedEvent FOnDeletion;
  2502.     TLVDrawItemEvent FOnDrawItem;
  2503.     TLVEditingEvent FOnEditing;
  2504.     TLVEditedEvent FOnEdited;
  2505.     TLVNotifyEvent FOnGetImageIndex;
  2506.     TLVDeletedEvent FOnInsert;
  2507.     TLVCompareEvent FOnCompare;
  2508.     TLVSelectItemEvent FOnSelectItem;
  2509.     void __fastcall CanvasChanged(System::TObject* Sender);
  2510.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  2511.     HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
  2512.     HIDESBASE MESSAGE void __fastcall CMDrag(Controls::TCMDrag &Message);
  2513.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  2514.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  2515.     void __fastcall DoAutoSize(void);
  2516.     void __fastcall DoDragOver(Controls::TDragObject* Source, int X, int Y, bool CanDrop);
  2517.     void __fastcall EditWndProc(Messages::TMessage &Message);
  2518.     Windows::TRect __fastcall GetBoundingRect();
  2519.     TListColumn* __fastcall GetColumnFromIndex(int Index);
  2520.     TListItem* __fastcall GetDropTarget(void);
  2521.     TListItem* __fastcall GetFocused(void);
  2522.     void __fastcall GetImageIndex(TListItem* Item);
  2523.     TListItem* __fastcall GetItem(const tagLVITEMA &Value);
  2524.     int __fastcall GetSelCount(void);
  2525.     TListItem* __fastcall GetSelection(void);
  2526.     TListItem* __fastcall GetTopItem(void);
  2527.     Windows::TPoint __fastcall GetViewOrigin();
  2528.     int __fastcall GetVisibleRowCount(void);
  2529.     void __fastcall HeaderWndProc(Messages::TMessage &Message);
  2530.     void __fastcall ImageListChange(System::TObject* Sender);
  2531.     void __fastcall RestoreChecks(void);
  2532.     void __fastcall SaveChecks(void);
  2533.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  2534.     void __fastcall SetColumnClick(bool Value);
  2535.     void __fastcall SetColumnHeaders(bool Value);
  2536.     void __fastcall SetDropTarget(TListItem* Value);
  2537.     void __fastcall SetFocused(TListItem* Value);
  2538.     void __fastcall SetHideSelection(bool Value);
  2539.     void __fastcall SetIconOptions(TIconOptions* Value);
  2540.     void __fastcall SetImageList(unsigned Value, int Flags);
  2541.     void __fastcall SetLargeImages(Imglist::TCustomImageList* Value);
  2542.     void __fastcall SetAllocBy(int Value);
  2543.     void __fastcall SetItems(TListItems* Value);
  2544.     void __fastcall SetListColumns(TListColumns* Value);
  2545.     void __fastcall SetMultiSelect(bool Value);
  2546.     void __fastcall SetOwnerData(bool Value);
  2547.     void __fastcall SetOwnerDraw(bool Value);
  2548.     void __fastcall SetReadOnly(bool Value);
  2549.     void __fastcall SetSmallImages(Imglist::TCustomImageList* Value);
  2550.     void __fastcall SetSortType(TSortType Value);
  2551.     void __fastcall SetSelection(TListItem* Value);
  2552.     void __fastcall SetStateImages(Imglist::TCustomImageList* Value);
  2553.     void __fastcall SetTextBkColor(Graphics::TColor Value);
  2554.     void __fastcall SetTextColor(Graphics::TColor Value);
  2555.     void __fastcall SetViewStyle(TViewStyle Value);
  2556.     void __fastcall SetCheckboxes(bool Value);
  2557.     void __fastcall SetFlatScrollBars(bool Value);
  2558.     void __fastcall SetFullDrag(bool Value);
  2559.     void __fastcall SetGridLines(bool Value);
  2560.     void __fastcall SetHotTrack(bool Value);
  2561.     void __fastcall SetHotTrackStyles(TListHotTrackStyles Value);
  2562.     void __fastcall SetRowSelect(bool Value);
  2563.     void __fastcall ResetExStyles(void);
  2564.     bool __fastcall ValidHeaderHandle(void);
  2565.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  2566.     HIDESBASE MESSAGE void __fastcall WMNotify(Messages::TWMNotify &Message);
  2567.     HIDESBASE MESSAGE void __fastcall WMParentNotify(Messages::TWMParentNotify &Message);
  2568.     HIDESBASE MESSAGE void __fastcall WMRButtonDown(Messages::TWMMouse &Message);
  2569.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
  2570.     MESSAGE void __fastcall CNDrawItem(Messages::TWMDrawItem &Message);
  2571.     
  2572. protected:
  2573.     DYNAMIC bool __fastcall CanChange(TListItem* Item, int Change);
  2574.     DYNAMIC bool __fastcall CanEdit(TListItem* Item);
  2575.     DYNAMIC void __fastcall Change(TListItem* Item, int Change);
  2576.     DYNAMIC void __fastcall ColClick(TListColumn* Column);
  2577.     bool __fastcall ColumnsShowing(void);
  2578.     virtual TListItem* __fastcall CreateListItem(void);
  2579.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  2580.     virtual void __fastcall CreateWnd(void);
  2581.     virtual bool __fastcall CustomDraw(const Windows::TRect &ARect, TCustomDrawStage Stage);
  2582.     virtual bool __fastcall CustomDrawItem(TListItem* Item, TCustomDrawState State, TCustomDrawStage Stage
  2583.         );
  2584.     virtual bool __fastcall CustomDrawSubItem(TListItem* Item, int SubItem, TCustomDrawState State, TCustomDrawStage 
  2585.         Stage);
  2586.     DYNAMIC void __fastcall Delete(TListItem* Item);
  2587.     virtual void __fastcall DestroyWnd(void);
  2588.     DYNAMIC void __fastcall DoEndDrag(System::TObject* Target, int X, int Y);
  2589.     DYNAMIC void __fastcall DoStartDrag(Controls::TDragObject* &DragObject);
  2590.     virtual void __fastcall DrawItem(TListItem* Item, const Windows::TRect &Rect, Stdctrls::TOwnerDrawState 
  2591.         State);
  2592.     DYNAMIC void __fastcall Edit(const tagLVITEMA &Item);
  2593.     virtual bool __fastcall OwnerDataFetch(TListItem* Item, TItemRequest Request);
  2594.     virtual int __fastcall OwnerDataFind(TItemFind Find, const AnsiString FindString, const Windows::TPoint 
  2595.         &FindPosition, void * FindData, int StartIndex, TSearchDirection Direction, bool Wrap);
  2596.     virtual bool __fastcall OwnerDataHint(int StartIndex, int EndIndex);
  2597.     virtual bool __fastcall OwnerDataStateChange(int StartIndex, int EndIndex, TItemStates OldState, TItemStates 
  2598.         NewState);
  2599.     virtual Controls::TDragImageList* __fastcall GetDragImages(void);
  2600.     int __fastcall GetItemIndex(TListItem* Value);
  2601.     DYNAMIC void __fastcall InsertItem(TListItem* Item);
  2602.     bool __fastcall IsCustomDrawn(TCustomDrawTarget Target, TCustomDrawStage Stage);
  2603.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  2604.         );
  2605.     void __fastcall UpdateColumn(int Index);
  2606.     void __fastcall UpdateColumns(void);
  2607.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  2608.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=1};
  2609.     __property TListColumns* Columns = {read=FListColumns, write=SetListColumns};
  2610.     __property bool ColumnClick = {read=FColumnClick, write=SetColumnClick, default=1};
  2611.     __property bool ReadOnly = {read=FReadOnly, write=SetReadOnly, nodefault};
  2612.     __property bool HideSelection = {read=FHideSelection, write=SetHideSelection, default=1};
  2613.     __property TIconOptions* IconOptions = {read=FIconOptions, write=SetIconOptions};
  2614.     __property TListItems* Items = {read=FListItems, write=SetItems};
  2615.     __property int AllocBy = {read=FAllocBy, write=SetAllocBy, default=0};
  2616.     __property Imglist::TCustomImageList* LargeImages = {read=FLargeImages, write=SetLargeImages};
  2617.     __property bool MultiSelect = {read=FMultiSelect, write=SetMultiSelect, default=0};
  2618.     __property bool OwnerData = {read=FOwnerData, write=SetOwnerData, default=0};
  2619.     __property bool OwnerDraw = {read=FOwnerDraw, write=SetOwnerDraw, default=0};
  2620.     __property TLVChangeEvent OnChange = {read=FOnChange, write=FOnChange};
  2621.     __property TLVChangingEvent OnChanging = {read=FOnChanging, write=FOnChanging};
  2622.     __property TLVColumnClickEvent OnColumnClick = {read=FOnColumnClick, write=FOnColumnClick};
  2623.     __property TLVCompareEvent OnCompare = {read=FOnCompare, write=FOnCompare};
  2624.     __property TLVCustomDrawEvent OnCustomDraw = {read=FOnCustomDraw, write=FOnCustomDraw};
  2625.     __property TLVCustomDrawItemEvent OnCustomDrawItem = {read=FOnCustomDrawItem, write=FOnCustomDrawItem
  2626.         };
  2627.     __property TLVCustomDrawSubItemEvent OnCustomDrawSubItem = {read=FOnCustomDrawSubItem, write=FOnCustomDrawSubItem
  2628.         };
  2629.     __property TLVOwnerDataEvent OnData = {read=FOnData, write=FOnData};
  2630.     __property TLVOwnerDataFindEvent OnDataFind = {read=FOnDataFind, write=FOnDataFind};
  2631.     __property TLVOwnerDataHintEvent OnDataHint = {read=FOnDataHint, write=FOnDataHint};
  2632.     __property TLVOwnerDataStateChangeEvent OnDataStateChange = {read=FOnDataStateChange, write=FOnDataStateChange
  2633.         };
  2634.     __property TLVDeletedEvent OnDeletion = {read=FOnDeletion, write=FOnDeletion};
  2635.     __property TLVDrawItemEvent OnDrawItem = {read=FOnDrawItem, write=FOnDrawItem};
  2636.     __property TLVEditedEvent OnEdited = {read=FOnEdited, write=FOnEdited};
  2637.     __property TLVEditingEvent OnEditing = {read=FOnEditing, write=FOnEditing};
  2638.     __property TLVNotifyEvent OnGetImageIndex = {read=FOnGetImageIndex, write=FOnGetImageIndex};
  2639.     __property TLVDeletedEvent OnInsert = {read=FOnInsert, write=FOnInsert};
  2640.     __property TLVSelectItemEvent OnSelectItem = {read=FOnSelectItem, write=FOnSelectItem};
  2641.     __property bool ShowColumnHeaders = {read=FShowColumnHeaders, write=SetColumnHeaders, default=1};
  2642.     __property Imglist::TCustomImageList* SmallImages = {read=FSmallImages, write=SetSmallImages};
  2643.     __property TSortType SortType = {read=FSortType, write=SetSortType, default=0};
  2644.     __property Imglist::TCustomImageList* StateImages = {read=FStateImages, write=SetStateImages};
  2645.     __property TViewStyle ViewStyle = {read=FViewStyle, write=SetViewStyle, default=0};
  2646.     
  2647. public:
  2648.     __fastcall virtual TCustomListView(Classes::TComponent* AOwner);
  2649.     __fastcall virtual ~TCustomListView(void);
  2650.     bool __fastcall AlphaSort(void);
  2651.     void __fastcall Arrange(TListArrangement Code);
  2652.     TListItem* __fastcall FindCaption(int StartIndex, AnsiString Value, bool Partial, bool Inclusive, bool 
  2653.         Wrap);
  2654.     TListItem* __fastcall FindData(int StartIndex, void * Value, bool Inclusive, bool Wrap);
  2655.     THitTests __fastcall GetHitTestInfoAt(int X, int Y);
  2656.     TListItem* __fastcall GetItemAt(int X, int Y);
  2657.     TListItem* __fastcall GetNearestItem(const Windows::TPoint &Point, TSearchDirection Direction);
  2658.     TListItem* __fastcall GetNextItem(TListItem* StartItem, TSearchDirection Direction, TItemStates States
  2659.         );
  2660.     AnsiString __fastcall GetSearchString();
  2661.     bool __fastcall IsEditing(void);
  2662.     void __fastcall Scroll(int DX, int DY);
  2663.     __property Graphics::TCanvas* Canvas = {read=FCanvas};
  2664.     __property bool Checkboxes = {read=FCheckboxes, write=SetCheckboxes, default=0};
  2665.     __property TListColumn* Column[int Index] = {read=GetColumnFromIndex};
  2666.     __property TListItem* DropTarget = {read=GetDropTarget, write=SetDropTarget};
  2667.     __property bool FlatScrollBars = {read=FFlatScrollBars, write=SetFlatScrollBars, default=0};
  2668.     __property bool FullDrag = {read=FFullDrag, write=SetFullDrag, default=0};
  2669.     __property bool GridLines = {read=FGridLines, write=SetGridLines, default=0};
  2670.     __property bool HotTrack = {read=FHotTrack, write=SetHotTrack, default=0};
  2671.     __property TListHotTrackStyles HotTrackStyles = {read=FHotTrackStyles, write=SetHotTrackStyles, nodefault
  2672.         };
  2673.     __property TListItem* ItemFocused = {read=GetFocused, write=SetFocused};
  2674.     __property bool RowSelect = {read=FRowSelect, write=SetRowSelect, default=0};
  2675.     __property int SelCount = {read=GetSelCount, nodefault};
  2676.     __property TListItem* Selected = {read=GetSelection, write=SetSelection};
  2677.     bool __fastcall CustomSort(PFNLVCOMPARE SortProc, int lParam);
  2678.     int __fastcall StringWidth(AnsiString S);
  2679.     void __fastcall UpdateItems(int FirstIndex, int LastIndex);
  2680.     __property TListItem* TopItem = {read=GetTopItem};
  2681.     __property Windows::TPoint ViewOrigin = {read=GetViewOrigin};
  2682.     __property int VisibleRowCount = {read=GetVisibleRowCount, nodefault};
  2683.     __property Windows::TRect BoundingRect = {read=GetBoundingRect};
  2684. public:
  2685.     #pragma option push -w-inl
  2686.     /* TWinControl.CreateParented */ inline __fastcall TCustomListView(HWND ParentWindow) : Controls::TWinControl(
  2687.         ParentWindow) { }
  2688.     #pragma option pop
  2689.     
  2690. };
  2691.  
  2692. #pragma pack(pop)
  2693.  
  2694. #pragma pack(push, 4)
  2695. class PASCALIMPLEMENTATION TListColumns : public Classes::TCollection 
  2696. {
  2697.     typedef Classes::TCollection inherited;
  2698.     
  2699. private:
  2700.     TCustomListView* FOwner;
  2701.     HIDESBASE TListColumn* __fastcall GetItem(int Index);
  2702.     HIDESBASE void __fastcall SetItem(int Index, TListColumn* Value);
  2703.     
  2704. protected:
  2705.     DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
  2706.     virtual void __fastcall Update(Classes::TCollectionItem* Item);
  2707.     
  2708. public:
  2709.     __fastcall TListColumns(TCustomListView* AOwner);
  2710.     HIDESBASE TListColumn* __fastcall Add(void);
  2711.     __property TCustomListView* Owner = {read=FOwner};
  2712.     __property TListColumn* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
  2713. public:
  2714.     #pragma option push -w-inl
  2715.     /* TCollection.Destroy */ inline __fastcall virtual ~TListColumns(void) { }
  2716.     #pragma option pop
  2717.     
  2718. };
  2719.  
  2720. #pragma pack(pop)
  2721.  
  2722. #pragma option push -b-
  2723. enum TDisplayCode { drBounds, drIcon, drLabel, drSelectBounds };
  2724. #pragma option pop
  2725.  
  2726. #pragma pack(push, 4)
  2727. class PASCALIMPLEMENTATION TListItem : public Classes::TPersistent 
  2728. {
  2729.     typedef Classes::TPersistent inherited;
  2730.     
  2731. private:
  2732.     TListItems* FOwner;
  2733.     Classes::TStrings* FSubItems;
  2734.     void *FData;
  2735.     int FImageIndex;
  2736.     int FIndent;
  2737.     int FIndex;
  2738.     int FOverlayIndex;
  2739.     int FStateIndex;
  2740.     AnsiString FCaption;
  2741.     bool FDeleting;
  2742.     bool FProcessedDeleting;
  2743.     bool FChecked;
  2744.     bool __fastcall GetChecked(void);
  2745.     HWND __fastcall GetHandle(void);
  2746.     int __fastcall GetIndex(void);
  2747.     TCustomListView* __fastcall GetListView(void);
  2748.     int __fastcall GetLeft(void);
  2749.     bool __fastcall GetState(int Index);
  2750.     int __fastcall GetTop(void);
  2751.     bool __fastcall IsEqual(TListItem* Item);
  2752.     void __fastcall SetChecked(bool Value);
  2753.     void __fastcall SetCaption(const AnsiString Value);
  2754.     void __fastcall SetData(void * Value);
  2755.     void __fastcall SetImage(int Index, int Value);
  2756.     void __fastcall SetIndent(int Value);
  2757.     void __fastcall SetLeft(int Value);
  2758.     void __fastcall SetState(int Index, bool State);
  2759.     void __fastcall SetSubItems(Classes::TStrings* Value);
  2760.     void __fastcall SetTop(int Value);
  2761.     
  2762. public:
  2763.     __fastcall TListItem(TListItems* AOwner);
  2764.     __fastcall virtual ~TListItem(void);
  2765.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  2766.     void __fastcall CancelEdit(void);
  2767.     void __fastcall Delete(void);
  2768.     Windows::TRect __fastcall DisplayRect(TDisplayCode Code);
  2769.     bool __fastcall EditCaption(void);
  2770.     Windows::TPoint __fastcall GetPosition();
  2771.     void __fastcall MakeVisible(bool PartialOK);
  2772.     void __fastcall Update(void);
  2773.     void __fastcall SetPosition(const Windows::TPoint &Value);
  2774.     __property AnsiString Caption = {read=FCaption, write=SetCaption};
  2775.     __property bool Checked = {read=GetChecked, write=SetChecked, nodefault};
  2776.     __property bool Cut = {read=GetState, write=SetState, index=0, nodefault};
  2777.     __property void * Data = {read=FData, write=SetData};
  2778.     __property bool DropTarget = {read=GetState, write=SetState, index=1, nodefault};
  2779.     __property bool Focused = {read=GetState, write=SetState, index=2, nodefault};
  2780.     __property HWND Handle = {read=GetHandle, nodefault};
  2781.     __property int ImageIndex = {read=FImageIndex, write=SetImage, index=0, nodefault};
  2782.     __property int Indent = {read=FIndent, write=SetIndent, default=0};
  2783.     __property int Index = {read=GetIndex, nodefault};
  2784.     __property int Left = {read=GetLeft, write=SetLeft, nodefault};
  2785.     __property TCustomListView* ListView = {read=GetListView};
  2786.     __property TListItems* Owner = {read=FOwner};
  2787.     __property int OverlayIndex = {read=FOverlayIndex, write=SetImage, index=1, nodefault};
  2788.     __property Windows::TPoint Position = {read=GetPosition, write=SetPosition};
  2789.     __property bool Selected = {read=GetState, write=SetState, index=3, nodefault};
  2790.     __property int StateIndex = {read=FStateIndex, write=SetImage, index=2, nodefault};
  2791.     __property Classes::TStrings* SubItems = {read=FSubItems, write=SetSubItems};
  2792.     __property int Top = {read=GetTop, write=SetTop, nodefault};
  2793. };
  2794.  
  2795. #pragma pack(pop)
  2796.  
  2797. class DELPHICLASS TListView;
  2798. #pragma pack(push, 4)
  2799. class PASCALIMPLEMENTATION TListView : public TCustomListView 
  2800. {
  2801.     typedef TCustomListView inherited;
  2802.     
  2803. __published:
  2804.     __property Align ;
  2805.     __property AllocBy ;
  2806.     __property Anchors ;
  2807.     __property BiDiMode ;
  2808.     __property BorderStyle ;
  2809.     __property BorderWidth ;
  2810.     __property Checkboxes ;
  2811.     __property Color ;
  2812.     __property Columns ;
  2813.     __property ColumnClick ;
  2814.     __property Constraints ;
  2815.     __property Ctl3D ;
  2816.     __property DragCursor ;
  2817.     __property DragKind ;
  2818.     __property DragMode ;
  2819.     __property Enabled ;
  2820.     __property Font ;
  2821.     __property FlatScrollBars ;
  2822.     __property FullDrag ;
  2823.     __property GridLines ;
  2824.     __property HideSelection ;
  2825.     __property HotTrack ;
  2826.     __property HotTrackStyles ;
  2827.     __property IconOptions ;
  2828.     __property Items ;
  2829.     __property LargeImages ;
  2830.     __property MultiSelect ;
  2831.     __property OwnerData ;
  2832.     __property OwnerDraw ;
  2833.     __property ReadOnly ;
  2834.     __property RowSelect ;
  2835.     __property ParentBiDiMode ;
  2836.     __property ParentColor ;
  2837.     __property ParentFont ;
  2838.     __property ParentShowHint ;
  2839.     __property PopupMenu ;
  2840.     __property ShowColumnHeaders ;
  2841.     __property ShowHint ;
  2842.     __property SmallImages ;
  2843.     __property SortType ;
  2844.     __property StateImages ;
  2845.     __property TabOrder ;
  2846.     __property TabStop ;
  2847.     __property ViewStyle ;
  2848.     __property Visible ;
  2849.     __property OnChange ;
  2850.     __property OnChanging ;
  2851.     __property OnClick ;
  2852.     __property OnColumnClick ;
  2853.     __property OnCompare ;
  2854.     __property OnCustomDraw ;
  2855.     __property OnCustomDrawItem ;
  2856.     __property OnCustomDrawSubItem ;
  2857.     __property OnData ;
  2858.     __property OnDataFind ;
  2859.     __property OnDataHint ;
  2860.     __property OnDataStateChange ;
  2861.     __property OnDblClick ;
  2862.     __property OnDeletion ;
  2863.     __property OnDrawItem ;
  2864.     __property OnEdited ;
  2865.     __property OnEditing ;
  2866.     __property OnEndDock ;
  2867.     __property OnEndDrag ;
  2868.     __property OnEnter ;
  2869.     __property OnExit ;
  2870.     __property OnGetImageIndex ;
  2871.     __property OnDragDrop ;
  2872.     __property OnDragOver ;
  2873.     __property OnInsert ;
  2874.     __property OnKeyDown ;
  2875.     __property OnKeyPress ;
  2876.     __property OnKeyUp ;
  2877.     __property OnMouseDown ;
  2878.     __property OnMouseMove ;
  2879.     __property OnMouseUp ;
  2880.     __property OnResize ;
  2881.     __property OnSelectItem ;
  2882.     __property OnStartDock ;
  2883.     __property OnStartDrag ;
  2884. public:
  2885.     #pragma option push -w-inl
  2886.     /* TCustomListView.Create */ inline __fastcall virtual TListView(Classes::TComponent* AOwner) : TCustomListView(
  2887.         AOwner) { }
  2888.     #pragma option pop
  2889.     #pragma option push -w-inl
  2890.     /* TCustomListView.Destroy */ inline __fastcall virtual ~TListView(void) { }
  2891.     #pragma option pop
  2892.     
  2893. public:
  2894.     #pragma option push -w-inl
  2895.     /* TWinControl.CreateParented */ inline __fastcall TListView(HWND ParentWindow) : TCustomListView(ParentWindow
  2896.         ) { }
  2897.     #pragma option pop
  2898.     
  2899. };
  2900.  
  2901. #pragma pack(pop)
  2902.  
  2903. #pragma option push -b-
  2904. enum TCommonAVI { aviNone, aviFindFolder, aviFindFile, aviFindComputer, aviCopyFiles, aviCopyFile, aviRecycleFile, 
  2905.     aviEmptyRecycle, aviDeleteFile };
  2906. #pragma option pop
  2907.  
  2908. class DELPHICLASS TAnimate;
  2909. #pragma pack(push, 4)
  2910. class PASCALIMPLEMENTATION TAnimate : public Controls::TWinControl 
  2911. {
  2912.     typedef Controls::TWinControl inherited;
  2913.     
  2914. private:
  2915.     bool FActive;
  2916.     AnsiString FFileName;
  2917.     bool FCenter;
  2918.     TCommonAVI FCommonAVI;
  2919.     int FFrameCount;
  2920.     int FFrameHeight;
  2921.     int FFrameWidth;
  2922.     bool FOpen;
  2923.     bool FRecreateNeeded;
  2924.     int FRepetitions;
  2925.     unsigned FResHandle;
  2926.     int FResId;
  2927.     AnsiString FResName;
  2928.     bool FStreamedActive;
  2929.     bool FTimers;
  2930.     bool FTransparent;
  2931.     short FStartFrame;
  2932.     short FStopFrame;
  2933.     int FStopCount;
  2934.     Classes::TNotifyEvent FOnOpen;
  2935.     Classes::TNotifyEvent FOnClose;
  2936.     Classes::TNotifyEvent FOnStart;
  2937.     Classes::TNotifyEvent FOnStop;
  2938.     void __fastcall CheckOpen(void);
  2939.     bool __fastcall InternalClose(void);
  2940.     bool __fastcall InternalOpen(void);
  2941.     void __fastcall GetAnimateParams(void *Params);
  2942.     unsigned __fastcall GetActualResHandle(void);
  2943.     int __fastcall GetActualResId(void);
  2944.     void __fastcall GetFrameInfo(void);
  2945.     void __fastcall SetAnimateParams(const void *Params);
  2946.     void __fastcall SetActive(bool Value);
  2947.     void __fastcall SetFileName(AnsiString Value);
  2948.     void __fastcall SetCenter(bool Value);
  2949.     void __fastcall SetCommonAVI(TCommonAVI Value);
  2950.     void __fastcall SetOpen(bool Value);
  2951.     void __fastcall SetRepetitions(int Value);
  2952.     void __fastcall SetResHandle(unsigned Value);
  2953.     void __fastcall SetResId(int Value);
  2954.     void __fastcall SetResName(AnsiString Value);
  2955.     void __fastcall SetTimers(bool Value);
  2956.     void __fastcall SetTransparent(bool Value);
  2957.     void __fastcall SetStartFrame(short Value);
  2958.     void __fastcall SetStopFrame(short Value);
  2959.     void __fastcall UpdateActiveState(void);
  2960.     HIDESBASE MESSAGE void __fastcall WMNCCalcSize(Messages::TWMNCCalcSize &Message);
  2961.     HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TWMNCHitTest &Message);
  2962.     HIDESBASE MESSAGE void __fastcall WMNCPaint(Messages::TMessage &Message);
  2963.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  2964.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
  2965.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  2966.     MESSAGE void __fastcall CNCommand(Messages::TWMCommand &Message);
  2967.     
  2968. protected:
  2969.     virtual bool __fastcall CanAutoSize(int &NewWidth, int &NewHeight);
  2970.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  2971.     virtual void __fastcall CreateWnd(void);
  2972.     virtual void __fastcall DestroyWnd(void);
  2973.     virtual void __fastcall DoOpen(void);
  2974.     virtual void __fastcall DoClose(void);
  2975.     virtual void __fastcall DoStart(void);
  2976.     virtual void __fastcall DoStop(void);
  2977.     virtual void __fastcall Loaded(void);
  2978.     
  2979. public:
  2980.     __fastcall virtual TAnimate(Classes::TComponent* AOwner);
  2981.     __property int FrameCount = {read=FFrameCount, nodefault};
  2982.     __property int FrameHeight = {read=FFrameHeight, nodefault};
  2983.     __property int FrameWidth = {read=FFrameWidth, nodefault};
  2984.     __property bool Open = {read=FOpen, write=SetOpen, nodefault};
  2985.     void __fastcall Play(Word FromFrame, Word ToFrame, int Count);
  2986.     void __fastcall Reset(void);
  2987.     void __fastcall Seek(short Frame);
  2988.     void __fastcall Stop(void);
  2989.     __property unsigned ResHandle = {read=FResHandle, write=SetResHandle, nodefault};
  2990.     __property int ResId = {read=FResId, write=SetResId, nodefault};
  2991.     __property AnsiString ResName = {read=FResName, write=SetResName};
  2992.     
  2993. __published:
  2994.     __property Align ;
  2995.     __property bool Active = {read=FActive, write=SetActive, nodefault};
  2996.     __property Anchors ;
  2997.     __property AutoSize ;
  2998.     __property BorderWidth ;
  2999.     __property bool Center = {read=FCenter, write=SetCenter, default=1};
  3000.     __property Color ;
  3001.     __property TCommonAVI CommonAVI = {read=FCommonAVI, write=SetCommonAVI, default=0};
  3002.     __property Constraints ;
  3003.     __property AnsiString FileName = {read=FFileName, write=SetFileName};
  3004.     __property ParentColor ;
  3005.     __property ParentShowHint ;
  3006.     __property int Repetitions = {read=FRepetitions, write=SetRepetitions, default=0};
  3007.     __property ShowHint ;
  3008.     __property short StartFrame = {read=FStartFrame, write=SetStartFrame, default=1};
  3009.     __property short StopFrame = {read=FStopFrame, write=SetStopFrame, default=0};
  3010.     __property bool Timers = {read=FTimers, write=SetTimers, default=0};
  3011.     __property bool Transparent = {read=FTransparent, write=SetTransparent, default=1};
  3012.     __property Visible ;
  3013.     __property Classes::TNotifyEvent OnOpen = {read=FOnOpen, write=FOnOpen};
  3014.     __property Classes::TNotifyEvent OnClose = {read=FOnClose, write=FOnClose};
  3015.     __property Classes::TNotifyEvent OnStart = {read=FOnStart, write=FOnStart};
  3016.     __property Classes::TNotifyEvent OnStop = {read=FOnStop, write=FOnStop};
  3017. public:
  3018.     #pragma option push -w-inl
  3019.     /* TWinControl.CreateParented */ inline __fastcall TAnimate(HWND ParentWindow) : Controls::TWinControl(
  3020.         ParentWindow) { }
  3021.     #pragma option pop
  3022.     #pragma option push -w-inl
  3023.     /* TWinControl.Destroy */ inline __fastcall virtual ~TAnimate(void) { }
  3024.     #pragma option pop
  3025.     
  3026. };
  3027.  
  3028. #pragma pack(pop)
  3029.  
  3030. #pragma option push -b-
  3031. enum TToolButtonStyle { tbsButton, tbsCheck, tbsDropDown, tbsSeparator, tbsDivider };
  3032. #pragma option pop
  3033.  
  3034. #pragma option push -b-
  3035. enum TToolButtonState { tbsChecked, tbsPressed, tbsEnabled, tbsHidden, tbsIndeterminate, tbsWrap, tbsEllipses, 
  3036.     tbsMarked };
  3037. #pragma option pop
  3038.  
  3039. class DELPHICLASS TToolButtonActionLink;
  3040. class DELPHICLASS TToolButton;
  3041. class DELPHICLASS TToolBar;
  3042. #pragma pack(push, 4)
  3043. class PASCALIMPLEMENTATION TToolBar : public Toolwin::TToolWindow 
  3044. {
  3045.     typedef Toolwin::TToolWindow inherited;
  3046.     
  3047. private:
  3048.     int FButtonWidth;
  3049.     int FButtonHeight;
  3050.     Classes::TList* FButtons;
  3051.     AnsiString FCaption;
  3052.     bool FShowCaptions;
  3053.     bool FList;
  3054.     bool FFlat;
  3055.     bool FTransparent;
  3056.     bool FWrapable;
  3057.     Imglist::TCustomImageList* FImages;
  3058.     Imglist::TChangeLink* FImageChangeLink;
  3059.     Imglist::TCustomImageList* FDisabledImages;
  3060.     Imglist::TChangeLink* FDisabledImageChangeLink;
  3061.     Imglist::TCustomImageList* FHotImages;
  3062.     Imglist::TChangeLink* FHotImageChangeLink;
  3063.     int FIndent;
  3064.     bool FNewStyle;
  3065.     Graphics::TBitmap* FNullBitmap;
  3066.     HBITMAP FOldHandle;
  3067.     int FUpdateCount;
  3068.     int FHeightMargin;
  3069.     bool FCaptureChangeCancels;
  3070.     bool FInMenuLoop;
  3071.     Menus::TPopupMenu* FTempMenu;
  3072.     Menus::TMenuItem* FButtonMenu;
  3073.     TToolButton* FMenuButton;
  3074.     bool FMenuResult;
  3075.     int __fastcall ButtonIndex(int OldIndex, int ALeft, int ATop);
  3076.     void __fastcall LoadImages(Imglist::TCustomImageList* AImages);
  3077.     TToolButton* __fastcall GetButton(int Index);
  3078.     int __fastcall GetButtonCount(void);
  3079.     void __fastcall GetButtonSize(int &AWidth, int &AHeight);
  3080.     int __fastcall GetRowCount(void);
  3081.     void __fastcall SetList(bool Value);
  3082.     void __fastcall SetShowCaptions(bool Value);
  3083.     void __fastcall SetFlat(bool Value);
  3084.     void __fastcall SetTransparent(bool Value);
  3085.     void __fastcall SetWrapable(bool Value);
  3086.     void __fastcall InsertButton(Controls::TControl* Control);
  3087.     void __fastcall RemoveButton(Controls::TControl* Control);
  3088.     bool __fastcall RefreshButton(int Index);
  3089.     void __fastcall UpdateButton(int Index);
  3090.     void __fastcall UpdateButtons(void);
  3091.     void __fastcall UpdateButtonState(int Index);
  3092.     void __fastcall UpdateButtonStates(void);
  3093.     bool __fastcall UpdateItem(int Message, int FromIndex, int ToIndex);
  3094.     bool __fastcall UpdateItem2(int Message, int FromIndex, int ToIndex);
  3095.     void __fastcall ClearTempMenu(void);
  3096.     void __fastcall CreateButtons(int NewWidth, int NewHeight);
  3097.     void __fastcall SetButtonWidth(int Value);
  3098.     void __fastcall SetButtonHeight(int Value);
  3099.     void __fastcall UpdateImages(void);
  3100.     void __fastcall ImageListChange(System::TObject* Sender);
  3101.     void __fastcall SetImageList(unsigned Value);
  3102.     void __fastcall SetImages(Imglist::TCustomImageList* Value);
  3103.     void __fastcall DisabledImageListChange(System::TObject* Sender);
  3104.     void __fastcall SetDisabledImageList(unsigned Value);
  3105.     void __fastcall SetDisabledImages(Imglist::TCustomImageList* Value);
  3106.     void __fastcall HotImageListChange(System::TObject* Sender);
  3107.     void __fastcall SetHotImageList(unsigned Value);
  3108.     void __fastcall SetHotImages(Imglist::TCustomImageList* Value);
  3109.     void __fastcall SetIndent(int Value);
  3110.     void __fastcall AdjustControl(Controls::TControl* Control);
  3111.     void __fastcall RecreateButtons(void);
  3112.     void __fastcall BeginUpdate(void);
  3113.     void __fastcall EndUpdate(void);
  3114.     void __fastcall ResizeButtons(void);
  3115.     int __fastcall InternalButtonCount(void);
  3116.     int __fastcall ReorderButton(int OldIndex, int ALeft, int ATop);
  3117.     MESSAGE void __fastcall WMCaptureChanged(Messages::TMessage &Message);
  3118.     HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
  3119.     MESSAGE void __fastcall WMGetDlgCode(Messages::TMessage &Message);
  3120.     MESSAGE void __fastcall WMGetText(Messages::TWMGetText &Message);
  3121.     MESSAGE void __fastcall WMGetTextLength(Messages::TWMNoParams &Message);
  3122.     HIDESBASE MESSAGE void __fastcall WMKeyDown(Messages::TWMKey &Message);
  3123.     MESSAGE void __fastcall WMNotifyFormat(Messages::TMessage &Message);
  3124.     MESSAGE void __fastcall WMSetText(Messages::TWMSetText &Message);
  3125.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  3126.     MESSAGE void __fastcall WMSysChar(Messages::TWMKey &Message);
  3127.     HIDESBASE MESSAGE void __fastcall WMSysCommand(Messages::TWMSysCommand &Message);
  3128.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
  3129.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanging(Messages::TWMWindowPosMsg &Message);
  3130.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  3131.     MESSAGE void __fastcall CMControlChange(Controls::TCMControlChange &Message);
  3132.     HIDESBASE MESSAGE void __fastcall CMDialogChar(Messages::TWMKey &Message);
  3133.     HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
  3134.     HIDESBASE MESSAGE void __fastcall CMParentColorChanged(Messages::TMessage &Message);
  3135.     HIDESBASE MESSAGE void __fastcall CNChar(Messages::TWMKey &Message);
  3136.     HIDESBASE MESSAGE void __fastcall CNSysKeyDown(Messages::TWMKey &Message);
  3137.     HIDESBASE MESSAGE void __fastcall CMSysFontChanged(Messages::TMessage &Message);
  3138.     MESSAGE void __fastcall CNDropDownClosed(Messages::TMessage &Message);
  3139.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  3140.     
  3141. protected:
  3142.     virtual void __fastcall AlignControls(Controls::TControl* AControl, Windows::TRect &Rect);
  3143.     virtual bool __fastcall CanAutoSize(int &NewWidth, int &NewHeight);
  3144.     DYNAMIC void __fastcall CancelMenu(void);
  3145.     DYNAMIC void __fastcall ChangeScale(int M, int D);
  3146.     DYNAMIC bool __fastcall CheckMenuDropdown(TToolButton* Button);
  3147.     DYNAMIC void __fastcall ClickButton(TToolButton* Button);
  3148.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  3149.     virtual void __fastcall CreateWnd(void);
  3150.     TToolButton* __fastcall FindButtonFromAccel(Word Accel);
  3151.     DYNAMIC void __fastcall GetChildren(Classes::TGetChildProc Proc, Classes::TComponent* Root);
  3152.     DYNAMIC void __fastcall InitMenu(TToolButton* Button);
  3153.     virtual void __fastcall Loaded(void);
  3154.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  3155.         );
  3156.     void __fastcall RepositionButton(int Index);
  3157.     void __fastcall RepositionButtons(int Index);
  3158.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  3159.     bool __fastcall WrapButtons(int &NewWidth, int &NewHeight);
  3160.     
  3161. public:
  3162.     __fastcall virtual TToolBar(Classes::TComponent* AOwner);
  3163.     __fastcall virtual ~TToolBar(void);
  3164.     DYNAMIC void __fastcall FlipChildren(bool AllLevels);
  3165.     DYNAMIC bool __fastcall TrackMenu(TToolButton* Button);
  3166.     __property int ButtonCount = {read=GetButtonCount, nodefault};
  3167.     __property TToolButton* Buttons[int Index] = {read=GetButton};
  3168.     __property int RowCount = {read=GetRowCount, nodefault};
  3169.     
  3170. __published:
  3171.     __property Align ;
  3172.     __property Anchors ;
  3173.     __property AutoSize ;
  3174.     __property BorderWidth ;
  3175.     __property int ButtonHeight = {read=FButtonHeight, write=SetButtonHeight, default=22};
  3176.     __property int ButtonWidth = {read=FButtonWidth, write=SetButtonWidth, default=23};
  3177.     __property Caption ;
  3178.     __property Color ;
  3179.     __property Constraints ;
  3180.     __property Ctl3D ;
  3181.     __property Imglist::TCustomImageList* DisabledImages = {read=FDisabledImages, write=SetDisabledImages
  3182.         };
  3183.     __property DockSite ;
  3184.     __property DragCursor ;
  3185.     __property DragKind ;
  3186.     __property DragMode ;
  3187.     __property EdgeBorders ;
  3188.     __property EdgeInner ;
  3189.     __property EdgeOuter ;
  3190.     __property Enabled ;
  3191.     __property bool Flat = {read=FFlat, write=SetFlat, default=0};
  3192.     __property Font ;
  3193.     __property Height ;
  3194.     __property Imglist::TCustomImageList* HotImages = {read=FHotImages, write=SetHotImages};
  3195.     __property Imglist::TCustomImageList* Images = {read=FImages, write=SetImages};
  3196.     __property int Indent = {read=FIndent, write=SetIndent, default=0};
  3197.     __property bool List = {read=FList, write=SetList, default=0};
  3198.     __property ParentColor ;
  3199.     __property ParentFont ;
  3200.     __property ParentShowHint ;
  3201.     __property PopupMenu ;
  3202.     __property bool ShowCaptions = {read=FShowCaptions, write=SetShowCaptions, default=0};
  3203.     __property ShowHint ;
  3204.     __property TabOrder ;
  3205.     __property TabStop ;
  3206.     __property bool Transparent = {read=FTransparent, write=SetTransparent, default=0};
  3207.     __property Visible ;
  3208.     __property bool Wrapable = {read=FWrapable, write=SetWrapable, default=1};
  3209.     __property OnClick ;
  3210.     __property OnDblClick ;
  3211.     __property OnDockDrop ;
  3212.     __property OnDockOver ;
  3213.     __property OnDragDrop ;
  3214.     __property OnDragOver ;
  3215.     __property OnEndDock ;
  3216.     __property OnEndDrag ;
  3217.     __property OnEnter ;
  3218.     __property OnExit ;
  3219.     __property OnGetSiteInfo ;
  3220.     __property OnMouseDown ;
  3221.     __property OnMouseMove ;
  3222.     __property OnMouseUp ;
  3223.     __property OnResize ;
  3224.     __property OnStartDock ;
  3225.     __property OnStartDrag ;
  3226.     __property OnUnDock ;
  3227. public:
  3228.     #pragma option push -w-inl
  3229.     /* TWinControl.CreateParented */ inline __fastcall TToolBar(HWND ParentWindow) : Toolwin::TToolWindow(
  3230.         ParentWindow) { }
  3231.     #pragma option pop
  3232.     
  3233. };
  3234.  
  3235. #pragma pack(pop)
  3236.  
  3237. #pragma pack(push, 4)
  3238. class PASCALIMPLEMENTATION TToolButton : public Controls::TGraphicControl 
  3239. {
  3240.     typedef Controls::TGraphicControl inherited;
  3241.     
  3242. private:
  3243.     bool FAllowAllUp;
  3244.     bool FAutoSize;
  3245.     bool FDown;
  3246.     bool FGrouped;
  3247.     int FImageIndex;
  3248.     bool FIndeterminate;
  3249.     bool FMarked;
  3250.     Menus::TMenuItem* FMenuItem;
  3251.     Menus::TPopupMenu* FDropdownMenu;
  3252.     bool FWrap;
  3253.     TToolButtonStyle FStyle;
  3254.     int FUpdateCount;
  3255.     Byte __fastcall GetButtonState(void);
  3256.     int __fastcall GetIndex(void);
  3257.     bool __fastcall IsCheckedStored(void);
  3258.     bool __fastcall IsImageIndexStored(void);
  3259.     bool __fastcall IsWidthStored(void);
  3260.     HIDESBASE void __fastcall SetAutoSize(bool Value);
  3261.     void __fastcall SetButtonState(Byte State);
  3262.     void __fastcall SetDown(bool Value);
  3263.     void __fastcall SetDropdownMenu(Menus::TPopupMenu* Value);
  3264.     void __fastcall SetGrouped(bool Value);
  3265.     void __fastcall SetImageIndex(int Value);
  3266.     void __fastcall SetIndeterminate(bool Value);
  3267.     void __fastcall SetMarked(bool Value);
  3268.     void __fastcall SetMenuItem(Menus::TMenuItem* Value);
  3269.     void __fastcall SetStyle(TToolButtonStyle Value);
  3270.     void __fastcall SetWrap(bool Value);
  3271.     HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
  3272.     HIDESBASE MESSAGE void __fastcall CMHitTest(Messages::TWMNCHitTest &Message);
  3273.     MESSAGE void __fastcall CMTextChanged(Messages::TMessage &Message);
  3274.     HIDESBASE MESSAGE void __fastcall CMVisibleChanged(Messages::TMessage &Message);
  3275.     
  3276. protected:
  3277.     TToolBar* FToolBar;
  3278.     DYNAMIC void __fastcall ActionChange(System::TObject* Sender, bool CheckDefaults);
  3279.     virtual void __fastcall AssignTo(Classes::TPersistent* Dest);
  3280.     virtual void __fastcall BeginUpdate(void);
  3281.     virtual void __fastcall EndUpdate(void);
  3282.     DYNAMIC TMetaClass* __fastcall GetActionLinkClass(void);
  3283.     DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, 
  3284.         int Y);
  3285.     DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
  3286.     DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int 
  3287.         Y);
  3288.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  3289.         );
  3290.     virtual void __fastcall Paint(void);
  3291.     virtual void __fastcall RefreshControl(void);
  3292.     void __fastcall SetToolBar(TToolBar* AToolBar);
  3293.     virtual void __fastcall UpdateControl(void);
  3294.     DYNAMIC void __fastcall ValidateContainer(Classes::TComponent* AComponent);
  3295.     
  3296. public:
  3297.     __fastcall virtual TToolButton(Classes::TComponent* AOwner);
  3298.     DYNAMIC bool __fastcall CheckMenuDropdown(void);
  3299.     DYNAMIC void __fastcall Click(void);
  3300.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  3301.     __property int Index = {read=GetIndex, nodefault};
  3302.     
  3303. __published:
  3304.     __property Action ;
  3305.     __property bool AllowAllUp = {read=FAllowAllUp, write=FAllowAllUp, default=0};
  3306.     __property bool AutoSize = {read=FAutoSize, write=SetAutoSize, default=0};
  3307.     __property Caption ;
  3308.     __property bool Down = {read=FDown, write=SetDown, stored=IsCheckedStored, default=0};
  3309.     __property DragCursor ;
  3310.     __property DragKind ;
  3311.     __property DragMode ;
  3312.     __property Menus::TPopupMenu* DropdownMenu = {read=FDropdownMenu, write=SetDropdownMenu};
  3313.     __property Enabled ;
  3314.     __property bool Grouped = {read=FGrouped, write=SetGrouped, default=0};
  3315.     __property Height  = {stored=false};
  3316.     __property int ImageIndex = {read=FImageIndex, write=SetImageIndex, stored=IsImageIndexStored, default=-1
  3317.         };
  3318.     __property bool Indeterminate = {read=FIndeterminate, write=SetIndeterminate, default=0};
  3319.     __property bool Marked = {read=FMarked, write=SetMarked, default=0};
  3320.     __property Menus::TMenuItem* MenuItem = {read=FMenuItem, write=SetMenuItem};
  3321.     __property ParentShowHint ;
  3322.     __property PopupMenu ;
  3323.     __property bool Wrap = {read=FWrap, write=SetWrap, default=0};
  3324.     __property ShowHint ;
  3325.     __property TToolButtonStyle Style = {read=FStyle, write=SetStyle, default=0};
  3326.     __property Visible ;
  3327.     __property Width  = {stored=IsWidthStored};
  3328.     __property OnClick ;
  3329.     __property OnDragDrop ;
  3330.     __property OnDragOver ;
  3331.     __property OnEndDock ;
  3332.     __property OnEndDrag ;
  3333.     __property OnMouseDown ;
  3334.     __property OnMouseMove ;
  3335.     __property OnMouseUp ;
  3336.     __property OnStartDock ;
  3337.     __property OnStartDrag ;
  3338. public:
  3339.     #pragma option push -w-inl
  3340.     /* TGraphicControl.Destroy */ inline __fastcall virtual ~TToolButton(void) { }
  3341.     #pragma option pop
  3342.     
  3343. };
  3344.  
  3345. #pragma pack(pop)
  3346.  
  3347. #pragma pack(push, 4)
  3348. class PASCALIMPLEMENTATION TToolButtonActionLink : public Controls::TControlActionLink 
  3349. {
  3350.     typedef Controls::TControlActionLink inherited;
  3351.     
  3352. protected:
  3353.     TToolButton* FClient;
  3354.     virtual void __fastcall AssignClient(System::TObject* AClient);
  3355.     virtual bool __fastcall IsCheckedLinked(void);
  3356.     virtual bool __fastcall IsImageIndexLinked(void);
  3357.     virtual void __fastcall SetChecked(bool Value);
  3358.     virtual void __fastcall SetImageIndex(int Value);
  3359. public:
  3360.     #pragma option push -w-inl
  3361.     /* TBasicActionLink.Create */ inline __fastcall virtual TToolButtonActionLink(System::TObject* AClient
  3362.         ) : Controls::TControlActionLink(AClient) { }
  3363.     #pragma option pop
  3364.     #pragma option push -w-inl
  3365.     /* TBasicActionLink.Destroy */ inline __fastcall virtual ~TToolButtonActionLink(void) { }
  3366.     #pragma option pop
  3367.     
  3368. };
  3369.  
  3370. #pragma pack(pop)
  3371.  
  3372. typedef TMetaClass*TToolButtonActionLinkClass;
  3373.  
  3374. class DELPHICLASS TToolBarDockObject;
  3375. #pragma pack(push, 4)
  3376. class PASCALIMPLEMENTATION TToolBarDockObject : public Controls::TDragDockObject 
  3377. {
  3378.     typedef Controls::TDragDockObject inherited;
  3379.     
  3380. private:
  3381.     Windows::TRect FEraseDockRect;
  3382.     bool FErase;
  3383.     
  3384. protected:
  3385.     virtual void __fastcall AdjustDockRect(const Windows::TRect &ARect);
  3386.     virtual void __fastcall DrawDragDockImage(void);
  3387.     virtual void __fastcall EraseDragDockImage(void);
  3388.     virtual Controls::TCursor __fastcall GetDragCursor(bool Accepted, int X, int Y);
  3389.     virtual bool __fastcall ToolDockImage(bool Erase);
  3390. public:
  3391.     #pragma option push -w-inl
  3392.     /* TDragDockObject.Create */ inline __fastcall virtual TToolBarDockObject(Controls::TControl* AControl
  3393.         ) : Controls::TDragDockObject(AControl) { }
  3394.     #pragma option pop
  3395.     #pragma option push -w-inl
  3396.     /* TDragDockObject.Destroy */ inline __fastcall virtual ~TToolBarDockObject(void) { }
  3397.     #pragma option pop
  3398.     
  3399. };
  3400.  
  3401. #pragma pack(pop)
  3402.  
  3403. class DELPHICLASS TCoolBand;
  3404. class DELPHICLASS TCoolBar;
  3405. #pragma pack(push, 4)
  3406. class PASCALIMPLEMENTATION TCoolBand : public Classes::TCollectionItem 
  3407. {
  3408.     typedef Classes::TCollectionItem inherited;
  3409.     
  3410. private:
  3411.     Forms::TFormBorderStyle FBorderStyle;
  3412.     bool FBreak;
  3413.     bool FFixedSize;
  3414.     bool FVisible;
  3415.     bool FHorizontalOnly;
  3416.     int FImageIndex;
  3417.     bool FFixedBackground;
  3418.     int FMinHeight;
  3419.     int FMinWidth;
  3420.     Graphics::TColor FColor;
  3421.     Controls::TWinControl* FControl;
  3422.     bool FParentColor;
  3423.     bool FParentBitmap;
  3424.     Graphics::TBitmap* FBitmap;
  3425.     AnsiString FText;
  3426.     int FWidth;
  3427.     Graphics::TBitmap* FDDB;
  3428.     int FID;
  3429.     TCoolBar* __fastcall CoolBar(void);
  3430.     bool __fastcall IsColorStored(void);
  3431.     bool __fastcall IsBitmapStored(void);
  3432.     void __fastcall BitmapChanged(System::TObject* Sender);
  3433.     int __fastcall GetHeight(void);
  3434.     bool __fastcall GetVisible(void);
  3435.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  3436.     void __fastcall SetBreak(bool Value);
  3437.     void __fastcall SetFixedSize(bool Value);
  3438.     void __fastcall SetMinHeight(int Value);
  3439.     void __fastcall SetMinWidth(int Value);
  3440.     void __fastcall SetVisible(bool Value);
  3441.     void __fastcall SetHorizontalOnly(bool Value);
  3442.     void __fastcall SetImageIndex(int Value);
  3443.     void __fastcall SetFixedBackground(bool Value);
  3444.     void __fastcall SetColor(Graphics::TColor Value);
  3445.     void __fastcall SetControl(Controls::TWinControl* Value);
  3446.     void __fastcall SetParentColor(bool Value);
  3447.     void __fastcall SetParentBitmap(bool Value);
  3448.     void __fastcall SetBitmap(Graphics::TBitmap* Value);
  3449.     void __fastcall SetText(const AnsiString Value);
  3450.     void __fastcall SetWidth(int Value);
  3451.     
  3452. protected:
  3453.     virtual AnsiString __fastcall GetDisplayName();
  3454.     DYNAMIC void __fastcall ParentColorChanged(void);
  3455.     DYNAMIC void __fastcall ParentBitmapChanged(void);
  3456.     
  3457. public:
  3458.     __fastcall virtual TCoolBand(Classes::TCollection* Collection);
  3459.     __fastcall virtual ~TCoolBand(void);
  3460.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  3461.     __property int Height = {read=GetHeight, nodefault};
  3462.     
  3463. __published:
  3464.     __property Graphics::TBitmap* Bitmap = {read=FBitmap, write=SetBitmap, stored=IsBitmapStored};
  3465.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=0};
  3466.     __property bool Break = {read=FBreak, write=SetBreak, default=1};
  3467.     __property Graphics::TColor Color = {read=FColor, write=SetColor, stored=IsColorStored, default=-2147483633
  3468.         };
  3469.     __property Controls::TWinControl* Control = {read=FControl, write=SetControl};
  3470.     __property bool FixedBackground = {read=FFixedBackground, write=SetFixedBackground, default=1};
  3471.     __property bool FixedSize = {read=FFixedSize, write=SetFixedSize, default=0};
  3472.     __property bool HorizontalOnly = {read=FHorizontalOnly, write=SetHorizontalOnly, default=0};
  3473.     __property int ImageIndex = {read=FImageIndex, write=SetImageIndex, nodefault};
  3474.     __property int MinHeight = {read=FMinHeight, write=SetMinHeight, default=25};
  3475.     __property int MinWidth = {read=FMinWidth, write=SetMinWidth, default=0};
  3476.     __property bool ParentColor = {read=FParentColor, write=SetParentColor, default=1};
  3477.     __property bool ParentBitmap = {read=FParentBitmap, write=SetParentBitmap, default=1};
  3478.     __property AnsiString Text = {read=FText, write=SetText};
  3479.     __property bool Visible = {read=GetVisible, write=SetVisible, default=1};
  3480.     __property int Width = {read=FWidth, write=SetWidth, nodefault};
  3481. };
  3482.  
  3483. #pragma pack(pop)
  3484.  
  3485. class DELPHICLASS TCoolBands;
  3486. #pragma pack(push, 4)
  3487. class PASCALIMPLEMENTATION TCoolBands : public Classes::TCollection 
  3488. {
  3489.     typedef Classes::TCollection inherited;
  3490.     
  3491. private:
  3492.     TCoolBar* FCoolBar;
  3493.     unsigned FVisibleCount;
  3494.     HIDESBASE TCoolBand* __fastcall GetItem(int Index);
  3495.     HIDESBASE void __fastcall SetItem(int Index, TCoolBand* Value);
  3496.     
  3497. protected:
  3498.     DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
  3499.     virtual void __fastcall Update(Classes::TCollectionItem* Item);
  3500.     bool __fastcall HaveGraphic(void);
  3501.     
  3502. public:
  3503.     __fastcall TCoolBands(TCoolBar* CoolBar);
  3504.     HIDESBASE TCoolBand* __fastcall Add(void);
  3505.     TCoolBand* __fastcall FindBand(Controls::TControl* AControl);
  3506.     __property TCoolBar* CoolBar = {read=FCoolBar};
  3507.     __property TCoolBand* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
  3508. public:
  3509.     #pragma option push -w-inl
  3510.     /* TCollection.Destroy */ inline __fastcall virtual ~TCoolBands(void) { }
  3511.     #pragma option pop
  3512.     
  3513. };
  3514.  
  3515. #pragma pack(pop)
  3516.  
  3517. #pragma option push -b-
  3518. enum TCoolBandMaximize { bmNone, bmClick, bmDblClick };
  3519. #pragma option pop
  3520.  
  3521. #pragma pack(push, 4)
  3522. class PASCALIMPLEMENTATION TCoolBar : public Toolwin::TToolWindow 
  3523. {
  3524.     typedef Toolwin::TToolWindow inherited;
  3525.     
  3526. private:
  3527.     TCoolBands* FBands;
  3528.     Forms::TFormBorderStyle FBandBorderStyle;
  3529.     TCoolBandMaximize FBandMaximize;
  3530.     Graphics::TBitmap* FBitmap;
  3531.     Graphics::TFont* FCaptionFont;
  3532.     int FCaptionFontHeight;
  3533.     Graphics::TBitmap* FDDB;
  3534.     bool FFixedSize;
  3535.     bool FFixedOrder;
  3536.     Imglist::TCustomImageList* FImages;
  3537.     Imglist::TChangeLink* FImageChangeLink;
  3538.     bool FShowText;
  3539.     bool FVertical;
  3540.     Windows::TSmallPoint FTrackDrag;
  3541.     int FUpdateCount;
  3542.     Classes::TNotifyEvent FOnChange;
  3543.     void __fastcall BeginUpdate(void);
  3544.     void __fastcall BitmapChanged(System::TObject* Sender);
  3545.     void __fastcall EndUpdate(void);
  3546.     bool __fastcall IsAutoSized(void);
  3547.     bool __fastcall IsBackgroundDirty(void);
  3548.     Controls::TAlign __fastcall GetAlign(void);
  3549.     HFONT __fastcall GetCaptionFont(void);
  3550.     int __fastcall GetCaptionFontHeight(void);
  3551.     int __fastcall GetCaptionSize(TCoolBand* Band);
  3552.     int __fastcall GetRowHeight(int Index);
  3553.     void __fastcall RefreshControl(TCoolBand* Band);
  3554.     HIDESBASE void __fastcall SetAlign(Controls::TAlign Value);
  3555.     void __fastcall SetBands(TCoolBands* Value);
  3556.     void __fastcall SetBandBorderStyle(Forms::TBorderStyle Value);
  3557.     void __fastcall SetBandMaximize(TCoolBandMaximize Value);
  3558.     void __fastcall SetBitmap(Graphics::TBitmap* Value);
  3559.     void __fastcall SetFixedSize(bool Value);
  3560.     void __fastcall SetFixedOrder(bool Value);
  3561.     void __fastcall SetImageList(unsigned Value);
  3562.     void __fastcall SetImages(Imglist::TCustomImageList* Value);
  3563.     void __fastcall SetShowText(bool Value);
  3564.     void __fastcall SetVertical(bool Value);
  3565.     void __fastcall ImageListChange(System::TObject* Sender);
  3566.     int __fastcall PtInGripRect(const Windows::TPoint &Pos, TCoolBand* &Band);
  3567.     bool __fastcall ReadBands(void);
  3568.     bool __fastcall UpdateItem(int Message, int FromIndex, int ToIndex);
  3569.     void __fastcall UpdateBand(int Index);
  3570.     void __fastcall UpdateBands(void);
  3571.     MESSAGE void __fastcall WMCaptureChanged(Messages::TMessage &Message);
  3572.     HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
  3573.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  3574.     HIDESBASE MESSAGE void __fastcall WMLButtonUp(Messages::TWMMouse &Message);
  3575.     MESSAGE void __fastcall WMNotifyFormat(Messages::TMessage &Message);
  3576.     HIDESBASE MESSAGE void __fastcall WMSetCursor(Messages::TWMSetCursor &Message);
  3577.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  3578.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  3579.     MESSAGE void __fastcall CMControlChange(Controls::TCMControlChange &Message);
  3580.     HIDESBASE MESSAGE void __fastcall CMDesignHitTest(Messages::TWMMouse &Message);
  3581.     MESSAGE void __fastcall CNBandChange(Messages::TMessage &Message);
  3582.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  3583.     HIDESBASE MESSAGE void __fastcall CMSysColorChange(Messages::TMessage &Message);
  3584.     HIDESBASE MESSAGE void __fastcall CMSysFontChanged(Messages::TMessage &Message);
  3585.     HIDESBASE MESSAGE void __fastcall CMWinIniChange(Messages::TWMWinIniChange &Message);
  3586.     
  3587. protected:
  3588.     virtual void __fastcall AlignControls(Controls::TControl* AControl, Windows::TRect &Rect);
  3589.     virtual bool __fastcall CanAutoSize(int &NewWidth, int &NewHeight);
  3590.     DYNAMIC void __fastcall Change(void);
  3591.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  3592.     virtual void __fastcall CreateWnd(void);
  3593.     DYNAMIC HPALETTE __fastcall GetPalette(void);
  3594.     TCoolBand* __fastcall HitTest(const Windows::TPoint &Pos);
  3595.     virtual void __fastcall Loaded(void);
  3596.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  3597.         );
  3598.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  3599.     
  3600. public:
  3601.     __fastcall virtual TCoolBar(Classes::TComponent* AOwner);
  3602.     __fastcall virtual ~TCoolBar(void);
  3603.     DYNAMIC void __fastcall FlipChildren(bool AllLevels);
  3604.     
  3605. __published:
  3606.     __property Align  = {read=GetAlign, write=SetAlign, default=1};
  3607.     __property Anchors ;
  3608.     __property AutoSize ;
  3609.     __property Forms::TBorderStyle BandBorderStyle = {read=FBandBorderStyle, write=SetBandBorderStyle, 
  3610.         default=1};
  3611.     __property TCoolBandMaximize BandMaximize = {read=FBandMaximize, write=SetBandMaximize, default=1};
  3612.         
  3613.     __property TCoolBands* Bands = {read=FBands, write=SetBands};
  3614.     __property BorderWidth ;
  3615.     __property Color ;
  3616.     __property Constraints ;
  3617.     __property Ctl3D ;
  3618.     __property DockSite ;
  3619.     __property DragCursor ;
  3620.     __property DragKind ;
  3621.     __property DragMode ;
  3622.     __property EdgeBorders ;
  3623.     __property EdgeInner ;
  3624.     __property EdgeOuter ;
  3625.     __property Enabled ;
  3626.     __property bool FixedSize = {read=FFixedSize, write=SetFixedSize, default=0};
  3627.     __property bool FixedOrder = {read=FFixedOrder, write=SetFixedOrder, default=0};
  3628.     __property Font ;
  3629.     __property Imglist::TCustomImageList* Images = {read=FImages, write=SetImages};
  3630.     __property ParentColor ;
  3631.     __property ParentFont ;
  3632.     __property ParentShowHint ;
  3633.     __property Graphics::TBitmap* Bitmap = {read=FBitmap, write=SetBitmap};
  3634.     __property PopupMenu ;
  3635.     __property ShowHint ;
  3636.     __property bool ShowText = {read=FShowText, write=SetShowText, default=1};
  3637.     __property bool Vertical = {read=FVertical, write=SetVertical, default=0};
  3638.     __property Visible ;
  3639.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  3640.     __property OnClick ;
  3641.     __property OnDblClick ;
  3642.     __property OnDockDrop ;
  3643.     __property OnDockOver ;
  3644.     __property OnDragDrop ;
  3645.     __property OnDragOver ;
  3646.     __property OnEndDock ;
  3647.     __property OnEndDrag ;
  3648.     __property OnGetSiteInfo ;
  3649.     __property OnMouseDown ;
  3650.     __property OnMouseMove ;
  3651.     __property OnMouseUp ;
  3652.     __property OnResize ;
  3653.     __property OnStartDock ;
  3654.     __property OnStartDrag ;
  3655.     __property OnUnDock ;
  3656. public:
  3657.     #pragma option push -w-inl
  3658.     /* TWinControl.CreateParented */ inline __fastcall TCoolBar(HWND ParentWindow) : Toolwin::TToolWindow(
  3659.         ParentWindow) { }
  3660.     #pragma option pop
  3661.     
  3662. };
  3663.  
  3664. #pragma pack(pop)
  3665.  
  3666. class DELPHICLASS ECommonCalendarError;
  3667. #pragma pack(push, 4)
  3668. class PASCALIMPLEMENTATION ECommonCalendarError : public Sysutils::Exception 
  3669. {
  3670.     typedef Sysutils::Exception inherited;
  3671.     
  3672. public:
  3673.     #pragma option push -w-inl
  3674.     /* Exception.Create */ inline __fastcall ECommonCalendarError(const AnsiString Msg) : Sysutils::Exception(
  3675.         Msg) { }
  3676.     #pragma option pop
  3677.     #pragma option push -w-inl
  3678.     /* Exception.CreateFmt */ inline __fastcall ECommonCalendarError(const AnsiString Msg, const System::TVarRec 
  3679.         * Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
  3680.     #pragma option pop
  3681.     #pragma option push -w-inl
  3682.     /* Exception.CreateRes */ inline __fastcall ECommonCalendarError(int Ident, Extended Dummy) : Sysutils::Exception(
  3683.         Ident, Dummy) { }
  3684.     #pragma option pop
  3685.     #pragma option push -w-inl
  3686.     /* Exception.CreateResFmt */ inline __fastcall ECommonCalendarError(int Ident, const System::TVarRec 
  3687.         * Args, const int Args_Size) : Sysutils::Exception(Ident, Args, Args_Size) { }
  3688.     #pragma option pop
  3689.     #pragma option push -w-inl
  3690.     /* Exception.CreateHelp */ inline __fastcall ECommonCalendarError(const AnsiString Msg, int AHelpContext
  3691.         ) : Sysutils::Exception(Msg, AHelpContext) { }
  3692.     #pragma option pop
  3693.     #pragma option push -w-inl
  3694.     /* Exception.CreateFmtHelp */ inline __fastcall ECommonCalendarError(const AnsiString Msg, const System::TVarRec 
  3695.         * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext
  3696.         ) { }
  3697.     #pragma option pop
  3698.     #pragma option push -w-inl
  3699.     /* Exception.CreateResHelp */ inline __fastcall ECommonCalendarError(int Ident, int AHelpContext) : 
  3700.         Sysutils::Exception(Ident, AHelpContext) { }
  3701.     #pragma option pop
  3702.     #pragma option push -w-inl
  3703.     /* Exception.CreateResFmtHelp */ inline __fastcall ECommonCalendarError(int Ident, const System::TVarRec 
  3704.         * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Ident, Args, Args_Size, AHelpContext
  3705.         ) { }
  3706.     #pragma option pop
  3707.     
  3708. public:
  3709.     #pragma option push -w-inl
  3710.     /* TObject.Destroy */ inline __fastcall virtual ~ECommonCalendarError(void) { }
  3711.     #pragma option pop
  3712.     
  3713. };
  3714.  
  3715. #pragma pack(pop)
  3716.  
  3717. class DELPHICLASS TMonthCalColors;
  3718. class DELPHICLASS TCommonCalendar;
  3719. #pragma option push -b-
  3720. enum TCalDayOfWeek { dowMonday, dowTuesday, dowWednesday, dowThursday, dowFriday, dowSaturday, dowSunday, 
  3721.     dowLocaleDefault };
  3722. #pragma option pop
  3723.  
  3724. typedef void __fastcall (__closure *TOnGetMonthInfoEvent)(System::TObject* Sender, unsigned Month, unsigned 
  3725.     &MonthBoldInfo);
  3726.  
  3727. #pragma pack(push, 4)
  3728. class PASCALIMPLEMENTATION TCommonCalendar : public Controls::TWinControl 
  3729. {
  3730.     typedef Controls::TWinControl inherited;
  3731.     
  3732. private:
  3733.     TMonthCalColors* FCalColors;
  3734.     TMetaClass*FCalExceptionClass;
  3735.     System::TDateTime FDateTime;
  3736.     TDate FEndDate;
  3737.     TCalDayOfWeek FFirstDayOfWeek;
  3738.     TDate FMaxDate;
  3739.     int FMaxSelectRange;
  3740.     TDate FMinDate;
  3741.     int FMonthDelta;
  3742.     bool FMultiSelect;
  3743.     bool FShowToday;
  3744.     bool FShowTodayCircle;
  3745.     bool FWeekNumbers;
  3746.     TOnGetMonthInfoEvent FOnGetMonthInfo;
  3747.     bool __fastcall DoStoreEndDate(void);
  3748.     bool __fastcall DoStoreMaxDate(void);
  3749.     bool __fastcall DoStoreMinDate(void);
  3750.     TDate __fastcall GetDate(void);
  3751.     void __fastcall SetCalColors(TMonthCalColors* Value);
  3752.     void __fastcall SetDate(TDate Value);
  3753.     void __fastcall SetDateTime(System::TDateTime Value);
  3754.     void __fastcall SetEndDate(TDate Value);
  3755.     void __fastcall SetFirstDayOfWeek(TCalDayOfWeek Value);
  3756.     void __fastcall SetMaxDate(TDate Value);
  3757.     void __fastcall SetMaxSelectRange(int Value);
  3758.     void __fastcall SetMinDate(TDate Value);
  3759.     void __fastcall SetMonthDelta(int Value);
  3760.     void __fastcall SetMultiSelect(bool Value);
  3761.     void __fastcall SetRange(TDate MinVal, TDate MaxVal);
  3762.     void __fastcall SetSelectedRange(TDate Date, TDate EndDate);
  3763.     void __fastcall SetShowToday(bool Value);
  3764.     void __fastcall SetShowTodayCircle(bool Value);
  3765.     void __fastcall SetWeekNumbers(bool Value);
  3766.     
  3767. protected:
  3768.     virtual void __fastcall CheckEmptyDate(void);
  3769.     virtual void __fastcall CheckValidDate(TDate Value);
  3770.     virtual void __fastcall CreateWnd(void);
  3771.     virtual HWND __fastcall GetCalendarHandle(void) = 0 ;
  3772.     virtual unsigned __fastcall GetCalStyles(void);
  3773.     virtual bool __fastcall MsgSetCalColors(int ColorIndex, Graphics::TColor ColorValue) = 0 ;
  3774.     virtual bool __fastcall MsgSetDateTime(const _SYSTEMTIME &Value) = 0 ;
  3775.     virtual bool __fastcall MsgSetRange(int Flags, Windows::PSystemTime SysTime) = 0 ;
  3776.     __property TMonthCalColors* CalColors = {read=FCalColors, write=SetCalColors};
  3777.     __property HWND CalendarHandle = {read=GetCalendarHandle, nodefault};
  3778.     __property TMetaClass* CalExceptionClass = {read=FCalExceptionClass, write=FCalExceptionClass};
  3779.     __property TDate Date = {read=GetDate, write=SetDate};
  3780.     __property System::TDateTime DateTime = {read=FDateTime, write=SetDateTime};
  3781.     __property TDate EndDate = {read=FEndDate, write=SetEndDate, stored=DoStoreEndDate};
  3782.     __property TCalDayOfWeek FirstDayOfWeek = {read=FFirstDayOfWeek, write=SetFirstDayOfWeek, default=7
  3783.         };
  3784.     __property TDate MaxDate = {read=FMaxDate, write=SetMaxDate, stored=DoStoreMaxDate};
  3785.     __property int MaxSelectRange = {read=FMaxSelectRange, write=SetMaxSelectRange, default=31};
  3786.     __property TDate MinDate = {read=FMinDate, write=SetMinDate, stored=DoStoreMinDate};
  3787.     __property int MonthDelta = {read=FMonthDelta, write=SetMonthDelta, default=1};
  3788.     __property bool MultiSelect = {read=FMultiSelect, write=SetMultiSelect, default=0};
  3789.     __property bool ShowToday = {read=FShowToday, write=SetShowToday, default=1};
  3790.     __property bool ShowTodayCircle = {read=FShowTodayCircle, write=SetShowTodayCircle, default=1};
  3791.     __property bool WeekNumbers = {read=FWeekNumbers, write=SetWeekNumbers, default=0};
  3792.     __property TOnGetMonthInfoEvent OnGetMonthInfo = {read=FOnGetMonthInfo, write=FOnGetMonthInfo};
  3793.     
  3794. public:
  3795.     __fastcall virtual TCommonCalendar(Classes::TComponent* AOwner);
  3796.     __fastcall virtual ~TCommonCalendar(void);
  3797.     void __fastcall BoldDays(const unsigned * Days, const int Days_Size, unsigned &MonthBoldInfo);
  3798. public:
  3799.         
  3800.     #pragma option push -w-inl
  3801.     /* TWinControl.CreateParented */ inline __fastcall TCommonCalendar(HWND ParentWindow) : Controls::TWinControl(
  3802.         ParentWindow) { }
  3803.     #pragma option pop
  3804.     
  3805. };
  3806.  
  3807. #pragma pack(pop)
  3808.  
  3809. #pragma pack(push, 4)
  3810. class PASCALIMPLEMENTATION TMonthCalColors : public Classes::TPersistent 
  3811. {
  3812.     typedef Classes::TPersistent inherited;
  3813.     
  3814. private:
  3815.     TCommonCalendar* Owner;
  3816.     Graphics::TColor FBackColor;
  3817.     Graphics::TColor FTextColor;
  3818.     Graphics::TColor FTitleBackColor;
  3819.     Graphics::TColor FTitleTextColor;
  3820.     Graphics::TColor FMonthBackColor;
  3821.     Graphics::TColor FTrailingTextColor;
  3822.     void __fastcall SetColor(int Index, Graphics::TColor Value);
  3823.     void __fastcall SetAllColors(void);
  3824.     
  3825. public:
  3826.     __fastcall TMonthCalColors(TCommonCalendar* AOwner);
  3827.     virtual void __fastcall Assign(Classes::TPersistent* Source);
  3828.     
  3829. __published:
  3830.     __property Graphics::TColor BackColor = {read=FBackColor, write=SetColor, index=0, default=-2147483643
  3831.         };
  3832.     __property Graphics::TColor TextColor = {read=FTextColor, write=SetColor, index=1, default=-2147483640
  3833.         };
  3834.     __property Graphics::TColor TitleBackColor = {read=FTitleBackColor, write=SetColor, index=2, default=-2147483646
  3835.         };
  3836.     __property Graphics::TColor TitleTextColor = {read=FTitleTextColor, write=SetColor, index=3, default=16777215
  3837.         };
  3838.     __property Graphics::TColor MonthBackColor = {read=FMonthBackColor, write=SetColor, index=4, default=16777215
  3839.         };
  3840.     __property Graphics::TColor TrailingTextColor = {read=FTrailingTextColor, write=SetColor, index=5, 
  3841.         default=-2147483629};
  3842. public:
  3843.     #pragma option push -w-inl
  3844.     /* TPersistent.Destroy */ inline __fastcall virtual ~TMonthCalColors(void) { }
  3845.     #pragma option pop
  3846.     
  3847. };
  3848.  
  3849. #pragma pack(pop)
  3850.  
  3851. class DELPHICLASS EMonthCalError;
  3852. #pragma pack(push, 4)
  3853. class PASCALIMPLEMENTATION EMonthCalError : public ECommonCalendarError 
  3854. {
  3855.     typedef ECommonCalendarError inherited;
  3856.     
  3857. public:
  3858.     #pragma option push -w-inl
  3859.     /* Exception.Create */ inline __fastcall EMonthCalError(const AnsiString Msg) : ECommonCalendarError(
  3860.         Msg) { }
  3861.     #pragma option pop
  3862.     #pragma option push -w-inl
  3863.     /* Exception.CreateFmt */ inline __fastcall EMonthCalError(const AnsiString Msg, const System::TVarRec 
  3864.         * Args, const int Args_Size) : ECommonCalendarError(Msg, Args, Args_Size) { }
  3865.     #pragma option pop
  3866.     #pragma option push -w-inl
  3867.     /* Exception.CreateRes */ inline __fastcall EMonthCalError(int Ident, Extended Dummy) : ECommonCalendarError(
  3868.         Ident, Dummy) { }
  3869.     #pragma option pop
  3870.     #pragma option push -w-inl
  3871.     /* Exception.CreateResFmt */ inline __fastcall EMonthCalError(int Ident, const System::TVarRec * Args
  3872.         , const int Args_Size) : ECommonCalendarError(Ident, Args, Args_Size) { }
  3873.     #pragma option pop
  3874.     #pragma option push -w-inl
  3875.     /* Exception.CreateHelp */ inline __fastcall EMonthCalError(const AnsiString Msg, int AHelpContext)
  3876.          : ECommonCalendarError(Msg, AHelpContext) { }
  3877.     #pragma option pop
  3878.     #pragma option push -w-inl
  3879.     /* Exception.CreateFmtHelp */ inline __fastcall EMonthCalError(const AnsiString Msg, const System::TVarRec 
  3880.         * Args, const int Args_Size, int AHelpContext) : ECommonCalendarError(Msg, Args, Args_Size, AHelpContext
  3881.         ) { }
  3882.     #pragma option pop
  3883.     #pragma option push -w-inl
  3884.     /* Exception.CreateResHelp */ inline __fastcall EMonthCalError(int Ident, int AHelpContext) : ECommonCalendarError(
  3885.         Ident, AHelpContext) { }
  3886.     #pragma option pop
  3887.     #pragma option push -w-inl
  3888.     /* Exception.CreateResFmtHelp */ inline __fastcall EMonthCalError(int Ident, const System::TVarRec 
  3889.         * Args, const int Args_Size, int AHelpContext) : ECommonCalendarError(Ident, Args, Args_Size, AHelpContext
  3890.         ) { }
  3891.     #pragma option pop
  3892.     
  3893. public:
  3894.     #pragma option push -w-inl
  3895.     /* TObject.Destroy */ inline __fastcall virtual ~EMonthCalError(void) { }
  3896.     #pragma option pop
  3897.     
  3898. };
  3899.  
  3900. #pragma pack(pop)
  3901.  
  3902. class DELPHICLASS TMonthCalendar;
  3903. #pragma pack(push, 4)
  3904. class PASCALIMPLEMENTATION TMonthCalendar : public TCommonCalendar 
  3905. {
  3906.     typedef TCommonCalendar inherited;
  3907.     
  3908. private:
  3909.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  3910.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  3911.     
  3912. protected:
  3913.     virtual bool __fastcall CanAutoSize(int &NewWidth, int &NewHeight);
  3914.     virtual void __fastcall ConstrainedResize(int &MinWidth, int &MinHeight, int &MaxWidth, int &MaxHeight
  3915.         );
  3916.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  3917.     virtual HWND __fastcall GetCalendarHandle(void);
  3918.     virtual bool __fastcall MsgSetCalColors(int ColorIndex, Graphics::TColor ColorValue);
  3919.     virtual bool __fastcall MsgSetDateTime(const _SYSTEMTIME &Value);
  3920.     virtual bool __fastcall MsgSetRange(int Flags, Windows::PSystemTime SysTime);
  3921.     
  3922. public:
  3923.     __fastcall virtual TMonthCalendar(Classes::TComponent* AOwner);
  3924.     
  3925. __published:
  3926.     __property Align ;
  3927.     __property Anchors ;
  3928.     __property AutoSize ;
  3929.     __property BorderWidth ;
  3930.     __property BiDiMode ;
  3931.     __property CalColors ;
  3932.     __property Constraints ;
  3933.     __property MultiSelect ;
  3934.     __property Date ;
  3935.     __property DragCursor ;
  3936.     __property DragKind ;
  3937.     __property DragMode ;
  3938.     __property Enabled ;
  3939.     __property EndDate ;
  3940.     __property FirstDayOfWeek ;
  3941.     __property Font ;
  3942.     __property ImeMode ;
  3943.     __property ImeName ;
  3944.     __property MaxDate ;
  3945.     __property MaxSelectRange ;
  3946.     __property MinDate ;
  3947.     __property ParentBiDiMode ;
  3948.     __property ParentFont ;
  3949.     __property ParentShowHint ;
  3950.     __property PopupMenu ;
  3951.     __property ShowHint ;
  3952.     __property ShowToday ;
  3953.     __property ShowTodayCircle ;
  3954.     __property TabOrder ;
  3955.     __property TabStop ;
  3956.     __property Visible ;
  3957.     __property WeekNumbers ;
  3958.     __property OnClick ;
  3959.     __property OnDblClick ;
  3960.     __property OnDragDrop ;
  3961.     __property OnDragOver ;
  3962.     __property OnEndDock ;
  3963.     __property OnEndDrag ;
  3964.     __property OnEnter ;
  3965.     __property OnExit ;
  3966.     __property OnGetMonthInfo ;
  3967.     __property OnKeyDown ;
  3968.     __property OnKeyPress ;
  3969.     __property OnKeyUp ;
  3970.     __property OnStartDock ;
  3971.     __property OnStartDrag ;
  3972. public:
  3973.     #pragma option push -w-inl
  3974.     /* TCommonCalendar.Destroy */ inline __fastcall virtual ~TMonthCalendar(void) { }
  3975.     #pragma option pop
  3976.     
  3977. public:
  3978.     #pragma option push -w-inl
  3979.     /* TWinControl.CreateParented */ inline __fastcall TMonthCalendar(HWND ParentWindow) : TCommonCalendar(
  3980.         ParentWindow) { }
  3981.     #pragma option pop
  3982.     
  3983. };
  3984.  
  3985. #pragma pack(pop)
  3986.  
  3987. class DELPHICLASS EDateTimeError;
  3988. #pragma pack(push, 4)
  3989. class PASCALIMPLEMENTATION EDateTimeError : public ECommonCalendarError 
  3990. {
  3991.     typedef ECommonCalendarError inherited;
  3992.     
  3993. public:
  3994.     #pragma option push -w-inl
  3995.     /* Exception.Create */ inline __fastcall EDateTimeError(const AnsiString Msg) : ECommonCalendarError(
  3996.         Msg) { }
  3997.     #pragma option pop
  3998.     #pragma option push -w-inl
  3999.     /* Exception.CreateFmt */ inline __fastcall EDateTimeError(const AnsiString Msg, const System::TVarRec 
  4000.         * Args, const int Args_Size) : ECommonCalendarError(Msg, Args, Args_Size) { }
  4001.     #pragma option pop
  4002.     #pragma option push -w-inl
  4003.     /* Exception.CreateRes */ inline __fastcall EDateTimeError(int Ident, Extended Dummy) : ECommonCalendarError(
  4004.         Ident, Dummy) { }
  4005.     #pragma option pop
  4006.     #pragma option push -w-inl
  4007.     /* Exception.CreateResFmt */ inline __fastcall EDateTimeError(int Ident, const System::TVarRec * Args
  4008.         , const int Args_Size) : ECommonCalendarError(Ident, Args, Args_Size) { }
  4009.     #pragma option pop
  4010.     #pragma option push -w-inl
  4011.     /* Exception.CreateHelp */ inline __fastcall EDateTimeError(const AnsiString Msg, int AHelpContext)
  4012.          : ECommonCalendarError(Msg, AHelpContext) { }
  4013.     #pragma option pop
  4014.     #pragma option push -w-inl
  4015.     /* Exception.CreateFmtHelp */ inline __fastcall EDateTimeError(const AnsiString Msg, const System::TVarRec 
  4016.         * Args, const int Args_Size, int AHelpContext) : ECommonCalendarError(Msg, Args, Args_Size, AHelpContext
  4017.         ) { }
  4018.     #pragma option pop
  4019.     #pragma option push -w-inl
  4020.     /* Exception.CreateResHelp */ inline __fastcall EDateTimeError(int Ident, int AHelpContext) : ECommonCalendarError(
  4021.         Ident, AHelpContext) { }
  4022.     #pragma option pop
  4023.     #pragma option push -w-inl
  4024.     /* Exception.CreateResFmtHelp */ inline __fastcall EDateTimeError(int Ident, const System::TVarRec 
  4025.         * Args, const int Args_Size, int AHelpContext) : ECommonCalendarError(Ident, Args, Args_Size, AHelpContext
  4026.         ) { }
  4027.     #pragma option pop
  4028.     
  4029. public:
  4030.     #pragma option push -w-inl
  4031.     /* TObject.Destroy */ inline __fastcall virtual ~EDateTimeError(void) { }
  4032.     #pragma option pop
  4033.     
  4034. };
  4035.  
  4036. #pragma pack(pop)
  4037.  
  4038. #pragma option push -b-
  4039. enum TDateTimeKind { dtkDate, dtkTime };
  4040. #pragma option pop
  4041.  
  4042. #pragma option push -b-
  4043. enum TDTDateMode { dmComboBox, dmUpDown };
  4044. #pragma option pop
  4045.  
  4046. #pragma option push -b-
  4047. enum TDTDateFormat { dfShort, dfLong };
  4048. #pragma option pop
  4049.  
  4050. #pragma option push -b-
  4051. enum TDTCalAlignment { dtaLeft, dtaRight };
  4052. #pragma option pop
  4053.  
  4054. typedef void __fastcall (__closure *TDTParseInputEvent)(System::TObject* Sender, const AnsiString UserString
  4055.     , System::TDateTime &DateAndTime, bool &AllowChange);
  4056.  
  4057. typedef TMonthCalColors TDateTimeColors;
  4058. ;
  4059.  
  4060. class DELPHICLASS TDateTimePicker;
  4061. #pragma pack(push, 4)
  4062. class PASCALIMPLEMENTATION TDateTimePicker : public TCommonCalendar 
  4063. {
  4064.     typedef TCommonCalendar inherited;
  4065.     
  4066. private:
  4067.     TDTCalAlignment FCalAlignment;
  4068.     bool FChanging;
  4069.     bool FChecked;
  4070.     TDTDateFormat FDateFormat;
  4071.     TDTDateMode FDateMode;
  4072.     bool FDroppedDown;
  4073.     TDateTimeKind FKind;
  4074.     _SYSTEMTIME FLastChange;
  4075.     bool FParseInput;
  4076.     bool FShowCheckbox;
  4077.     TDTParseInputEvent FOnUserInput;
  4078.     Classes::TNotifyEvent FOnCloseUp;
  4079.     Classes::TNotifyEvent FOnChange;
  4080.     Classes::TNotifyEvent FOnDropDown;
  4081.     void __fastcall AdjustHeight(void);
  4082.     TTime __fastcall GetTime(void);
  4083.     void __fastcall SetCalAlignment(TDTCalAlignment Value);
  4084.     void __fastcall SetChecked(bool Value);
  4085.     void __fastcall SetDateMode(TDTDateMode Value);
  4086.     void __fastcall SetDateFormat(TDTDateFormat Value);
  4087.     void __fastcall SetKind(TDateTimeKind Value);
  4088.     void __fastcall SetParseInput(bool Value);
  4089.     void __fastcall SetShowCheckbox(bool Value);
  4090.     void __fastcall SetTime(TTime Value);
  4091.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  4092.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  4093.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  4094.     
  4095. protected:
  4096.     virtual void __fastcall CheckEmptyDate(void);
  4097.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  4098.     virtual void __fastcall CreateWnd(void);
  4099.     DYNAMIC void __fastcall Change(void);
  4100.     virtual HWND __fastcall GetCalendarHandle(void);
  4101.     virtual bool __fastcall MsgSetCalColors(int ColorIndex, Graphics::TColor ColorValue);
  4102.     virtual bool __fastcall MsgSetDateTime(const _SYSTEMTIME &Value);
  4103.     virtual bool __fastcall MsgSetRange(int Flags, Windows::PSystemTime SysTime);
  4104.     
  4105. public:
  4106.     __fastcall virtual TDateTimePicker(Classes::TComponent* AOwner);
  4107.     __property DateTime ;
  4108.     __property bool DroppedDown = {read=FDroppedDown, nodefault};
  4109.     
  4110. __published:
  4111.     __property Anchors ;
  4112.     __property BiDiMode ;
  4113.     __property TDTCalAlignment CalAlignment = {read=FCalAlignment, write=SetCalAlignment, nodefault};
  4114.     __property CalColors ;
  4115.     __property Constraints ;
  4116.     __property Date ;
  4117.     __property TTime Time = {read=GetTime, write=SetTime};
  4118.     __property bool ShowCheckbox = {read=FShowCheckbox, write=SetShowCheckbox, default=0};
  4119.     __property bool Checked = {read=FChecked, write=SetChecked, default=1};
  4120.     __property Color  = {stored=true, default=-2147483643};
  4121.     __property TDTDateFormat DateFormat = {read=FDateFormat, write=SetDateFormat, nodefault};
  4122.     __property TDTDateMode DateMode = {read=FDateMode, write=SetDateMode, nodefault};
  4123.     __property DragCursor ;
  4124.     __property DragKind ;
  4125.     __property DragMode ;
  4126.     __property Enabled ;
  4127.     __property Font ;
  4128.     __property ImeMode ;
  4129.     __property ImeName ;
  4130.     __property TDateTimeKind Kind = {read=FKind, write=SetKind, nodefault};
  4131.     __property MaxDate ;
  4132.     __property MinDate ;
  4133.     __property bool ParseInput = {read=FParseInput, write=SetParseInput, nodefault};
  4134.     __property ParentBiDiMode ;
  4135.     __property ParentColor ;
  4136.     __property ParentFont ;
  4137.     __property ParentShowHint ;
  4138.     __property PopupMenu ;
  4139.     __property ShowHint ;
  4140.     __property TabOrder ;
  4141.     __property TabStop ;
  4142.     __property Visible ;
  4143.     __property OnClick ;
  4144.     __property Classes::TNotifyEvent OnCloseUp = {read=FOnCloseUp, write=FOnCloseUp};
  4145.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  4146.     __property Classes::TNotifyEvent OnDropDown = {read=FOnDropDown, write=FOnDropDown};
  4147.     __property OnDblClick ;
  4148.     __property OnDragDrop ;
  4149.     __property OnDragOver ;
  4150.     __property OnEndDock ;
  4151.     __property OnEndDrag ;
  4152.     __property OnEnter ;
  4153.     __property OnExit ;
  4154.     __property OnKeyDown ;
  4155.     __property OnKeyPress ;
  4156.     __property OnKeyUp ;
  4157.     __property OnStartDock ;
  4158.     __property OnStartDrag ;
  4159.     __property TDTParseInputEvent OnUserInput = {read=FOnUserInput, write=FOnUserInput};
  4160. public:
  4161.     #pragma option push -w-inl
  4162.     /* TCommonCalendar.Destroy */ inline __fastcall virtual ~TDateTimePicker(void) { }
  4163.     #pragma option pop
  4164.     
  4165. public:
  4166.     #pragma option push -w-inl
  4167.     /* TWinControl.CreateParented */ inline __fastcall TDateTimePicker(HWND ParentWindow) : TCommonCalendar(
  4168.         ParentWindow) { }
  4169.     #pragma option pop
  4170.     
  4171. };
  4172.  
  4173. #pragma pack(pop)
  4174.  
  4175. #pragma option push -b-
  4176. enum TPageScrollerOrientation { soHorizontal, soVertical };
  4177. #pragma option pop
  4178.  
  4179. #pragma option push -b-
  4180. enum TPageScrollerButton { sbFirst, sbLast };
  4181. #pragma option pop
  4182.  
  4183. #pragma option push -b-
  4184. enum TPageScrollerButtonState { bsNormal, bsInvisible, bsGrayed, bsDepressed, bsHot };
  4185. #pragma option pop
  4186.  
  4187. typedef void __fastcall (__closure *TPageScrollEvent)(System::TObject* Sender, Classes::TShiftState 
  4188.     Shift, int X, int Y, TPageScrollerOrientation Orientation, int &Delta);
  4189.  
  4190. class DELPHICLASS TPageScroller;
  4191. #pragma pack(push, 4)
  4192. class PASCALIMPLEMENTATION TPageScroller : public Controls::TWinControl 
  4193. {
  4194.     typedef Controls::TWinControl inherited;
  4195.     
  4196. private:
  4197.     bool FAutoScroll;
  4198.     int FButtonSize;
  4199.     Controls::TWinControl* FControl;
  4200.     bool FDragScroll;
  4201.     int FMargin;
  4202.     TPageScrollerOrientation FOrientation;
  4203.     int FPosition;
  4204.     int FPreferredSize;
  4205.     TPageScrollEvent FOnScroll;
  4206.     MESSAGE void __fastcall CNNotify(Messages::TWMNotify &Message);
  4207.     void __fastcall DoSetControl(Controls::TWinControl* Value);
  4208.     void __fastcall SetAutoScroll(bool Value);
  4209.     void __fastcall SetButtonSize(int Value);
  4210.     void __fastcall SetControl(Controls::TWinControl* Value);
  4211.     void __fastcall SetDragScroll(bool Value);
  4212.     void __fastcall SetMargin(int Value);
  4213.     void __fastcall SetOrientation(TPageScrollerOrientation Value);
  4214.     void __fastcall SetPosition(int Value);
  4215.     void __fastcall UpdatePreferredSize(void);
  4216.     HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TWMNCHitTest &Message);
  4217.     MESSAGE void __fastcall CMControlChange(Controls::TCMControlChange &Message);
  4218.     HIDESBASE MESSAGE void __fastcall CMColorChanged(Messages::TMessage &Message);
  4219.     
  4220. protected:
  4221.     virtual void __fastcall AlignControls(Controls::TControl* AControl, Windows::TRect &Rect);
  4222.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  4223.     virtual void __fastcall CreateWnd(void);
  4224.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  4225.         );
  4226.     DYNAMIC void __fastcall Scroll(Classes::TShiftState Shift, int X, int Y, TPageScrollerOrientation Orientation
  4227.         , int &Delta);
  4228.     
  4229. public:
  4230.     __fastcall virtual TPageScroller(Classes::TComponent* AOwner);
  4231.     TPageScrollerButtonState __fastcall GetButtonState(TPageScrollerButton Button);
  4232.     
  4233. __published:
  4234.     __property Align ;
  4235.     __property Anchors ;
  4236.     __property bool AutoScroll = {read=FAutoScroll, write=SetAutoScroll, nodefault};
  4237.     __property BorderWidth ;
  4238.     __property int ButtonSize = {read=FButtonSize, write=SetButtonSize, default=12};
  4239.     __property Color ;
  4240.     __property Constraints ;
  4241.     __property Controls::TWinControl* Control = {read=FControl, write=SetControl};
  4242.     __property DockSite ;
  4243.     __property DragCursor ;
  4244.     __property DragKind ;
  4245.     __property DragMode ;
  4246.     __property bool DragScroll = {read=FDragScroll, write=SetDragScroll, default=1};
  4247.     __property Enabled ;
  4248.     __property Font ;
  4249.     __property int Margin = {read=FMargin, write=SetMargin, default=0};
  4250.     __property TPageScrollerOrientation Orientation = {read=FOrientation, write=SetOrientation, default=0
  4251.         };
  4252.     __property ParentColor ;
  4253.     __property ParentFont ;
  4254.     __property ParentShowHint ;
  4255.     __property PopupMenu ;
  4256.     __property int Position = {read=FPosition, write=SetPosition, default=0};
  4257.     __property ShowHint ;
  4258.     __property TabOrder ;
  4259.     __property TabStop ;
  4260.     __property Visible ;
  4261.     __property OnClick ;
  4262.     __property OnDblClick ;
  4263.     __property OnDragDrop ;
  4264.     __property OnDragOver ;
  4265.     __property OnEndDock ;
  4266.     __property OnEndDrag ;
  4267.     __property OnEnter ;
  4268.     __property OnExit ;
  4269.     __property OnKeyDown ;
  4270.     __property OnKeyPress ;
  4271.     __property OnKeyUp ;
  4272.     __property OnResize ;
  4273.     __property TPageScrollEvent OnScroll = {read=FOnScroll, write=FOnScroll};
  4274.     __property OnStartDock ;
  4275.     __property OnStartDrag ;
  4276. public:
  4277.     #pragma option push -w-inl
  4278.     /* TWinControl.CreateParented */ inline __fastcall TPageScroller(HWND ParentWindow) : Controls::TWinControl(
  4279.         ParentWindow) { }
  4280.     #pragma option pop
  4281.     #pragma option push -w-inl
  4282.     /* TWinControl.Destroy */ inline __fastcall virtual ~TPageScroller(void) { }
  4283.     #pragma option pop
  4284.     
  4285. };
  4286.  
  4287. #pragma pack(pop)
  4288.  
  4289. //-- var, const, procedure ---------------------------------------------------
  4290. static const Shortint ColumnHeaderWidth = 0xfffffffe;
  4291. static const Shortint ColumnTextWidth = 0xffffffff;
  4292. static const Word CN_DROPDOWNCLOSED = 0x1400;
  4293. static const Word CN_BANDCHANGE = 0x1400;
  4294. static const int ComCtlVersionIE3 = 0x40046;
  4295. static const int ComCtlVersionIE4 = 0x40047;
  4296. static const int ComCtlVersionIE401 = 0x40048;
  4297. extern PACKAGE bool __fastcall InitCommonControl(int CC);
  4298. extern PACKAGE void __fastcall CheckCommonControl(int CC);
  4299. extern PACKAGE int __fastcall GetComCtlVersion(void);
  4300. extern PACKAGE void __fastcall CheckToolMenuDropdown(TToolButton* ToolButton);
  4301.  
  4302. }    /* namespace Comctrls */
  4303. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  4304. using namespace Comctrls;
  4305. #endif
  4306. #pragma option pop    // -w-
  4307.  
  4308. #pragma delphiheader end.
  4309. //-- end unit ----------------------------------------------------------------
  4310. #endif    // ComCtrls
  4311.