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

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) 'fcShapeBtn.pas' rev: 6.00
  5. #ifndef fcShapeBtnHPP
  6. #define fcShapeBtnHPP
  7. #pragma delphiheader begin
  8. #pragma option push -w-
  9. #pragma option push -Vx
  10. #include <Menus.hpp> // Pascal unit
  11. #include <DB.hpp> // Pascal unit
  12. #include <ActnList.hpp> // Pascal unit
  13. #include <ImgList.hpp> // Pascal unit
  14. #include <fcBitmap.hpp> // Pascal unit
  15. #include <fcEvaluator.hpp> // Pascal unit
  16. #include <fcImgBtn.hpp> // Pascal unit
  17. #include <fcButton.hpp> // Pascal unit
  18. #include <Themes.hpp> // Pascal unit
  19. #include <fctext.hpp> // Pascal unit
  20. #include <fcCommon.hpp> // Pascal unit
  21. #include <SysUtils.hpp> // Pascal unit
  22. #include <Consts.hpp> // Pascal unit
  23. #include <Math.hpp> // Pascal unit
  24. #include <Dialogs.hpp> // Pascal unit
  25. #include <Buttons.hpp> // Pascal unit
  26. #include <CommCtrl.hpp> // Pascal unit
  27. #include <StdCtrls.hpp> // Pascal unit
  28. #include <Graphics.hpp> // Pascal unit
  29. #include <Forms.hpp> // Pascal unit
  30. #include <Controls.hpp> // Pascal unit
  31. #include <Classes.hpp> // Pascal unit
  32. #include <Messages.hpp> // Pascal unit
  33. #include <Windows.hpp> // Pascal unit
  34. #include <SysInit.hpp> // Pascal unit
  35. #include <System.hpp> // Pascal unit
  36. //-- user supplied -----------------------------------------------------------
  37. namespace Fcshapebtn
  38. {
  39. //-- type declarations -------------------------------------------------------
  40. #pragma option push -b-
  41. enum TfcShapeOrientation { soLeft, soRight, soUp, soDown };
  42. #pragma option pop
  43. #pragma option push -b-
  44. enum TfcButtonShape { bsRoundRect, bsEllipse, bsTriangle, bsArrow, bsDiamond, bsRect, bsStar, bsTrapezoid, bsCustom };
  45. #pragma option pop
  46. typedef void __fastcall (__closure *TwwComputeCanvasAttributes)(System::TObject* Sender, Graphics::TCanvas* ACanvas);
  47. class DELPHICLASS TfcCustomShapeBtn;
  48. class PASCALIMPLEMENTATION TfcCustomShapeBtn : public Fcimgbtn::TfcCustomImageBtn 
  49. {
  50. typedef Fcimgbtn::TfcCustomImageBtn inherited;
  51. private:
  52. Classes::TStringList* FPointList;
  53. TfcButtonShape FShape;
  54. TfcShapeOrientation FOrientation;
  55. int FRoundRectBias;
  56. Graphics::TBitmap* FRegionBitmap;
  57. TwwComputeCanvasAttributes FOnComputeCanvasAttributes;
  58. void __fastcall SetShape(TfcButtonShape Value);
  59. void __fastcall SetOrientation(TfcShapeOrientation Value);
  60. void __fastcall SetPointList(Classes::TStringList* Value);
  61. void __fastcall SetRoundRectBias(int Value);
  62. Graphics::TColor __fastcall CorrectedColor(void);
  63. protected:
  64. virtual void __fastcall DoComputeCanvasAttributes(Graphics::TCanvas* ACanvas);
  65. virtual void __fastcall WndProc(Messages::TMessage &Message);
  66. virtual bool __fastcall StoreRegionData(void);
  67. Graphics::TColor __fastcall UnusableColor(void);
  68. virtual void __fastcall AssignTo(Classes::TPersistent* Dest);
  69. HIDESBASE void __fastcall Draw3dLines(Fcbitmap::TfcBitmap* Bitmap, const Types::TPoint * PointList, const int PointList_Size, int NumPoints, Graphics::TColor TransColor);
  70. void __fastcall SetPointToOrientation(Fccommon::PfcPolyGonPoints Points, int NumPoints, TfcShapeOrientation Orientation, const tagSIZE &Size);
  71. int __fastcall GetCustomPoints(Fccommon::PfcPolyGonPoints &Points, const tagSIZE &Size);
  72. int __fastcall GetStarPoints(Fccommon::PfcPolyGonPoints &Points, const tagSIZE &Size);
  73. int __fastcall GetPolygonPoints(Fccommon::PfcPolyGonPoints &Points);
  74. virtual HRGN __fastcall CreateRegion(bool DoImplementation, bool Down);
  75. DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
  76. virtual bool __fastcall UseRegions(void);
  77. __property Graphics::TBitmap* RegionBitmap = {read=FRegionBitmap, write=FRegionBitmap};
  78. public:
  79. Variant Patch;
  80. __fastcall virtual TfcCustomShapeBtn(Classes::TComponent* AOwner);
  81. __fastcall virtual ~TfcCustomShapeBtn(void);
  82. virtual bool __fastcall IsMultipleRegions(void);
  83. virtual bool __fastcall RoundShape(void);
  84. virtual void __fastcall GetDrawBitmap(Fcbitmap::TfcBitmap* DrawBitmap, bool ForRegion, Fcbutton::TfcShadeStyle ShadeStyle, bool Down);
  85. virtual void __fastcall SizeToDefault(void);
  86. __property TfcShapeOrientation Orientation = {read=FOrientation, write=SetOrientation, default=2};
  87. __property Classes::TStringList* PointList = {read=FPointList, write=SetPointList};
  88. __property int RoundRectBias = {read=FRoundRectBias, write=SetRoundRectBias, default=0};
  89. __property TfcButtonShape Shape = {read=FShape, write=SetShape, default=5};
  90. __property TwwComputeCanvasAttributes OnComputeCanvasAttributes = {read=FOnComputeCanvasAttributes, write=FOnComputeCanvasAttributes};
  91. public:
  92. #pragma option push -w-inl
  93. /* TWinControl.CreateParented */ inline __fastcall TfcCustomShapeBtn(HWND ParentWindow) : Fcimgbtn::TfcCustomImageBtn(ParentWindow) { }
  94. #pragma option pop
  95. };
  96. class DELPHICLASS TfcShapeBtn;
  97. class PASCALIMPLEMENTATION TfcShapeBtn : public TfcCustomShapeBtn 
  98. {
  99. typedef TfcCustomShapeBtn inherited;
  100. __published:
  101. __property Action ;
  102. __property Anchors  = {default=3};
  103. __property Constraints ;
  104. __property StaticCaption  = {default=0};
  105. __property AllowAllUp  = {default=0};
  106. __property Cancel  = {default=0};
  107. __property Caption ;
  108. __property Color  = {default=-16777211};
  109. __property Default  = {default=0};
  110. __property DitherColor ;
  111. __property Down  = {default=0};
  112. __property DragCursor  = {default=-12};
  113. __property DataSource ;
  114. __property DataField ;
  115. __property DragKind  = {default=0};
  116. __property DragMode  = {default=0};
  117. __property Font ;
  118. __property Enabled  = {default=1};
  119. __property Glyph ;
  120. __property GroupIndex  = {default=0};
  121. __property Kind  = {default=0};
  122. __property Layout  = {default=0};
  123. __property Margin  = {default=-1};
  124. __property ModalResult  = {default=0};
  125. __property NumGlyphs  = {default=1};
  126. __property Options  = {default=0};
  127. __property Offsets ;
  128. __property Orientation  = {default=2};
  129. __property ParentClipping ;
  130. __property ParentFont  = {default=1};
  131. __property ParentShowHint  = {default=1};
  132. __property PointList ;
  133. __property PopupMenu ;
  134. __property RoundRectBias  = {default=0};
  135. __property ShadeColors ;
  136. __property ShadeStyle ;
  137. __property Shape  = {default=5};
  138. __property ShowHint ;
  139. __property SmoothFont  = {default=0};
  140. __property Spacing  = {default=4};
  141. __property Style  = {default=0};
  142. __property TabOrder  = {default=-1};
  143. __property TabStop  = {default=0};
  144. __property TextOptions ;
  145. __property Visible  = {default=1};
  146. __property OnClick ;
  147. __property OnDragDrop ;
  148. __property OnDragOver ;
  149. __property OnEndDrag ;
  150. __property OnEnter ;
  151. __property OnExit ;
  152. __property OnKeyDown ;
  153. __property OnKeyPress ;
  154. __property OnKeyUp ;
  155. __property OnMouseDown ;
  156. __property OnMouseEnter ;
  157. __property OnMouseLeave ;
  158. __property OnMouseMove ;
  159. __property OnMouseUp ;
  160. __property OnSelChange ;
  161. __property OnStartDrag ;
  162. __property OnComputeCanvasAttributes ;
  163. __property DisableThemes  = {default=0};
  164. public:
  165. #pragma option push -w-inl
  166. /* TfcCustomShapeBtn.Create */ inline __fastcall virtual TfcShapeBtn(Classes::TComponent* AOwner) : TfcCustomShapeBtn(AOwner) { }
  167. #pragma option pop
  168. #pragma option push -w-inl
  169. /* TfcCustomShapeBtn.Destroy */ inline __fastcall virtual ~TfcShapeBtn(void) { }
  170. #pragma option pop
  171. public:
  172. #pragma option push -w-inl
  173. /* TWinControl.CreateParented */ inline __fastcall TfcShapeBtn(HWND ParentWindow) : TfcCustomShapeBtn(ParentWindow) { }
  174. #pragma option pop
  175. };
  176. //-- var, const, procedure ---------------------------------------------------
  177. #pragma error Unsupported symbol type (23, fcShapeBtn)
  178. static const int DEFUNUSECOLOR = 0xff;
  179. static const int DEFUNUSECOLOR2 = 0xff0000;
  180. } /* namespace Fcshapebtn */
  181. using namespace Fcshapebtn;
  182. #pragma option pop // -w-
  183. #pragma option pop // -Vx
  184. #pragma delphiheader end.
  185. //-- end unit ----------------------------------------------------------------
  186. #endif // fcShapeBtn