fcscrollbar.hpp
上传用户:hylc_2004
上传日期:2014-01-23
资源大小:46800k
文件大小:6k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 2002 by Borland Software Corporation
  3. // All rights reserved
  4. // (DO NOT EDIT: machine generated header) 'fcScrollBar.pas' rev: 6.00
  5. #ifndef fcScrollBarHPP
  6. #define fcScrollBarHPP
  7. #pragma delphiheader begin
  8. #pragma option push -w-
  9. #pragma option push -Vx
  10. #include <ExtCtrls.hpp> // Pascal unit
  11. #include <fcCommon.hpp> // Pascal unit
  12. #include <Themes.hpp> // Pascal unit
  13. #include <Dialogs.hpp> // Pascal unit
  14. #include <Forms.hpp> // Pascal unit
  15. #include <Controls.hpp> // Pascal unit
  16. #include <Graphics.hpp> // Pascal unit
  17. #include <Classes.hpp> // Pascal unit
  18. #include <SysUtils.hpp> // Pascal unit
  19. #include <Messages.hpp> // Pascal unit
  20. #include <Windows.hpp> // Pascal unit
  21. #include <SysInit.hpp> // Pascal unit
  22. #include <System.hpp> // Pascal unit
  23. //-- user supplied -----------------------------------------------------------
  24. namespace Fcscrollbar
  25. {
  26. //-- type declarations -------------------------------------------------------
  27. #pragma option push -b-
  28. enum TfcScrollBarHitTest { htNone, htIncBtn, htDecBtn, htPageUp, htPageDown, htThumb };
  29. #pragma option pop
  30. class DELPHICLASS TfcCustomScrollBar;
  31. typedef void __fastcall (__closure *TfcScrollPosChangeEvent)(TfcCustomScrollBar* Sender, int PriorValue, int NewValue);
  32. class DELPHICLASS TfcScrollbarRepeatInterval;
  33. class PASCALIMPLEMENTATION TfcScrollbarRepeatInterval : public Classes::TPersistent 
  34. {
  35. typedef Classes::TPersistent inherited;
  36. private:
  37. int FInitialDelay;
  38. int FRepeatInterval;
  39. public:
  40. __fastcall TfcScrollbarRepeatInterval(void);
  41. __published:
  42. __property int InitialDelay = {read=FInitialDelay, write=FInitialDelay, nodefault};
  43. __property int Interval = {read=FRepeatInterval, write=FRepeatInterval, nodefault};
  44. public:
  45. #pragma option push -w-inl
  46. /* TPersistent.Destroy */ inline __fastcall virtual ~TfcScrollbarRepeatInterval(void) { }
  47. #pragma option pop
  48. };
  49. class PASCALIMPLEMENTATION TfcCustomScrollBar : public Controls::TGraphicControl 
  50. {
  51. typedef Controls::TGraphicControl inherited;
  52. private:
  53. TfcScrollPosChangeEvent FOnChange;
  54. Forms::TScrollBarKind FKind;
  55. int FMax;
  56. int FMin;
  57. int FPageSize;
  58. int FPosition;
  59. Forms::TScrollBarInc FSmallChange;
  60. Extctrls::TTimer* FTimer;
  61. bool FFixedThumbSize;
  62. TfcScrollBarHitTest FClickedPos;
  63. TfcScrollbarRepeatInterval* FRepeatInterval;
  64. int DragOffset;
  65. int DragOrigPosition;
  66. bool FContinuousDrag;
  67. int FMinThumbSize;
  68. int FPriorPosition;
  69. TfcScrollBarHitTest FLastMouseMovePos;
  70. void __fastcall SetKind(Forms::TScrollBarKind Value);
  71. void __fastcall SetMax(int Value);
  72. void __fastcall SetMin(int Value);
  73. void __fastcall SetPageSize(int Value);
  74. void __fastcall SetPosition(int Value);
  75. void __fastcall SetSmallChange(Forms::TScrollBarInc Value);
  76. HIDESBASE MESSAGE void __fastcall CMDesignHitTest(Messages::TWMMouse &Message);
  77. HIDESBASE MESSAGE void __fastcall CMMouseEnter(Messages::TMessage &Message);
  78. HIDESBASE MESSAGE void __fastcall CMMouseLeave(Messages::TMessage &Message);
  79. MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
  80. protected:
  81. DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
  82. DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
  83. virtual void __fastcall Paint(void);
  84. virtual void __fastcall PaintScrollRegion(bool All)/* overload */;
  85. Types::TRect __fastcall GetSectionRect(TfcScrollBarHitTest Section, int DeltaX = 0x0, int DeltaY = 0x0);
  86. virtual void __fastcall MouseLoop(int X, int Y);
  87. virtual void __fastcall MouseLoop_MouseUp(int X, int Y, const Types::TPoint &ACursorPos);
  88. virtual void __fastcall ScrollPosChange(int OldPos, int NewPos);
  89. void __fastcall TimerEvent(System::TObject* Sender);
  90. virtual void __fastcall Scroll(int ScrollCode, int Position);
  91. virtual void __fastcall WndProc(Messages::TMessage &Message);
  92. int __fastcall ScrollScreenRange(void);
  93. virtual void __fastcall AdjustThumb(int &ThumbSize);
  94. public:
  95. Variant Patch;
  96. __fastcall virtual TfcCustomScrollBar(Classes::TComponent* AOwner);
  97. __fastcall virtual ~TfcCustomScrollBar(void);
  98. virtual bool __fastcall HasScrollRange(void);
  99. virtual TfcScrollBarHitTest __fastcall GetHitTestInfo(int X, int Y);
  100. virtual void __fastcall Invalidate(void);
  101. void __fastcall MoveScrollPos(void);
  102. virtual void __fastcall SetParams(int APosition, int AMax, int AMin);
  103. __property int MinThumbSize = {read=FMinThumbSize, write=FMinThumbSize, default=8};
  104. __property bool FixedThumbSize = {read=FFixedThumbSize, write=FFixedThumbSize, nodefault};
  105. __property Forms::TScrollBarKind Kind = {read=FKind, write=SetKind, nodefault};
  106. __property int Max = {read=FMax, write=SetMax, nodefault};
  107. __property int Min = {read=FMin, write=SetMin, nodefault};
  108. __property int PageSize = {read=FPageSize, write=SetPageSize, nodefault};
  109. __property int PriorPosition = {read=FPriorPosition, nodefault};
  110. __property int Position = {read=FPosition, write=SetPosition, nodefault};
  111. __property Forms::TScrollBarInc SmallChange = {read=FSmallChange, write=SetSmallChange, nodefault};
  112. __property bool ContinuousDrag = {read=FContinuousDrag, write=FContinuousDrag, nodefault};
  113. __property TfcScrollbarRepeatInterval* RepeatInterval = {read=FRepeatInterval, write=FRepeatInterval};
  114. __property TfcScrollPosChangeEvent OnChange = {read=FOnChange, write=FOnChange};
  115. };
  116. class DELPHICLASS TfcScrollBar;
  117. class PASCALIMPLEMENTATION TfcScrollBar : public TfcCustomScrollBar 
  118. {
  119. typedef TfcCustomScrollBar inherited;
  120. __published:
  121. __property Kind ;
  122. __property Max ;
  123. __property Min ;
  124. __property PageSize ;
  125. __property Position ;
  126. __property SmallChange ;
  127. __property OnChange ;
  128. public:
  129. #pragma option push -w-inl
  130. /* TfcCustomScrollBar.Create */ inline __fastcall virtual TfcScrollBar(Classes::TComponent* AOwner) : TfcCustomScrollBar(AOwner) { }
  131. #pragma option pop
  132. #pragma option push -w-inl
  133. /* TfcCustomScrollBar.Destroy */ inline __fastcall virtual ~TfcScrollBar(void) { }
  134. #pragma option pop
  135. };
  136. //-- var, const, procedure ---------------------------------------------------
  137. #pragma error Unsupported symbol type (23, fcScrollBar)
  138. extern PACKAGE void __fastcall Register(void);
  139. } /* namespace Fcscrollbar */
  140. using namespace Fcscrollbar;
  141. #pragma option pop // -w-
  142. #pragma option pop // -Vx
  143. #pragma delphiheader end.
  144. //-- end unit ----------------------------------------------------------------
  145. #endif // fcScrollBar