home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2000 May / MICD_2000_05.iso / CBuilder5 / INSTALL / DATA1.CAB / Program_Built_Files / Include / Vcl / dbctrls.hpp < prev    next >
C/C++ Source or Header  |  2000-02-01  |  57KB  |  1,626 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) 'DBCtrls.pas' rev: 5.00
  6.  
  7. #ifndef DBCtrlsHPP
  8. #define DBCtrlsHPP
  9.  
  10. #pragma delphiheader begin
  11. #pragma option push -w-
  12. #pragma option push -Vx
  13. #include <Db.hpp>    // Pascal unit
  14. #include <ComCtrls.hpp>    // Pascal unit
  15. #include <Buttons.hpp>    // Pascal unit
  16. #include <Mask.hpp>    // Pascal unit
  17. #include <ExtCtrls.hpp>    // Pascal unit
  18. #include <StdCtrls.hpp>    // Pascal unit
  19. #include <Menus.hpp>    // Pascal unit
  20. #include <Graphics.hpp>    // Pascal unit
  21. #include <Forms.hpp>    // Pascal unit
  22. #include <Controls.hpp>    // Pascal unit
  23. #include <Classes.hpp>    // Pascal unit
  24. #include <Messages.hpp>    // Pascal unit
  25. #include <SysUtils.hpp>    // Pascal unit
  26. #include <Windows.hpp>    // Pascal unit
  27. #include <SysInit.hpp>    // Pascal unit
  28. #include <System.hpp>    // Pascal unit
  29.  
  30. //-- user supplied -----------------------------------------------------------
  31.  
  32. namespace Dbctrls
  33. {
  34. //-- type declarations -------------------------------------------------------
  35. class DELPHICLASS TFieldDataLink;
  36. class PASCALIMPLEMENTATION TFieldDataLink : public Db::TDataLink 
  37. {
  38.     typedef Db::TDataLink inherited;
  39.     
  40. private:
  41.     Db::TField* FField;
  42.     AnsiString FFieldName;
  43.     Classes::TComponent* FControl;
  44.     bool FEditing;
  45.     bool FModified;
  46.     Classes::TNotifyEvent FOnDataChange;
  47.     Classes::TNotifyEvent FOnEditingChange;
  48.     Classes::TNotifyEvent FOnUpdateData;
  49.     Classes::TNotifyEvent FOnActiveChange;
  50.     bool __fastcall GetCanModify(void);
  51.     HIDESBASE void __fastcall SetEditing(bool Value);
  52.     void __fastcall SetField(Db::TField* Value);
  53.     void __fastcall SetFieldName(const AnsiString Value);
  54.     void __fastcall UpdateField(void);
  55.     void __fastcall UpdateRightToLeft(void);
  56.     
  57. protected:
  58.     virtual void __fastcall ActiveChanged(void);
  59.     virtual void __fastcall EditingChanged(void);
  60.     virtual void __fastcall FocusControl(Db::TFieldRef Field);
  61.     virtual void __fastcall LayoutChanged(void);
  62.     virtual void __fastcall RecordChanged(Db::TField* Field);
  63.     virtual void __fastcall UpdateData(void);
  64.     
  65. public:
  66.     __fastcall TFieldDataLink(void);
  67.     HIDESBASE bool __fastcall Edit(void);
  68.     void __fastcall Modified(void);
  69.     void __fastcall Reset(void);
  70.     __property bool CanModify = {read=GetCanModify, nodefault};
  71.     __property Classes::TComponent* Control = {read=FControl, write=FControl};
  72.     __property bool Editing = {read=FEditing, nodefault};
  73.     __property Db::TField* Field = {read=FField};
  74.     __property AnsiString FieldName = {read=FFieldName, write=SetFieldName};
  75.     __property Classes::TNotifyEvent OnDataChange = {read=FOnDataChange, write=FOnDataChange};
  76.     __property Classes::TNotifyEvent OnEditingChange = {read=FOnEditingChange, write=FOnEditingChange};
  77.         
  78.     __property Classes::TNotifyEvent OnUpdateData = {read=FOnUpdateData, write=FOnUpdateData};
  79.     __property Classes::TNotifyEvent OnActiveChange = {read=FOnActiveChange, write=FOnActiveChange};
  80. public:
  81.         
  82.     #pragma option push -w-inl
  83.     /* TDataLink.Destroy */ inline __fastcall virtual ~TFieldDataLink(void) { }
  84.     #pragma option pop
  85.     
  86. };
  87.  
  88.  
  89. class DELPHICLASS TPaintControl;
  90. class PASCALIMPLEMENTATION TPaintControl : public System::TObject 
  91. {
  92.     typedef System::TObject inherited;
  93.     
  94. private:
  95.     Controls::TWinControl* FOwner;
  96.     AnsiString FClassName;
  97.     HWND FHandle;
  98.     void *FObjectInstance;
  99.     void *FDefWindowProc;
  100.     bool FCtl3dButton;
  101.     HWND __fastcall GetHandle(void);
  102.     void __fastcall SetCtl3DButton(bool Value);
  103.     void __fastcall WndProc(Messages::TMessage &Message);
  104.     
  105. public:
  106.     __fastcall TPaintControl(Controls::TWinControl* AOwner, const AnsiString ClassName);
  107.     __fastcall virtual ~TPaintControl(void);
  108.     void __fastcall DestroyHandle(void);
  109.     __property bool Ctl3DButton = {read=FCtl3dButton, write=SetCtl3DButton, nodefault};
  110.     __property HWND Handle = {read=GetHandle, nodefault};
  111. };
  112.  
  113.  
  114. class DELPHICLASS TDBEdit;
  115. class PASCALIMPLEMENTATION TDBEdit : public Mask::TCustomMaskEdit 
  116. {
  117.     typedef Mask::TCustomMaskEdit inherited;
  118.     
  119. private:
  120.     TFieldDataLink* FDataLink;
  121.     Controls::TControlCanvas* FCanvas;
  122.     Classes::TAlignment FAlignment;
  123.     bool FFocused;
  124.     void __fastcall ActiveChange(System::TObject* Sender);
  125.     void __fastcall DataChange(System::TObject* Sender);
  126.     void __fastcall EditingChange(System::TObject* Sender);
  127.     AnsiString __fastcall GetDataField();
  128.     Db::TDataSource* __fastcall GetDataSource(void);
  129.     Db::TField* __fastcall GetField(void);
  130.     bool __fastcall GetReadOnly(void);
  131.     Windows::TPoint __fastcall GetTextMargins();
  132.     void __fastcall ResetMaxLength(void);
  133.     void __fastcall SetDataField(const AnsiString Value);
  134.     void __fastcall SetDataSource(Db::TDataSource* Value);
  135.     void __fastcall SetFocused(bool Value);
  136.     HIDESBASE void __fastcall SetReadOnly(bool Value);
  137.     void __fastcall UpdateData(System::TObject* Sender);
  138.     HIDESBASE MESSAGE void __fastcall WMCut(Messages::TMessage &Message);
  139.     HIDESBASE MESSAGE void __fastcall WMPaste(Messages::TMessage &Message);
  140.     MESSAGE void __fastcall WMUndo(Messages::TMessage &Message);
  141.     HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  142.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  143.     HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  144.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  145.     
  146. protected:
  147.     DYNAMIC void __fastcall Change(void);
  148.     virtual bool __fastcall EditCanModify(void);
  149.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  150.     DYNAMIC void __fastcall KeyPress(char &Key);
  151.     virtual void __fastcall Loaded(void);
  152.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  153.         );
  154.     virtual void __fastcall Reset(void);
  155.     
  156. public:
  157.     __fastcall virtual TDBEdit(Classes::TComponent* AOwner);
  158.     __fastcall virtual ~TDBEdit(void);
  159.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  160.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  161.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  162.     __property Db::TField* Field = {read=GetField};
  163.     
  164. __published:
  165.     __property Anchors ;
  166.     __property AutoSelect ;
  167.     __property AutoSize ;
  168.     __property BiDiMode ;
  169.     __property BorderStyle ;
  170.     __property CharCase ;
  171.     __property Color ;
  172.     __property Constraints ;
  173.     __property Ctl3D ;
  174.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  175.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  176.     __property DragCursor ;
  177.     __property DragKind ;
  178.     __property DragMode ;
  179.     __property Enabled ;
  180.     __property Font ;
  181.     __property ImeMode ;
  182.     __property ImeName ;
  183.     __property MaxLength ;
  184.     __property ParentBiDiMode ;
  185.     __property ParentColor ;
  186.     __property ParentCtl3D ;
  187.     __property ParentFont ;
  188.     __property ParentShowHint ;
  189.     __property PasswordChar ;
  190.     __property PopupMenu ;
  191.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  192.     __property ShowHint ;
  193.     __property TabOrder ;
  194.     __property TabStop ;
  195.     __property Visible ;
  196.     __property OnChange ;
  197.     __property OnClick ;
  198.     __property OnContextPopup ;
  199.     __property OnDblClick ;
  200.     __property OnDragDrop ;
  201.     __property OnDragOver ;
  202.     __property OnEndDock ;
  203.     __property OnEndDrag ;
  204.     __property OnEnter ;
  205.     __property OnExit ;
  206.     __property OnKeyDown ;
  207.     __property OnKeyPress ;
  208.     __property OnKeyUp ;
  209.     __property OnMouseDown ;
  210.     __property OnMouseMove ;
  211.     __property OnMouseUp ;
  212.     __property OnStartDock ;
  213.     __property OnStartDrag ;
  214. public:
  215.     #pragma option push -w-inl
  216.     /* TWinControl.CreateParented */ inline __fastcall TDBEdit(HWND ParentWindow) : Mask::TCustomMaskEdit(
  217.         ParentWindow) { }
  218.     #pragma option pop
  219.     
  220. };
  221.  
  222.  
  223. class DELPHICLASS TDBText;
  224. class PASCALIMPLEMENTATION TDBText : public Stdctrls::TCustomLabel 
  225. {
  226.     typedef Stdctrls::TCustomLabel inherited;
  227.     
  228. private:
  229.     TFieldDataLink* FDataLink;
  230.     void __fastcall DataChange(System::TObject* Sender);
  231.     AnsiString __fastcall GetDataField();
  232.     Db::TDataSource* __fastcall GetDataSource(void);
  233.     Db::TField* __fastcall GetField(void);
  234.     AnsiString __fastcall GetFieldText();
  235.     void __fastcall SetDataField(const AnsiString Value);
  236.     void __fastcall SetDataSource(Db::TDataSource* Value);
  237.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  238.     
  239. protected:
  240.     virtual AnsiString __fastcall GetLabelText();
  241.     virtual void __fastcall Loaded(void);
  242.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  243.         );
  244.     virtual void __fastcall SetAutoSize(bool Value);
  245.     
  246. public:
  247.     __fastcall virtual TDBText(Classes::TComponent* AOwner);
  248.     __fastcall virtual ~TDBText(void);
  249.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  250.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  251.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  252.     __property Db::TField* Field = {read=GetField};
  253.     
  254. __published:
  255.     __property Align ;
  256.     __property Alignment ;
  257.     __property Anchors ;
  258.     __property AutoSize ;
  259.     __property BiDiMode ;
  260.     __property Color ;
  261.     __property Constraints ;
  262.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  263.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  264.     __property DragCursor ;
  265.     __property DragKind ;
  266.     __property DragMode ;
  267.     __property Enabled ;
  268.     __property Font ;
  269.     __property ParentBiDiMode ;
  270.     __property ParentColor ;
  271.     __property ParentFont ;
  272.     __property ParentShowHint ;
  273.     __property PopupMenu ;
  274.     __property Transparent ;
  275.     __property ShowHint ;
  276.     __property Visible ;
  277.     __property WordWrap ;
  278.     __property OnClick ;
  279.     __property OnContextPopup ;
  280.     __property OnDblClick ;
  281.     __property OnDragDrop ;
  282.     __property OnDragOver ;
  283.     __property OnEndDock ;
  284.     __property OnEndDrag ;
  285.     __property OnMouseDown ;
  286.     __property OnMouseMove ;
  287.     __property OnMouseUp ;
  288.     __property OnStartDock ;
  289.     __property OnStartDrag ;
  290. };
  291.  
  292.  
  293. class DELPHICLASS TDBCheckBox;
  294. class PASCALIMPLEMENTATION TDBCheckBox : public Stdctrls::TCustomCheckBox 
  295. {
  296.     typedef Stdctrls::TCustomCheckBox inherited;
  297.     
  298. private:
  299.     TFieldDataLink* FDataLink;
  300.     AnsiString FValueCheck;
  301.     AnsiString FValueUncheck;
  302.     TPaintControl* FPaintControl;
  303.     void __fastcall DataChange(System::TObject* Sender);
  304.     AnsiString __fastcall GetDataField();
  305.     Db::TDataSource* __fastcall GetDataSource(void);
  306.     Db::TField* __fastcall GetField(void);
  307.     Stdctrls::TCheckBoxState __fastcall GetFieldState(void);
  308.     bool __fastcall GetReadOnly(void);
  309.     void __fastcall SetDataField(const AnsiString Value);
  310.     void __fastcall SetDataSource(Db::TDataSource* Value);
  311.     void __fastcall SetReadOnly(bool Value);
  312.     void __fastcall SetValueCheck(const AnsiString Value);
  313.     void __fastcall SetValueUncheck(const AnsiString Value);
  314.     void __fastcall UpdateData(System::TObject* Sender);
  315.     bool __fastcall ValueMatch(const AnsiString ValueList, const AnsiString Value);
  316.     HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  317.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  318.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  319.     
  320. protected:
  321.     virtual void __fastcall Toggle(void);
  322.     DYNAMIC void __fastcall KeyPress(char &Key);
  323.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  324.         );
  325.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  326.     
  327. public:
  328.     __fastcall virtual TDBCheckBox(Classes::TComponent* AOwner);
  329.     __fastcall virtual ~TDBCheckBox(void);
  330.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  331.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  332.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  333.     __property Checked ;
  334.     __property Db::TField* Field = {read=GetField};
  335.     __property State ;
  336.     
  337. __published:
  338.     __property Action ;
  339.     __property Alignment ;
  340.     __property AllowGrayed ;
  341.     __property Anchors ;
  342.     __property BiDiMode ;
  343.     __property Caption ;
  344.     __property Color ;
  345.     __property Constraints ;
  346.     __property Ctl3D ;
  347.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  348.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  349.     __property DragCursor ;
  350.     __property DragKind ;
  351.     __property DragMode ;
  352.     __property Enabled ;
  353.     __property Font ;
  354.     __property ParentBiDiMode ;
  355.     __property ParentColor ;
  356.     __property ParentCtl3D ;
  357.     __property ParentFont ;
  358.     __property ParentShowHint ;
  359.     __property PopupMenu ;
  360.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  361.     __property ShowHint ;
  362.     __property TabOrder ;
  363.     __property TabStop ;
  364.     __property AnsiString ValueChecked = {read=FValueCheck, write=SetValueCheck};
  365.     __property AnsiString ValueUnchecked = {read=FValueUncheck, write=SetValueUncheck};
  366.     __property Visible ;
  367.     __property OnClick ;
  368.     __property OnContextPopup ;
  369.     __property OnDragDrop ;
  370.     __property OnDragOver ;
  371.     __property OnEndDock ;
  372.     __property OnEndDrag ;
  373.     __property OnEnter ;
  374.     __property OnExit ;
  375.     __property OnKeyDown ;
  376.     __property OnKeyPress ;
  377.     __property OnKeyUp ;
  378.     __property OnMouseDown ;
  379.     __property OnMouseMove ;
  380.     __property OnMouseUp ;
  381.     __property OnStartDock ;
  382.     __property OnStartDrag ;
  383. public:
  384.     #pragma option push -w-inl
  385.     /* TWinControl.CreateParented */ inline __fastcall TDBCheckBox(HWND ParentWindow) : Stdctrls::TCustomCheckBox(
  386.         ParentWindow) { }
  387.     #pragma option pop
  388.     
  389. };
  390.  
  391.  
  392. class DELPHICLASS TDBComboBox;
  393. class PASCALIMPLEMENTATION TDBComboBox : public Stdctrls::TCustomComboBox 
  394. {
  395.     typedef Stdctrls::TCustomComboBox inherited;
  396.     
  397. private:
  398.     TFieldDataLink* FDataLink;
  399.     TPaintControl* FPaintControl;
  400.     void __fastcall DataChange(System::TObject* Sender);
  401.     void __fastcall EditingChange(System::TObject* Sender);
  402.     AnsiString __fastcall GetComboText();
  403.     AnsiString __fastcall GetDataField();
  404.     Db::TDataSource* __fastcall GetDataSource(void);
  405.     Db::TField* __fastcall GetField(void);
  406.     bool __fastcall GetReadOnly(void);
  407.     void __fastcall SetComboText(const AnsiString Value);
  408.     void __fastcall SetDataField(const AnsiString Value);
  409.     void __fastcall SetDataSource(Db::TDataSource* Value);
  410.     void __fastcall SetEditReadOnly(void);
  411.     HIDESBASE void __fastcall SetItems(Classes::TStrings* Value);
  412.     void __fastcall SetReadOnly(bool Value);
  413.     void __fastcall UpdateData(System::TObject* Sender);
  414.     HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  415.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  416.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  417.     HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  418.     
  419. protected:
  420.     DYNAMIC void __fastcall Change(void);
  421.     DYNAMIC void __fastcall Click(void);
  422.     virtual void __fastcall ComboWndProc(Messages::TMessage &Message, HWND ComboWnd, void * ComboProc);
  423.         
  424.     virtual void __fastcall CreateWnd(void);
  425.     DYNAMIC void __fastcall DropDown(void);
  426.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  427.     DYNAMIC void __fastcall KeyPress(char &Key);
  428.     virtual void __fastcall Loaded(void);
  429.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  430.         );
  431.     virtual void __fastcall SetStyle(Stdctrls::TComboBoxStyle Value);
  432.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  433.     
  434. public:
  435.     __fastcall virtual TDBComboBox(Classes::TComponent* AOwner);
  436.     __fastcall virtual ~TDBComboBox(void);
  437.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  438.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  439.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  440.     __property Db::TField* Field = {read=GetField};
  441.     __property Text ;
  442.     
  443. __published:
  444.     __property Style ;
  445.     __property Anchors ;
  446.     __property BiDiMode ;
  447.     __property Color ;
  448.     __property Constraints ;
  449.     __property Ctl3D ;
  450.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  451.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  452.     __property DragCursor ;
  453.     __property DragKind ;
  454.     __property DragMode ;
  455.     __property DropDownCount ;
  456.     __property Enabled ;
  457.     __property Font ;
  458.     __property ImeMode ;
  459.     __property ImeName ;
  460.     __property ItemHeight ;
  461.     __property Items  = {write=SetItems};
  462.     __property ParentBiDiMode ;
  463.     __property ParentColor ;
  464.     __property ParentCtl3D ;
  465.     __property ParentFont ;
  466.     __property ParentShowHint ;
  467.     __property PopupMenu ;
  468.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  469.     __property ShowHint ;
  470.     __property Sorted ;
  471.     __property TabOrder ;
  472.     __property TabStop ;
  473.     __property Visible ;
  474.     __property OnChange ;
  475.     __property OnClick ;
  476.     __property OnContextPopup ;
  477.     __property OnDblClick ;
  478.     __property OnDragDrop ;
  479.     __property OnDragOver ;
  480.     __property OnDrawItem ;
  481.     __property OnDropDown ;
  482.     __property OnEndDock ;
  483.     __property OnEndDrag ;
  484.     __property OnEnter ;
  485.     __property OnExit ;
  486.     __property OnKeyDown ;
  487.     __property OnKeyPress ;
  488.     __property OnKeyUp ;
  489.     __property OnMeasureItem ;
  490.     __property OnStartDock ;
  491.     __property OnStartDrag ;
  492. public:
  493.     #pragma option push -w-inl
  494.     /* TWinControl.CreateParented */ inline __fastcall TDBComboBox(HWND ParentWindow) : Stdctrls::TCustomComboBox(
  495.         ParentWindow) { }
  496.     #pragma option pop
  497.     
  498. };
  499.  
  500.  
  501. class DELPHICLASS TDBListBox;
  502. class PASCALIMPLEMENTATION TDBListBox : public Stdctrls::TCustomListBox 
  503. {
  504.     typedef Stdctrls::TCustomListBox inherited;
  505.     
  506. private:
  507.     TFieldDataLink* FDataLink;
  508.     void __fastcall DataChange(System::TObject* Sender);
  509.     void __fastcall UpdateData(System::TObject* Sender);
  510.     AnsiString __fastcall GetDataField();
  511.     Db::TDataSource* __fastcall GetDataSource(void);
  512.     Db::TField* __fastcall GetField(void);
  513.     bool __fastcall GetReadOnly(void);
  514.     void __fastcall SetDataField(const AnsiString Value);
  515.     void __fastcall SetDataSource(Db::TDataSource* Value);
  516.     void __fastcall SetReadOnly(bool Value);
  517.     HIDESBASE void __fastcall SetItems(Classes::TStrings* Value);
  518.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  519.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  520.     
  521. protected:
  522.     DYNAMIC void __fastcall Click(void);
  523.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  524.     DYNAMIC void __fastcall KeyPress(char &Key);
  525.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  526.         );
  527.     
  528. public:
  529.     __fastcall virtual TDBListBox(Classes::TComponent* AOwner);
  530.     __fastcall virtual ~TDBListBox(void);
  531.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  532.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  533.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  534.     __property Db::TField* Field = {read=GetField};
  535.     
  536. __published:
  537.     __property Align ;
  538.     __property Anchors ;
  539.     __property BiDiMode ;
  540.     __property BorderStyle ;
  541.     __property Color ;
  542.     __property Constraints ;
  543.     __property Ctl3D ;
  544.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  545.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  546.     __property DragCursor ;
  547.     __property DragKind ;
  548.     __property DragMode ;
  549.     __property Enabled ;
  550.     __property Font ;
  551.     __property ImeMode ;
  552.     __property ImeName ;
  553.     __property IntegralHeight ;
  554.     __property ItemHeight ;
  555.     __property Items  = {write=SetItems};
  556.     __property ParentBiDiMode ;
  557.     __property ParentColor ;
  558.     __property ParentCtl3D ;
  559.     __property ParentFont ;
  560.     __property ParentShowHint ;
  561.     __property PopupMenu ;
  562.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  563.     __property ShowHint ;
  564.     __property Style ;
  565.     __property TabOrder ;
  566.     __property TabStop ;
  567.     __property Visible ;
  568.     __property OnClick ;
  569.     __property OnContextPopup ;
  570.     __property OnDblClick ;
  571.     __property OnDragDrop ;
  572.     __property OnDragOver ;
  573.     __property OnDrawItem ;
  574.     __property OnEndDock ;
  575.     __property OnEndDrag ;
  576.     __property OnEnter ;
  577.     __property OnExit ;
  578.     __property OnKeyDown ;
  579.     __property OnKeyPress ;
  580.     __property OnKeyUp ;
  581.     __property OnMeasureItem ;
  582.     __property OnMouseDown ;
  583.     __property OnMouseMove ;
  584.     __property OnMouseUp ;
  585.     __property OnStartDock ;
  586.     __property OnStartDrag ;
  587. public:
  588.     #pragma option push -w-inl
  589.     /* TWinControl.CreateParented */ inline __fastcall TDBListBox(HWND ParentWindow) : Stdctrls::TCustomListBox(
  590.         ParentWindow) { }
  591.     #pragma option pop
  592.     
  593. };
  594.  
  595.  
  596. class DELPHICLASS TDBRadioGroup;
  597. class PASCALIMPLEMENTATION TDBRadioGroup : public Extctrls::TCustomRadioGroup 
  598. {
  599.     typedef Extctrls::TCustomRadioGroup inherited;
  600.     
  601. private:
  602.     TFieldDataLink* FDataLink;
  603.     AnsiString FValue;
  604.     Classes::TStrings* FValues;
  605.     bool FInSetValue;
  606.     Classes::TNotifyEvent FOnChange;
  607.     void __fastcall DataChange(System::TObject* Sender);
  608.     void __fastcall UpdateData(System::TObject* Sender);
  609.     AnsiString __fastcall GetDataField();
  610.     Db::TDataSource* __fastcall GetDataSource(void);
  611.     Db::TField* __fastcall GetField(void);
  612.     bool __fastcall GetReadOnly(void);
  613.     AnsiString __fastcall GetButtonValue(int Index);
  614.     void __fastcall SetDataField(const AnsiString Value);
  615.     void __fastcall SetDataSource(Db::TDataSource* Value);
  616.     void __fastcall SetReadOnly(bool Value);
  617.     void __fastcall SetValue(const AnsiString Value);
  618.     HIDESBASE void __fastcall SetItems(Classes::TStrings* Value);
  619.     void __fastcall SetValues(Classes::TStrings* Value);
  620.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  621.     
  622. protected:
  623.     DYNAMIC void __fastcall Change(void);
  624.     DYNAMIC void __fastcall Click(void);
  625.     DYNAMIC void __fastcall KeyPress(char &Key);
  626.     virtual bool __fastcall CanModify(void);
  627.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  628.         );
  629.     __property TFieldDataLink* DataLink = {read=FDataLink};
  630.     
  631. public:
  632.     __fastcall virtual TDBRadioGroup(Classes::TComponent* AOwner);
  633.     __fastcall virtual ~TDBRadioGroup(void);
  634.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  635.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  636.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  637.     __property Db::TField* Field = {read=GetField};
  638.     __property ItemIndex ;
  639.     __property AnsiString Value = {read=FValue, write=SetValue};
  640.     
  641. __published:
  642.     __property Align ;
  643.     __property Anchors ;
  644.     __property BiDiMode ;
  645.     __property Caption ;
  646.     __property Color ;
  647.     __property Columns ;
  648.     __property Constraints ;
  649.     __property Ctl3D ;
  650.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  651.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  652.     __property DragCursor ;
  653.     __property DragKind ;
  654.     __property DragMode ;
  655.     __property Enabled ;
  656.     __property Font ;
  657.     __property Items  = {write=SetItems};
  658.     __property ParentBiDiMode ;
  659.     __property ParentColor ;
  660.     __property ParentCtl3D ;
  661.     __property ParentFont ;
  662.     __property ParentShowHint ;
  663.     __property PopupMenu ;
  664.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  665.     __property ShowHint ;
  666.     __property TabOrder ;
  667.     __property TabStop ;
  668.     __property Classes::TStrings* Values = {read=FValues, write=SetValues};
  669.     __property Visible ;
  670.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  671.     __property OnClick ;
  672.     __property OnContextPopup ;
  673.     __property OnDragDrop ;
  674.     __property OnDragOver ;
  675.     __property OnEndDock ;
  676.     __property OnEndDrag ;
  677.     __property OnEnter ;
  678.     __property OnExit ;
  679.     __property OnStartDock ;
  680.     __property OnStartDrag ;
  681. public:
  682.     #pragma option push -w-inl
  683.     /* TWinControl.CreateParented */ inline __fastcall TDBRadioGroup(HWND ParentWindow) : Extctrls::TCustomRadioGroup(
  684.         ParentWindow) { }
  685.     #pragma option pop
  686.     
  687. };
  688.  
  689.  
  690. class DELPHICLASS TDBMemo;
  691. class PASCALIMPLEMENTATION TDBMemo : public Stdctrls::TCustomMemo 
  692. {
  693.     typedef Stdctrls::TCustomMemo inherited;
  694.     
  695. private:
  696.     TFieldDataLink* FDataLink;
  697.     bool FAutoDisplay;
  698.     bool FFocused;
  699.     bool FMemoLoaded;
  700.     TPaintControl* FPaintControl;
  701.     void __fastcall DataChange(System::TObject* Sender);
  702.     void __fastcall EditingChange(System::TObject* Sender);
  703.     AnsiString __fastcall GetDataField();
  704.     Db::TDataSource* __fastcall GetDataSource(void);
  705.     Db::TField* __fastcall GetField(void);
  706.     bool __fastcall GetReadOnly(void);
  707.     void __fastcall SetDataField(const AnsiString Value);
  708.     void __fastcall SetDataSource(Db::TDataSource* Value);
  709.     HIDESBASE void __fastcall SetReadOnly(bool Value);
  710.     void __fastcall SetAutoDisplay(bool Value);
  711.     void __fastcall SetFocused(bool Value);
  712.     void __fastcall UpdateData(System::TObject* Sender);
  713.     MESSAGE void __fastcall WMCut(Messages::TMessage &Message);
  714.     MESSAGE void __fastcall WMPaste(Messages::TMessage &Message);
  715.     MESSAGE void __fastcall WMUndo(Messages::TMessage &Message);
  716.     HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  717.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  718.     HIDESBASE MESSAGE void __fastcall WMLButtonDblClk(Messages::TWMMouse &Message);
  719.     HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  720.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  721.     
  722. protected:
  723.     DYNAMIC void __fastcall Change(void);
  724.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  725.     DYNAMIC void __fastcall KeyPress(char &Key);
  726.     virtual void __fastcall Loaded(void);
  727.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  728.         );
  729.     virtual void __fastcall WndProc(Messages::TMessage &Message);
  730.     
  731. public:
  732.     __fastcall virtual TDBMemo(Classes::TComponent* AOwner);
  733.     __fastcall virtual ~TDBMemo(void);
  734.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  735.     virtual void __fastcall LoadMemo(void);
  736.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  737.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  738.     __property Db::TField* Field = {read=GetField};
  739.     
  740. __published:
  741.     __property Align ;
  742.     __property Alignment ;
  743.     __property Anchors ;
  744.     __property bool AutoDisplay = {read=FAutoDisplay, write=SetAutoDisplay, default=1};
  745.     __property BiDiMode ;
  746.     __property BorderStyle ;
  747.     __property Color ;
  748.     __property Constraints ;
  749.     __property Ctl3D ;
  750.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  751.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  752.     __property DragCursor ;
  753.     __property DragKind ;
  754.     __property DragMode ;
  755.     __property Enabled ;
  756.     __property Font ;
  757.     __property ImeMode ;
  758.     __property ImeName ;
  759.     __property MaxLength ;
  760.     __property ParentBiDiMode ;
  761.     __property ParentColor ;
  762.     __property ParentCtl3D ;
  763.     __property ParentFont ;
  764.     __property ParentShowHint ;
  765.     __property PopupMenu ;
  766.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  767.     __property ScrollBars ;
  768.     __property ShowHint ;
  769.     __property TabOrder ;
  770.     __property TabStop ;
  771.     __property Visible ;
  772.     __property WantTabs ;
  773.     __property WordWrap ;
  774.     __property OnChange ;
  775.     __property OnClick ;
  776.     __property OnContextPopup ;
  777.     __property OnDblClick ;
  778.     __property OnDragDrop ;
  779.     __property OnDragOver ;
  780.     __property OnEndDock ;
  781.     __property OnEndDrag ;
  782.     __property OnEnter ;
  783.     __property OnExit ;
  784.     __property OnKeyDown ;
  785.     __property OnKeyPress ;
  786.     __property OnKeyUp ;
  787.     __property OnMouseDown ;
  788.     __property OnMouseMove ;
  789.     __property OnMouseUp ;
  790.     __property OnStartDock ;
  791.     __property OnStartDrag ;
  792. public:
  793.     #pragma option push -w-inl
  794.     /* TWinControl.CreateParented */ inline __fastcall TDBMemo(HWND ParentWindow) : Stdctrls::TCustomMemo(
  795.         ParentWindow) { }
  796.     #pragma option pop
  797.     
  798. };
  799.  
  800.  
  801. class DELPHICLASS TDBImage;
  802. class PASCALIMPLEMENTATION TDBImage : public Controls::TCustomControl 
  803. {
  804.     typedef Controls::TCustomControl inherited;
  805.     
  806. private:
  807.     TFieldDataLink* FDataLink;
  808.     Graphics::TPicture* FPicture;
  809.     Forms::TFormBorderStyle FBorderStyle;
  810.     bool FAutoDisplay;
  811.     bool FStretch;
  812.     bool FCenter;
  813.     bool FPictureLoaded;
  814.     bool FQuickDraw;
  815.     void __fastcall DataChange(System::TObject* Sender);
  816.     AnsiString __fastcall GetDataField();
  817.     Db::TDataSource* __fastcall GetDataSource(void);
  818.     Db::TField* __fastcall GetField(void);
  819.     bool __fastcall GetReadOnly(void);
  820.     void __fastcall PictureChanged(System::TObject* Sender);
  821.     void __fastcall SetAutoDisplay(bool Value);
  822.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  823.     void __fastcall SetCenter(bool Value);
  824.     void __fastcall SetDataField(const AnsiString Value);
  825.     void __fastcall SetDataSource(Db::TDataSource* Value);
  826.     void __fastcall SetPicture(Graphics::TPicture* Value);
  827.     void __fastcall SetReadOnly(bool Value);
  828.     void __fastcall SetStretch(bool Value);
  829.     void __fastcall UpdateData(System::TObject* Sender);
  830.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  831.     HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  832.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  833.     MESSAGE void __fastcall CMTextChanged(Messages::TMessage &Message);
  834.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  835.     HIDESBASE MESSAGE void __fastcall WMLButtonDblClk(Messages::TWMMouse &Message);
  836.     MESSAGE void __fastcall WMCut(Messages::TMessage &Message);
  837.     MESSAGE void __fastcall WMCopy(Messages::TMessage &Message);
  838.     MESSAGE void __fastcall WMPaste(Messages::TMessage &Message);
  839.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TMessage &Message);
  840.     
  841. protected:
  842.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  843.     DYNAMIC HPALETTE __fastcall GetPalette(void);
  844.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  845.     DYNAMIC void __fastcall KeyPress(char &Key);
  846.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  847.         );
  848.     virtual void __fastcall Paint(void);
  849.     
  850. public:
  851.     __fastcall virtual TDBImage(Classes::TComponent* AOwner);
  852.     __fastcall virtual ~TDBImage(void);
  853.     void __fastcall CopyToClipboard(void);
  854.     void __fastcall CutToClipboard(void);
  855.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  856.     void __fastcall LoadPicture(void);
  857.     void __fastcall PasteFromClipboard(void);
  858.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  859.     __property Db::TField* Field = {read=GetField};
  860.     __property Graphics::TPicture* Picture = {read=FPicture, write=SetPicture};
  861.     
  862. __published:
  863.     __property Align ;
  864.     __property Anchors ;
  865.     __property bool AutoDisplay = {read=FAutoDisplay, write=SetAutoDisplay, default=1};
  866.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=1};
  867.     __property bool Center = {read=FCenter, write=SetCenter, default=1};
  868.     __property Color ;
  869.     __property Constraints ;
  870.     __property Ctl3D ;
  871.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  872.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  873.     __property DragCursor ;
  874.     __property DragKind ;
  875.     __property DragMode ;
  876.     __property Enabled ;
  877.     __property Font ;
  878.     __property ParentColor ;
  879.     __property ParentCtl3D ;
  880.     __property ParentFont ;
  881.     __property ParentShowHint ;
  882.     __property PopupMenu ;
  883.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  884.     __property bool QuickDraw = {read=FQuickDraw, write=FQuickDraw, default=1};
  885.     __property ShowHint ;
  886.     __property bool Stretch = {read=FStretch, write=SetStretch, default=0};
  887.     __property TabOrder ;
  888.     __property TabStop ;
  889.     __property Visible ;
  890.     __property OnClick ;
  891.     __property OnContextPopup ;
  892.     __property OnDblClick ;
  893.     __property OnDragDrop ;
  894.     __property OnDragOver ;
  895.     __property OnEndDock ;
  896.     __property OnEndDrag ;
  897.     __property OnEnter ;
  898.     __property OnExit ;
  899.     __property OnKeyDown ;
  900.     __property OnKeyPress ;
  901.     __property OnKeyUp ;
  902.     __property OnMouseDown ;
  903.     __property OnMouseMove ;
  904.     __property OnMouseUp ;
  905.     __property OnStartDock ;
  906.     __property OnStartDrag ;
  907. public:
  908.     #pragma option push -w-inl
  909.     /* TWinControl.CreateParented */ inline __fastcall TDBImage(HWND ParentWindow) : Controls::TCustomControl(
  910.         ParentWindow) { }
  911.     #pragma option pop
  912.     
  913. };
  914.  
  915.  
  916. #pragma option push -b-
  917. enum TNavGlyph { ngEnabled, ngDisabled };
  918. #pragma option pop
  919.  
  920. #pragma option push -b-
  921. enum TNavigateBtn { nbFirst, nbPrior, nbNext, nbLast, nbInsert, nbDelete, nbEdit, nbPost, nbCancel, 
  922.     nbRefresh };
  923. #pragma option pop
  924.  
  925. typedef Set<TNavigateBtn, nbFirst, nbRefresh>  TButtonSet;
  926.  
  927. #pragma option push -b-
  928. enum DBCtrls__11 { nsAllowTimer, nsFocusRect };
  929. #pragma option pop
  930.  
  931. typedef Set<DBCtrls__11, nsAllowTimer, nsFocusRect>  TNavButtonStyle;
  932.  
  933. typedef void __fastcall (__closure *ENavClick)(System::TObject* Sender, TNavigateBtn Button);
  934.  
  935. class DELPHICLASS TDBNavigator;
  936. class DELPHICLASS TNavDataLink;
  937. class PASCALIMPLEMENTATION TNavDataLink : public Db::TDataLink 
  938. {
  939.     typedef Db::TDataLink inherited;
  940.     
  941. private:
  942.     TDBNavigator* FNavigator;
  943.     
  944. protected:
  945.     virtual void __fastcall EditingChanged(void);
  946.     virtual void __fastcall DataSetChanged(void);
  947.     virtual void __fastcall ActiveChanged(void);
  948.     
  949. public:
  950.     __fastcall TNavDataLink(TDBNavigator* ANav);
  951.     __fastcall virtual ~TNavDataLink(void);
  952. };
  953.  
  954.  
  955. class DELPHICLASS TNavButton;
  956. class PASCALIMPLEMENTATION TDBNavigator : public Extctrls::TCustomPanel 
  957. {
  958.     typedef Extctrls::TCustomPanel inherited;
  959.     
  960. private:
  961.     TNavDataLink* FDataLink;
  962.     TButtonSet FVisibleButtons;
  963.     Classes::TStrings* FHints;
  964.     Classes::TStrings* FDefHints;
  965.     int ButtonWidth;
  966.     Windows::TPoint MinBtnSize;
  967.     ENavClick FOnNavClick;
  968.     ENavClick FBeforeAction;
  969.     TNavigateBtn FocusedButton;
  970.     bool FConfirmDelete;
  971.     bool FFlat;
  972.     void __fastcall BtnMouseDown(System::TObject* Sender, Controls::TMouseButton Button, Classes::TShiftState 
  973.         Shift, int X, int Y);
  974.     void __fastcall ClickHandler(System::TObject* Sender);
  975.     Db::TDataSource* __fastcall GetDataSource(void);
  976.     Classes::TStrings* __fastcall GetHints(void);
  977.     void __fastcall HintsChanged(System::TObject* Sender);
  978.     void __fastcall InitButtons(void);
  979.     void __fastcall InitHints(void);
  980.     void __fastcall SetDataSource(Db::TDataSource* Value);
  981.     void __fastcall SetFlat(bool Value);
  982.     void __fastcall SetHints(Classes::TStrings* Value);
  983.     void __fastcall SetSize(int &W, int &H);
  984.     HIDESBASE void __fastcall SetVisible(TButtonSet Value);
  985.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  986.     HIDESBASE MESSAGE void __fastcall WMSetFocus(Messages::TWMSetFocus &Message);
  987.     HIDESBASE MESSAGE void __fastcall WMKillFocus(Messages::TWMKillFocus &Message);
  988.     MESSAGE void __fastcall WMGetDlgCode(Messages::TWMNoParams &Message);
  989.     HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
  990.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanging(Messages::TWMWindowPosMsg &Message);
  991.     
  992. protected:
  993.     TNavButton* Buttons[10];
  994.     void __fastcall DataChanged(void);
  995.     void __fastcall EditingChanged(void);
  996.     void __fastcall ActiveChanged(void);
  997.     virtual void __fastcall Loaded(void);
  998.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  999.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1000.         );
  1001.     DYNAMIC void __fastcall GetChildren(Classes::TGetChildProc Proc, Classes::TComponent* Root);
  1002.     void __fastcall CalcMinSize(int &W, int &H);
  1003.     
  1004. public:
  1005.     __fastcall virtual TDBNavigator(Classes::TComponent* AOwner);
  1006.     __fastcall virtual ~TDBNavigator(void);
  1007.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  1008.     virtual void __fastcall BtnClick(TNavigateBtn Index);
  1009.     
  1010. __published:
  1011.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  1012.     __property TButtonSet VisibleButtons = {read=FVisibleButtons, write=SetVisible, default=1023};
  1013.     __property Align ;
  1014.     __property Anchors ;
  1015.     __property Constraints ;
  1016.     __property DragCursor ;
  1017.     __property DragKind ;
  1018.     __property DragMode ;
  1019.     __property Enabled ;
  1020.     __property bool Flat = {read=FFlat, write=SetFlat, default=0};
  1021.     __property Ctl3D ;
  1022.     __property Classes::TStrings* Hints = {read=GetHints, write=SetHints};
  1023.     __property ParentCtl3D ;
  1024.     __property ParentShowHint ;
  1025.     __property PopupMenu ;
  1026.     __property bool ConfirmDelete = {read=FConfirmDelete, write=FConfirmDelete, default=1};
  1027.     __property ShowHint ;
  1028.     __property TabOrder ;
  1029.     __property TabStop ;
  1030.     __property Visible ;
  1031.     __property ENavClick BeforeAction = {read=FBeforeAction, write=FBeforeAction};
  1032.     __property ENavClick OnClick = {read=FOnNavClick, write=FOnNavClick};
  1033.     __property OnContextPopup ;
  1034.     __property OnDblClick ;
  1035.     __property OnDragDrop ;
  1036.     __property OnDragOver ;
  1037.     __property OnEndDock ;
  1038.     __property OnEndDrag ;
  1039.     __property OnEnter ;
  1040.     __property OnExit ;
  1041.     __property OnResize ;
  1042.     __property OnStartDock ;
  1043.     __property OnStartDrag ;
  1044. public:
  1045.     #pragma option push -w-inl
  1046.     /* TWinControl.CreateParented */ inline __fastcall TDBNavigator(HWND ParentWindow) : Extctrls::TCustomPanel(
  1047.         ParentWindow) { }
  1048.     #pragma option pop
  1049.     
  1050. };
  1051.  
  1052.  
  1053. class PASCALIMPLEMENTATION TNavButton : public Buttons::TSpeedButton 
  1054. {
  1055.     typedef Buttons::TSpeedButton inherited;
  1056.     
  1057. private:
  1058.     TNavigateBtn FIndex;
  1059.     TNavButtonStyle FNavStyle;
  1060.     Extctrls::TTimer* FRepeatTimer;
  1061.     void __fastcall TimerExpired(System::TObject* Sender);
  1062.     
  1063. protected:
  1064.     virtual void __fastcall Paint(void);
  1065.     DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, 
  1066.         int Y);
  1067.     DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int 
  1068.         Y);
  1069.     
  1070. public:
  1071.     __fastcall virtual ~TNavButton(void);
  1072.     __property TNavButtonStyle NavStyle = {read=FNavStyle, write=FNavStyle, nodefault};
  1073.     __property TNavigateBtn Index = {read=FIndex, write=FIndex, nodefault};
  1074. public:
  1075.     #pragma option push -w-inl
  1076.     /* TSpeedButton.Create */ inline __fastcall virtual TNavButton(Classes::TComponent* AOwner) : Buttons::TSpeedButton(
  1077.         AOwner) { }
  1078.     #pragma option pop
  1079.     
  1080. };
  1081.  
  1082.  
  1083. class DELPHICLASS TDataSourceLink;
  1084. class DELPHICLASS TDBLookupControl;
  1085. class DELPHICLASS TListSourceLink;
  1086. class PASCALIMPLEMENTATION TListSourceLink : public Db::TDataLink 
  1087. {
  1088.     typedef Db::TDataLink inherited;
  1089.     
  1090. private:
  1091.     TDBLookupControl* FDBLookupControl;
  1092.     
  1093. protected:
  1094.     virtual void __fastcall ActiveChanged(void);
  1095.     virtual void __fastcall DataSetChanged(void);
  1096.     virtual void __fastcall LayoutChanged(void);
  1097.     
  1098. public:
  1099.     __fastcall TListSourceLink(void);
  1100. public:
  1101.     #pragma option push -w-inl
  1102.     /* TDataLink.Destroy */ inline __fastcall virtual ~TListSourceLink(void) { }
  1103.     #pragma option pop
  1104.     
  1105. };
  1106.  
  1107.  
  1108. class PASCALIMPLEMENTATION TDBLookupControl : public Controls::TCustomControl 
  1109. {
  1110.     typedef Controls::TCustomControl inherited;
  1111.     
  1112. private:
  1113.     Db::TDataSource* FLookupSource;
  1114.     TDataSourceLink* FDataLink;
  1115.     TListSourceLink* FListLink;
  1116.     AnsiString FDataFieldName;
  1117.     AnsiString FKeyFieldName;
  1118.     AnsiString FListFieldName;
  1119.     int FListFieldIndex;
  1120.     Db::TField* FDataField;
  1121.     Db::TField* FMasterField;
  1122.     Db::TField* FKeyField;
  1123.     Db::TField* FListField;
  1124.     Classes::TList* FListFields;
  1125.     Variant FKeyValue;
  1126.     AnsiString FSearchText;
  1127.     bool FLookupMode;
  1128.     bool FListActive;
  1129.     bool FHasFocus;
  1130.     void __fastcall CheckNotCircular(void);
  1131.     void __fastcall CheckNotLookup(void);
  1132.     void __fastcall DataLinkRecordChanged(Db::TField* Field);
  1133.     Db::TDataSource* __fastcall GetDataSource(void);
  1134.     AnsiString __fastcall GetKeyFieldName();
  1135.     Db::TDataSource* __fastcall GetListSource(void);
  1136.     bool __fastcall GetReadOnly(void);
  1137.     void __fastcall SetDataFieldName(const AnsiString Value);
  1138.     void __fastcall SetDataSource(Db::TDataSource* Value);
  1139.     void __fastcall SetKeyFieldName(const AnsiString Value);
  1140.     void __fastcall SetKeyValue(const Variant &Value);
  1141.     void __fastcall SetListFieldName(const AnsiString Value);
  1142.     void __fastcall SetListSource(Db::TDataSource* Value);
  1143.     void __fastcall SetLookupMode(bool Value);
  1144.     void __fastcall SetReadOnly(bool Value);
  1145.     MESSAGE void __fastcall WMGetDlgCode(Messages::TMessage &Message);
  1146.     HIDESBASE MESSAGE void __fastcall WMKillFocus(Messages::TMessage &Message);
  1147.     HIDESBASE MESSAGE void __fastcall WMSetFocus(Messages::TMessage &Message);
  1148.     HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
  1149.     
  1150. protected:
  1151.     virtual bool __fastcall CanModify(void);
  1152.     virtual int __fastcall GetBorderSize(void);
  1153.     virtual int __fastcall GetTextHeight(void);
  1154.     virtual void __fastcall KeyValueChanged(void);
  1155.     virtual void __fastcall ListLinkDataChanged(void);
  1156.     virtual bool __fastcall LocateKey(void);
  1157.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1158.         );
  1159.     virtual void __fastcall ProcessSearchKey(char Key);
  1160.     virtual void __fastcall SelectKeyValue(const Variant &Value);
  1161.     virtual void __fastcall UpdateDataFields(void);
  1162.     virtual void __fastcall UpdateListFields(void);
  1163.     __property AnsiString DataField = {read=FDataFieldName, write=SetDataFieldName};
  1164.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  1165.     __property bool HasFocus = {read=FHasFocus, nodefault};
  1166.     __property AnsiString KeyField = {read=GetKeyFieldName, write=SetKeyFieldName};
  1167.     __property Variant KeyValue = {read=FKeyValue, write=SetKeyValue};
  1168.     __property bool ListActive = {read=FListActive, nodefault};
  1169.     __property AnsiString ListField = {read=FListFieldName, write=SetListFieldName};
  1170.     __property int ListFieldIndex = {read=FListFieldIndex, write=FListFieldIndex, default=0};
  1171.     __property Classes::TList* ListFields = {read=FListFields};
  1172.     __property TListSourceLink* ListLink = {read=FListLink};
  1173.     __property Db::TDataSource* ListSource = {read=GetListSource, write=SetListSource};
  1174.     __property ParentColor ;
  1175.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  1176.     __property AnsiString SearchText = {read=FSearchText, write=FSearchText};
  1177.     __property TabStop ;
  1178.     
  1179. public:
  1180.     __fastcall virtual TDBLookupControl(Classes::TComponent* AOwner);
  1181.     __fastcall virtual ~TDBLookupControl(void);
  1182.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  1183.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  1184.     __property Db::TField* Field = {read=FDataField};
  1185. public:
  1186.     #pragma option push -w-inl
  1187.     /* TWinControl.CreateParented */ inline __fastcall TDBLookupControl(HWND ParentWindow) : Controls::TCustomControl(
  1188.         ParentWindow) { }
  1189.     #pragma option pop
  1190.     
  1191. };
  1192.  
  1193.  
  1194. class PASCALIMPLEMENTATION TDataSourceLink : public Db::TDataLink 
  1195. {
  1196.     typedef Db::TDataLink inherited;
  1197.     
  1198. private:
  1199.     TDBLookupControl* FDBLookupControl;
  1200.     
  1201. protected:
  1202.     virtual void __fastcall FocusControl(Db::TFieldRef Field);
  1203.     virtual void __fastcall ActiveChanged(void);
  1204.     virtual void __fastcall LayoutChanged(void);
  1205.     virtual void __fastcall RecordChanged(Db::TField* Field);
  1206.     
  1207. public:
  1208.     __fastcall TDataSourceLink(void);
  1209. public:
  1210.     #pragma option push -w-inl
  1211.     /* TDataLink.Destroy */ inline __fastcall virtual ~TDataSourceLink(void) { }
  1212.     #pragma option pop
  1213.     
  1214. };
  1215.  
  1216.  
  1217. class DELPHICLASS TDBLookupListBox;
  1218. class PASCALIMPLEMENTATION TDBLookupListBox : public TDBLookupControl 
  1219. {
  1220.     typedef TDBLookupControl inherited;
  1221.     
  1222. private:
  1223.     int FRecordIndex;
  1224.     int FRecordCount;
  1225.     int FRowCount;
  1226.     Forms::TFormBorderStyle FBorderStyle;
  1227.     bool FPopup;
  1228.     bool FKeySelected;
  1229.     bool FTracking;
  1230.     bool FTimerActive;
  1231.     bool FLockPosition;
  1232.     int FMousePos;
  1233.     AnsiString FSelectedItem;
  1234.     int __fastcall GetKeyIndex(void);
  1235.     void __fastcall SelectCurrent(void);
  1236.     void __fastcall SelectItemAt(int X, int Y);
  1237.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  1238.     void __fastcall SetRowCount(int Value);
  1239.     void __fastcall StopTimer(void);
  1240.     void __fastcall StopTracking(void);
  1241.     void __fastcall TimerScroll(void);
  1242.     void __fastcall UpdateScrollBar(void);
  1243.     HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
  1244.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  1245.     HIDESBASE MESSAGE void __fastcall WMCancelMode(Messages::TMessage &Message);
  1246.     MESSAGE void __fastcall WMTimer(Messages::TMessage &Message);
  1247.     HIDESBASE MESSAGE void __fastcall WMVScroll(Messages::TWMScroll &Message);
  1248.     
  1249. protected:
  1250.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1251.     virtual void __fastcall CreateWnd(void);
  1252.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  1253.     DYNAMIC void __fastcall KeyPress(char &Key);
  1254.     virtual void __fastcall KeyValueChanged(void);
  1255.     virtual void __fastcall ListLinkDataChanged(void);
  1256.     DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, 
  1257.         int Y);
  1258.     DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
  1259.     DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int 
  1260.         Y);
  1261.     virtual void __fastcall Paint(void);
  1262.     virtual void __fastcall UpdateListFields(void);
  1263.     
  1264. public:
  1265.     __fastcall virtual TDBLookupListBox(Classes::TComponent* AOwner);
  1266.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  1267.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  1268.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  1269.     __property KeyValue ;
  1270.     __property AnsiString SelectedItem = {read=FSelectedItem};
  1271.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  1272.     
  1273. __published:
  1274.     __property Align ;
  1275.     __property Anchors ;
  1276.     __property BiDiMode ;
  1277.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=1};
  1278.     __property Color ;
  1279.     __property Constraints ;
  1280.     __property Ctl3D ;
  1281.     __property DataField ;
  1282.     __property DataSource ;
  1283.     __property DragCursor ;
  1284.     __property DragKind ;
  1285.     __property DragMode ;
  1286.     __property Enabled ;
  1287.     __property Font ;
  1288.     __property ImeMode ;
  1289.     __property ImeName ;
  1290.     __property KeyField ;
  1291.     __property ListField ;
  1292.     __property ListFieldIndex ;
  1293.     __property ListSource ;
  1294.     __property ParentBiDiMode ;
  1295.     __property ParentColor ;
  1296.     __property ParentCtl3D ;
  1297.     __property ParentFont ;
  1298.     __property ParentShowHint ;
  1299.     __property PopupMenu ;
  1300.     __property ReadOnly ;
  1301.     __property int RowCount = {read=FRowCount, write=SetRowCount, stored=false, nodefault};
  1302.     __property ShowHint ;
  1303.     __property TabOrder ;
  1304.     __property TabStop ;
  1305.     __property Visible ;
  1306.     __property OnClick ;
  1307.     __property OnContextPopup ;
  1308.     __property OnDblClick ;
  1309.     __property OnDragDrop ;
  1310.     __property OnDragOver ;
  1311.     __property OnEndDock ;
  1312.     __property OnEndDrag ;
  1313.     __property OnEnter ;
  1314.     __property OnExit ;
  1315.     __property OnKeyDown ;
  1316.     __property OnKeyPress ;
  1317.     __property OnKeyUp ;
  1318.     __property OnMouseDown ;
  1319.     __property OnMouseMove ;
  1320.     __property OnMouseUp ;
  1321.     __property OnStartDock ;
  1322.     __property OnStartDrag ;
  1323. public:
  1324.     #pragma option push -w-inl
  1325.     /* TDBLookupControl.Destroy */ inline __fastcall virtual ~TDBLookupListBox(void) { }
  1326.     #pragma option pop
  1327.     
  1328. public:
  1329.     #pragma option push -w-inl
  1330.     /* TWinControl.CreateParented */ inline __fastcall TDBLookupListBox(HWND ParentWindow) : TDBLookupControl(
  1331.         ParentWindow) { }
  1332.     #pragma option pop
  1333.     
  1334. };
  1335.  
  1336.  
  1337. class DELPHICLASS TPopupDataList;
  1338. class PASCALIMPLEMENTATION TPopupDataList : public TDBLookupListBox 
  1339. {
  1340.     typedef TDBLookupListBox inherited;
  1341.     
  1342. private:
  1343.     MESSAGE void __fastcall WMMouseActivate(Messages::TMessage &Message);
  1344.     
  1345. protected:
  1346.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1347.     
  1348. public:
  1349.     __fastcall virtual TPopupDataList(Classes::TComponent* AOwner);
  1350. public:
  1351.     #pragma option push -w-inl
  1352.     /* TDBLookupControl.Destroy */ inline __fastcall virtual ~TPopupDataList(void) { }
  1353.     #pragma option pop
  1354.     
  1355. public:
  1356.     #pragma option push -w-inl
  1357.     /* TWinControl.CreateParented */ inline __fastcall TPopupDataList(HWND ParentWindow) : TDBLookupListBox(
  1358.         ParentWindow) { }
  1359.     #pragma option pop
  1360.     
  1361. };
  1362.  
  1363.  
  1364. #pragma option push -b-
  1365. enum TDropDownAlign { daLeft, daRight, daCenter };
  1366. #pragma option pop
  1367.  
  1368. class DELPHICLASS TDBLookupComboBox;
  1369. class PASCALIMPLEMENTATION TDBLookupComboBox : public TDBLookupControl 
  1370. {
  1371.     typedef TDBLookupControl inherited;
  1372.     
  1373. private:
  1374.     TPopupDataList* FDataList;
  1375.     int FButtonWidth;
  1376.     AnsiString FText;
  1377.     int FDropDownRows;
  1378.     int FDropDownWidth;
  1379.     TDropDownAlign FDropDownAlign;
  1380.     bool FListVisible;
  1381.     bool FPressed;
  1382.     bool FTracking;
  1383.     Classes::TAlignment FAlignment;
  1384.     bool FLookupMode;
  1385.     Classes::TNotifyEvent FOnDropDown;
  1386.     Classes::TNotifyEvent FOnCloseUp;
  1387.     void __fastcall ListMouseUp(System::TObject* Sender, Controls::TMouseButton Button, Classes::TShiftState 
  1388.         Shift, int X, int Y);
  1389.     void __fastcall StopTracking(void);
  1390.     void __fastcall TrackButton(int X, int Y);
  1391.     HIDESBASE MESSAGE void __fastcall CMDialogKey(Messages::TWMKey &Message);
  1392.     MESSAGE void __fastcall CMCancelMode(Controls::TCMCancelMode &Message);
  1393.     HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
  1394.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  1395.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  1396.     HIDESBASE MESSAGE void __fastcall WMCancelMode(Messages::TMessage &Message);
  1397.     HIDESBASE MESSAGE void __fastcall WMKillFocus(Messages::TWMKillFocus &Message);
  1398.     HIDESBASE MESSAGE void __fastcall CMBiDiModeChanged(Messages::TMessage &Message);
  1399.     
  1400. protected:
  1401.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  1402.     virtual void __fastcall Paint(void);
  1403.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  1404.     DYNAMIC void __fastcall KeyPress(char &Key);
  1405.     virtual void __fastcall KeyValueChanged(void);
  1406.     DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, 
  1407.         int Y);
  1408.     DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
  1409.     DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int 
  1410.         Y);
  1411.     virtual void __fastcall UpdateListFields(void);
  1412.     
  1413. public:
  1414.     __fastcall virtual TDBLookupComboBox(Classes::TComponent* AOwner);
  1415.     virtual void __fastcall CloseUp(bool Accept);
  1416.     virtual void __fastcall DropDown(void);
  1417.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  1418.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  1419.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  1420.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  1421.     __property KeyValue ;
  1422.     __property bool ListVisible = {read=FListVisible, nodefault};
  1423.     __property AnsiString Text = {read=FText};
  1424.     
  1425. __published:
  1426.     __property Anchors ;
  1427.     __property BiDiMode ;
  1428.     __property Color ;
  1429.     __property Constraints ;
  1430.     __property Ctl3D ;
  1431.     __property DataField ;
  1432.     __property DataSource ;
  1433.     __property DragCursor ;
  1434.     __property DragKind ;
  1435.     __property DragMode ;
  1436.     __property TDropDownAlign DropDownAlign = {read=FDropDownAlign, write=FDropDownAlign, default=0};
  1437.     __property int DropDownRows = {read=FDropDownRows, write=FDropDownRows, default=7};
  1438.     __property int DropDownWidth = {read=FDropDownWidth, write=FDropDownWidth, default=0};
  1439.     __property Enabled ;
  1440.     __property Font ;
  1441.     __property ImeMode ;
  1442.     __property ImeName ;
  1443.     __property KeyField ;
  1444.     __property ListField ;
  1445.     __property ListFieldIndex ;
  1446.     __property ListSource ;
  1447.     __property ParentBiDiMode ;
  1448.     __property ParentColor ;
  1449.     __property ParentCtl3D ;
  1450.     __property ParentFont ;
  1451.     __property ParentShowHint ;
  1452.     __property PopupMenu ;
  1453.     __property ReadOnly ;
  1454.     __property ShowHint ;
  1455.     __property TabOrder ;
  1456.     __property TabStop ;
  1457.     __property Visible ;
  1458.     __property OnClick ;
  1459.     __property Classes::TNotifyEvent OnCloseUp = {read=FOnCloseUp, write=FOnCloseUp};
  1460.     __property OnContextPopup ;
  1461.     __property OnDragDrop ;
  1462.     __property OnDragOver ;
  1463.     __property Classes::TNotifyEvent OnDropDown = {read=FOnDropDown, write=FOnDropDown};
  1464.     __property OnEndDock ;
  1465.     __property OnEndDrag ;
  1466.     __property OnEnter ;
  1467.     __property OnExit ;
  1468.     __property OnKeyDown ;
  1469.     __property OnKeyPress ;
  1470.     __property OnKeyUp ;
  1471.     __property OnMouseDown ;
  1472.     __property OnMouseMove ;
  1473.     __property OnMouseUp ;
  1474.     __property OnStartDock ;
  1475.     __property OnStartDrag ;
  1476. public:
  1477.     #pragma option push -w-inl
  1478.     /* TDBLookupControl.Destroy */ inline __fastcall virtual ~TDBLookupComboBox(void) { }
  1479.     #pragma option pop
  1480.     
  1481. public:
  1482.     #pragma option push -w-inl
  1483.     /* TWinControl.CreateParented */ inline __fastcall TDBLookupComboBox(HWND ParentWindow) : TDBLookupControl(
  1484.         ParentWindow) { }
  1485.     #pragma option pop
  1486.     
  1487. };
  1488.  
  1489.  
  1490. class DELPHICLASS TDBRichEdit;
  1491. class PASCALIMPLEMENTATION TDBRichEdit : public Comctrls::TCustomRichEdit 
  1492. {
  1493.     typedef Comctrls::TCustomRichEdit inherited;
  1494.     
  1495. private:
  1496.     TFieldDataLink* FDataLink;
  1497.     bool FAutoDisplay;
  1498.     bool FFocused;
  1499.     bool FMemoLoaded;
  1500.     AnsiString FDataSave;
  1501.     void __fastcall BeginEditing(void);
  1502.     void __fastcall DataChange(System::TObject* Sender);
  1503.     void __fastcall EditingChange(System::TObject* Sender);
  1504.     AnsiString __fastcall GetDataField();
  1505.     Db::TDataSource* __fastcall GetDataSource(void);
  1506.     Db::TField* __fastcall GetField(void);
  1507.     bool __fastcall GetReadOnly(void);
  1508.     void __fastcall SetDataField(const AnsiString Value);
  1509.     void __fastcall SetDataSource(Db::TDataSource* Value);
  1510.     HIDESBASE void __fastcall SetReadOnly(bool Value);
  1511.     void __fastcall SetAutoDisplay(bool Value);
  1512.     void __fastcall SetFocused(bool Value);
  1513.     void __fastcall UpdateData(System::TObject* Sender);
  1514.     MESSAGE void __fastcall WMCut(Messages::TMessage &Message);
  1515.     MESSAGE void __fastcall WMPaste(Messages::TMessage &Message);
  1516.     HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  1517.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  1518.     HIDESBASE MESSAGE void __fastcall WMLButtonDblClk(Messages::TWMMouse &Message);
  1519.     MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  1520.     
  1521. protected:
  1522.     DYNAMIC void __fastcall Change(void);
  1523.     DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  1524.     DYNAMIC void __fastcall KeyPress(char &Key);
  1525.     virtual void __fastcall Loaded(void);
  1526.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1527.         );
  1528.     
  1529. public:
  1530.     __fastcall virtual TDBRichEdit(Classes::TComponent* AOwner);
  1531.     __fastcall virtual ~TDBRichEdit(void);
  1532.     DYNAMIC bool __fastcall ExecuteAction(Classes::TBasicAction* Action);
  1533.     virtual void __fastcall LoadMemo(void);
  1534.     DYNAMIC bool __fastcall UpdateAction(Classes::TBasicAction* Action);
  1535.     DYNAMIC bool __fastcall UseRightToLeftAlignment(void);
  1536.     __property Db::TField* Field = {read=GetField};
  1537.     
  1538. __published:
  1539.     __property Align ;
  1540.     __property Alignment ;
  1541.     __property Anchors ;
  1542.     __property bool AutoDisplay = {read=FAutoDisplay, write=SetAutoDisplay, default=1};
  1543.     __property BiDiMode ;
  1544.     __property BorderStyle ;
  1545.     __property Color ;
  1546.     __property Constraints ;
  1547.     __property Ctl3D ;
  1548.     __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  1549.     __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  1550.     __property DragCursor ;
  1551.     __property DragKind ;
  1552.     __property DragMode ;
  1553.     __property Enabled ;
  1554.     __property Font ;
  1555.     __property HideSelection ;
  1556.     __property HideScrollBars ;
  1557.     __property ImeMode ;
  1558.     __property ImeName ;
  1559.     __property MaxLength ;
  1560.     __property ParentBiDiMode ;
  1561.     __property ParentColor ;
  1562.     __property ParentCtl3D ;
  1563.     __property ParentFont ;
  1564.     __property ParentShowHint ;
  1565.     __property PlainText ;
  1566.     __property PopupMenu ;
  1567.     __property bool ReadOnly = {read=GetReadOnly, write=SetReadOnly, default=0};
  1568.     __property ScrollBars ;
  1569.     __property ShowHint ;
  1570.     __property TabOrder ;
  1571.     __property TabStop ;
  1572.     __property Visible ;
  1573.     __property WantReturns ;
  1574.     __property WantTabs ;
  1575.     __property WordWrap ;
  1576.     __property OnChange ;
  1577.     __property OnClick ;
  1578.     __property OnContextPopup ;
  1579.     __property OnDblClick ;
  1580.     __property OnDragDrop ;
  1581.     __property OnDragOver ;
  1582.     __property OnEndDock ;
  1583.     __property OnEndDrag ;
  1584.     __property OnEnter ;
  1585.     __property OnExit ;
  1586.     __property OnKeyDown ;
  1587.     __property OnKeyPress ;
  1588.     __property OnKeyUp ;
  1589.     __property OnMouseDown ;
  1590.     __property OnMouseMove ;
  1591.     __property OnMouseUp ;
  1592.     __property OnResizeRequest ;
  1593.     __property OnSelectionChange ;
  1594.     __property OnProtectChange ;
  1595.     __property OnSaveClipboard ;
  1596.     __property OnStartDock ;
  1597.     __property OnStartDrag ;
  1598. public:
  1599.     #pragma option push -w-inl
  1600.     /* TWinControl.CreateParented */ inline __fastcall TDBRichEdit(HWND ParentWindow) : Comctrls::TCustomRichEdit(
  1601.         ParentWindow) { }
  1602.     #pragma option pop
  1603.     
  1604. };
  1605.  
  1606.  
  1607. //-- var, const, procedure ---------------------------------------------------
  1608. static const Word InitRepeatPause = 0x190;
  1609. static const Shortint RepeatPause = 0x64;
  1610. static const Shortint SpaceSize = 0x5;
  1611. extern PACKAGE bool __fastcall OkToChangeFieldAlignment(Db::TField* AField, Classes::TAlignment Alignment
  1612.     );
  1613. extern PACKAGE bool __fastcall DBUseRightToLeftAlignment(Controls::TControl* AControl, Db::TField* AField
  1614.     );
  1615.  
  1616. }    /* namespace Dbctrls */
  1617. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  1618. using namespace Dbctrls;
  1619. #endif
  1620. #pragma option pop    // -w-
  1621. #pragma option pop    // -Vx
  1622.  
  1623. #pragma delphiheader end.
  1624. //-- end unit ----------------------------------------------------------------
  1625. #endif    // DBCtrls
  1626.