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

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) 'fctrackbar.pas' rev: 6.00
  5. #ifndef fctrackbarHPP
  6. #define fctrackbarHPP
  7. #pragma delphiheader begin
  8. #pragma option push -w-
  9. #pragma option push -Vx
  10. #include <fcCommon.hpp> // Pascal unit
  11. #include <UxTheme.hpp> // Pascal unit
  12. #include <Themes.hpp> // Pascal unit
  13. #include <fcpanel.hpp> // Pascal unit
  14. #include <DB.hpp> // Pascal unit
  15. #include <DBCtrls.hpp> // Pascal unit
  16. #include <ComCtrls.hpp> // Pascal unit
  17. #include <ExtCtrls.hpp> // Pascal unit
  18. #include <ImgList.hpp> // Pascal unit
  19. #include <StdCtrls.hpp> // Pascal unit
  20. #include <Graphics.hpp> // Pascal unit
  21. #include <Menus.hpp> // Pascal unit
  22. #include <Forms.hpp> // Pascal unit
  23. #include <Controls.hpp> // Pascal unit
  24. #include <Classes.hpp> // Pascal unit
  25. #include <CommCtrl.hpp> // Pascal unit
  26. #include <SysUtils.hpp> // Pascal unit
  27. #include <Windows.hpp> // Pascal unit
  28. #include <Messages.hpp> // Pascal unit
  29. #include <Consts.hpp> // Pascal unit
  30. #include <SysInit.hpp> // Pascal unit
  31. #include <System.hpp> // Pascal unit
  32. //-- user supplied -----------------------------------------------------------
  33. namespace Fctrackbar
  34. {
  35. //-- type declarations -------------------------------------------------------
  36. #pragma option push -b-
  37. enum TfcTrackBarOrientation { trfcHorizontal, trfcVertical };
  38. #pragma option pop
  39. #pragma option push -b-
  40. enum TfcTickMark { tmfcBottomRight, tmfcTopLeft, tmfcBoth };
  41. #pragma option pop
  42. #pragma option push -b-
  43. enum TfcTickStyle { tsfcNone, tsfcAuto, tsfcManual };
  44. #pragma option pop
  45. #pragma option push -b-
  46. enum TfcTrackBarTextPosition { tbtLeft, tbtRight, tbtTop, tbtBottom };
  47. #pragma option pop
  48. class DELPHICLASS TfcTrackBarText;
  49. class DELPHICLASS TfcTrackBar;
  50. class DELPHICLASS TfcTrackIcon;
  51. class PASCALIMPLEMENTATION TfcTrackIcon : public Controls::TGraphicControl 
  52. {
  53. typedef Controls::TGraphicControl inherited;
  54. private:
  55. Graphics::TBitmap* TrackBmp;
  56. Classes::TNotifyEvent FOnEndDrag;
  57. void __fastcall MouseLoop_Drag(int X, int Y);
  58. protected:
  59. bool DraggingThumb;
  60. DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
  61. virtual void __fastcall Paint(void);
  62. HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  63. public:
  64. TfcTrackBar* TrackBar;
  65. __fastcall virtual TfcTrackIcon(Classes::TComponent* AOwner);
  66. __fastcall virtual ~TfcTrackIcon(void);
  67. __published:
  68. __property Classes::TNotifyEvent OnEndDrag = {read=FOnEndDrag, write=FOnEndDrag};
  69. };
  70. class DELPHICLASS TfcTrackRepeatTimer;
  71. class PASCALIMPLEMENTATION TfcTrackRepeatTimer : public Extctrls::TTimer 
  72. {
  73. typedef Extctrls::TTimer inherited;
  74. private:
  75. double Increment;
  76. public:
  77. #pragma option push -w-inl
  78. /* TTimer.Create */ inline __fastcall virtual TfcTrackRepeatTimer(Classes::TComponent* AOwner) : Extctrls::TTimer(AOwner) { }
  79. #pragma option pop
  80. #pragma option push -w-inl
  81. /* TTimer.Destroy */ inline __fastcall virtual ~TfcTrackRepeatTimer(void) { }
  82. #pragma option pop
  83. };
  84. typedef void __fastcall (__closure *TfcDrawTickTextEvent)(System::TObject* Sender, double TickValue, AnsiString &ATickText, Types::TRect &ARect, bool &DoDefault);
  85. class PASCALIMPLEMENTATION TfcTrackBar : public Fcpanel::TfcCustomPanel 
  86. {
  87. typedef Fcpanel::TfcCustomPanel inherited;
  88. private:
  89. TfcTrackBarText* FTextAttributes;
  90. TfcTrackBarOrientation FOrientation;
  91. TfcTickMark FTickMarks;
  92. TfcTickStyle FTickStyle;
  93. double FIncrement;
  94. int FPageSize;
  95. int FThumbLength;
  96. int FThumbThickness;
  97. bool FSliderVisible;
  98. double FMin;
  99. double FMax;
  100. double FFrequency;
  101. double FPosition;
  102. double FSelStart;
  103. double FSelEnd;
  104. Classes::TNotifyEvent FOnChange;
  105. Dbctrls::TFieldDataLink* FDataLink;
  106. TfcTrackIcon* TrackButton;
  107. Graphics::TBitmap* FTrackThumbIcon;
  108. int FThumbTrackSeparation;
  109. Graphics::TColor FThumbColor;
  110. Graphics::TColor FTrackColor;
  111. Graphics::TColor FTrackPartialFillColor;
  112. TfcTrackRepeatTimer* FRepeatTimer;
  113. int FSpacingLeftTop;
  114. int FSpacingRightBottom;
  115. int FSpacingEdgeTrackbar;
  116. bool FReadOnly;
  117. bool FInverted;
  118. TfcDrawTickTextEvent FOnDrawTickText;
  119. bool FDisableThemes;
  120. bool SkipEdit;
  121. virtual void __fastcall PositionChanging(void);
  122. virtual void __fastcall TimerExpired(System::TObject* Sender);
  123. void __fastcall SetThumbColor(Graphics::TColor val);
  124. int __fastcall GetThumbLength(void);
  125. int __fastcall GetThumbThickness(void);
  126. void __fastcall SetOrientation(TfcTrackBarOrientation Value);
  127. void __fastcall SetParams(double APosition, double AMin, double AMax);
  128. void __fastcall SetPosition(double Value);
  129. void __fastcall SetMin(double Value);
  130. void __fastcall SetMax(double Value);
  131. void __fastcall SetFrequency(double Value);
  132. void __fastcall SetTickStyle(TfcTickStyle Value);
  133. void __fastcall SetTickMarks(TfcTickMark Value);
  134. void __fastcall SetIncrement(double Value);
  135. void __fastcall SetPageSize(int Value);
  136. void __fastcall SetThumbLength(int Value);
  137. void __fastcall SetThumbThickness(int Value);
  138. void __fastcall SetSliderVisible(bool Value);
  139. void __fastcall SetSelStart(double Value);
  140. void __fastcall SetSelEnd(double Value);
  141. void __fastcall UpdateSelection(void);
  142. void __fastcall UpdateFromButton(System::TObject* Sender);
  143. MESSAGE void __fastcall CNHScroll(Messages::TWMScroll &Message);
  144. MESSAGE void __fastcall CNVScroll(Messages::TWMScroll &Message);
  145. HIDESBASE MESSAGE void __fastcall WMEraseBkGnd(Messages::TWMEraseBkgnd &Message);
  146. HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
  147. AnsiString __fastcall GetDataField();
  148. Db::TDataSource* __fastcall GetDataSource(void);
  149. void __fastcall SetDataField(const AnsiString Value);
  150. void __fastcall SetDataSource(Db::TDataSource* Value);
  151. Db::TField* __fastcall GetField(void);
  152. void __fastcall SetThumbIcon(Graphics::TBitmap* Value);
  153. Graphics::TBitmap* __fastcall GetThumbIcon(void);
  154. MESSAGE void __fastcall WMGetDlgCode(Messages::TWMNoParams &Message);
  155. HIDESBASE MESSAGE void __fastcall WMSetFocus(Messages::TWMSetFocus &Message);
  156. HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  157. HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  158. MESSAGE void __fastcall CMGetDataLink(Messages::TMessage &Message);
  159. void __fastcall SetSpacingLeftTop(int Value);
  160. void __fastcall SetSpacingRightBottom(int Value);
  161. void __fastcall SetSpacingEdgeTrackbar(int Value);
  162. double __fastcall GetDBValue(void);
  163. void __fastcall SetTrackColor(Graphics::TColor Value);
  164. void __fastcall SetTrackPartialFillColor(Graphics::TColor Value);
  165. protected:
  166. virtual void __fastcall DrawTickText(double TickValue, AnsiString TickText, const Types::TRect &ARect);
  167. void __fastcall UpdateRecord(void);
  168. virtual void __fastcall UpdateData(System::TObject* Sender);
  169. virtual bool __fastcall EffectiveReadOnly(void);
  170. virtual bool __fastcall EditCanModify(void);
  171. virtual void __fastcall PaintThumb(int ALeft, int ATop);
  172. virtual double __fastcall getPosition(void);
  173. Types::TRect __fastcall GetTrackBarRect();
  174. virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  175. virtual void __fastcall CreateWnd(void);
  176. virtual void __fastcall DestroyWnd(void);
  177. HIDESBASEDYNAMIC void __fastcall Changed(void);
  178. virtual void __fastcall DataChange(System::TObject* Sender);
  179. virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
  180. virtual void __fastcall Paint(void);
  181. int __fastcall ValToPixel(Extended Val);
  182. DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
  183. DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
  184. DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  185. public:
  186. __fastcall virtual TfcTrackBar(Classes::TComponent* AOwner);
  187. __fastcall virtual ~TfcTrackBar(void);
  188. __property Dbctrls::TFieldDataLink* DataLink = {read=FDataLink};
  189. __property Db::TField* Field = {read=GetField};
  190. __published:
  191. __property bool DisableThemes = {read=FDisableThemes, write=FDisableThemes, default=0};
  192. __property TfcTrackBarText* TextAttributes = {read=FTextAttributes, write=FTextAttributes};
  193. __property Graphics::TBitmap* TrackThumbIcon = {read=GetThumbIcon, write=SetThumbIcon};
  194. __property Graphics::TColor ThumbColor = {read=FThumbColor, write=SetThumbColor, nodefault};
  195. __property int SpacingLeftTop = {read=FSpacingLeftTop, write=SetSpacingLeftTop, default=5};
  196. __property int SpacingRightBottom = {read=FSpacingRightBottom, write=SetSpacingRightBottom, default=5};
  197. __property int SpacingEdgeTrackbar = {read=FSpacingEdgeTrackbar, write=SetSpacingEdgeTrackbar, default=2};
  198. __property bool ReadOnly = {read=FReadOnly, write=FReadOnly, nodefault};
  199. __property bool Inverted = {read=FInverted, write=FInverted, default=0};
  200. __property Graphics::TColor TrackColor = {read=FTrackColor, write=SetTrackColor, default=16777215};
  201. __property Graphics::TColor TrackPartialFillColor = {read=FTrackPartialFillColor, write=SetTrackPartialFillColor, default=536870911};
  202. __property Align  = {default=0};
  203. __property Anchors  = {default=3};
  204. __property BorderWidth  = {default=0};
  205. __property Ctl3D ;
  206. __property DragCursor  = {default=-12};
  207. __property DragKind  = {default=0};
  208. __property DragMode  = {default=0};
  209. __property Enabled  = {default=1};
  210. __property Constraints ;
  211. __property double Increment = {read=FIncrement, write=SetIncrement};
  212. __property double Max = {read=FMax, write=SetMax};
  213. __property double Min = {read=FMin, write=SetMin};
  214. __property TfcTrackBarOrientation Orientation = {read=FOrientation, write=SetOrientation, default=0};
  215. __property ParentCtl3D  = {default=1};
  216. __property ParentShowHint  = {default=1};
  217. __property int PageSize = {read=FPageSize, write=SetPageSize, default=2};
  218. __property PopupMenu ;
  219. __property double Frequency = {read=FFrequency, write=SetFrequency};
  220. __property double Position = {read=getPosition, write=SetPosition};
  221. __property bool SliderVisible = {read=FSliderVisible, write=SetSliderVisible, default=1};
  222. __property double SelEnd = {read=FSelEnd, write=SetSelEnd};
  223. __property double SelStart = {read=FSelStart, write=SetSelStart};
  224. __property ShowHint ;
  225. __property TabOrder  = {default=-1};
  226. __property TabStop  = {default=1};
  227. __property int ThumbLength = {read=GetThumbLength, write=SetThumbLength, default=20};
  228. __property int ThumbThickness = {read=GetThumbThickness, write=SetThumbThickness, default=10};
  229. __property TfcTickMark TickMarks = {read=FTickMarks, write=SetTickMarks, default=0};
  230. __property TfcTickStyle TickStyle = {read=FTickStyle, write=SetTickStyle, default=1};
  231. __property Visible  = {default=1};
  232. __property OnContextPopup ;
  233. __property TfcDrawTickTextEvent OnDrawTickText = {read=FOnDrawTickText, write=FOnDrawTickText};
  234. __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  235. __property OnDragDrop ;
  236. __property OnDragOver ;
  237. __property OnEndDock ;
  238. __property OnEndDrag ;
  239. __property OnEnter ;
  240. __property OnExit ;
  241. __property OnKeyDown ;
  242. __property OnKeyPress ;
  243. __property OnKeyUp ;
  244. __property OnStartDock ;
  245. __property OnStartDrag ;
  246. __property AnsiString DataField = {read=GetDataField, write=SetDataField};
  247. __property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
  248. public:
  249. #pragma option push -w-inl
  250. /* TWinControl.CreateParented */ inline __fastcall TfcTrackBar(HWND ParentWindow) : Fcpanel::TfcCustomPanel(ParentWindow) { }
  251. #pragma option pop
  252. };
  253. class PASCALIMPLEMENTATION TfcTrackBarText : public Classes::TPersistent 
  254. {
  255. typedef Classes::TPersistent inherited;
  256. private:
  257. bool FShowText;
  258. TfcTrackBarTextPosition FPosition;
  259. int FOffsetX;
  260. int FOffsetY;
  261. AnsiString FDisplayFormat;
  262. int FTickLabelFrequency;
  263. AnsiString FTickDisplayFormat;
  264. void __fastcall SetFont(Graphics::TFont* Value);
  265. Graphics::TFont* __fastcall GetFont(void);
  266. void __fastcall SetPosition(TfcTrackBarTextPosition Value);
  267. void __fastcall SetOffsetX(int Value);
  268. void __fastcall SetOffsetY(int Value);
  269. void __fastcall SetDisplayFormat(AnsiString Value);
  270. void __fastcall SetShowText(bool Value);
  271. void __fastcall SetTickLabelFrequency(int Value);
  272. void __fastcall SetTickDisplayFormat(AnsiString Value);
  273. public:
  274. TfcTrackBar* Owner;
  275. __fastcall TfcTrackBarText(Classes::TComponent* AOwner);
  276. __published:
  277. __property TfcTrackBarTextPosition Position = {read=FPosition, write=SetPosition, default=0};
  278. __property int OffsetX = {read=FOffsetX, write=SetOffsetX, default=0};
  279. __property int OffsetY = {read=FOffsetY, write=SetOffsetY, default=0};
  280. __property Graphics::TFont* Font = {read=GetFont, write=SetFont};
  281. __property AnsiString DisplayFormat = {read=FDisplayFormat, write=SetDisplayFormat};
  282. __property bool ShowText = {read=FShowText, write=SetShowText, default=0};
  283. __property int TickLabelFrequency = {read=FTickLabelFrequency, write=SetTickLabelFrequency, default=0};
  284. __property AnsiString TickDisplayFormat = {read=FTickDisplayFormat, write=SetTickDisplayFormat};
  285. public:
  286. #pragma option push -w-inl
  287. /* TPersistent.Destroy */ inline __fastcall virtual ~TfcTrackBarText(void) { }
  288. #pragma option pop
  289. };
  290. //-- var, const, procedure ---------------------------------------------------
  291. #pragma error Unsupported symbol type (23, fctrackbar)
  292. } /* namespace Fctrackbar */
  293. using namespace Fctrackbar;
  294. #pragma option pop // -w-
  295. #pragma option pop // -Vx
  296. #pragma delphiheader end.
  297. //-- end unit ----------------------------------------------------------------
  298. #endif // fctrackbar