📄 iswitchrotary.hpp
字号:
// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved
// (DO NOT EDIT: machine generated header) 'iSwitchRotary.pas' rev: 6.00
#ifndef iSwitchRotaryHPP
#define iSwitchRotaryHPP
#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <iComponent.hpp> // Pascal unit
#include <iVCLComponent.hpp> // Pascal unit
#include <iSwitchMultiPosition.hpp> // Pascal unit
#include <iMath.hpp> // Pascal unit
#include <iGPFunctions.hpp> // Pascal unit
#include <iTypes.hpp> // Pascal unit
#include <ExtCtrls.hpp> // Pascal unit
#include <StdCtrls.hpp> // Pascal unit
#include <ComCtrls.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Variants.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Messages.hpp> // Pascal unit
#include <Types.hpp> // Pascal unit
#include <Clipbrd.hpp> // Pascal unit
#include <Dialogs.hpp> // Pascal unit
#include <Forms.hpp> // Pascal unit
#include <Graphics.hpp> // Pascal unit
#include <TypInfo.hpp> // Pascal unit
#include <SysUtils.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <SysInit.hpp> // Pascal unit
#include <System.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Iswitchrotary
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TiRotaryStartDegrees { irsd000, irsd045, irsd090, irsd135, irsd180, irsd225, irsd270, irsd315 };
#pragma option pop
#pragma option push -b-
enum TiSwitchRotaryPointerStyle { isrpsPointer, isrpsRectangle };
#pragma option pop
#pragma option push -b-
enum TiRotaryDesiredSpacing { irds22p5, irds45, irds90 };
#pragma option pop
class DELPHICLASS TiSwitchRotary;
class PASCALIMPLEMENTATION TiSwitchRotary : public Iswitchmultiposition::TiSwitchMultiPosition
{
typedef Iswitchmultiposition::TiSwitchMultiPosition inherited;
private:
double FMouseDownDegrees;
#pragma pack(push, 1)
Types::TPoint FCenterPoint;
#pragma pack(pop)
double FDegreesStep;
int FPointerLength;
int FPointerHeight;
Itypes::TiLabelAlignment FPositionLabelAlignment;
TiSwitchRotaryPointerStyle FPointerStyle;
TiRotaryStartDegrees FRotationStartDegrees;
Itypes::TiRotaryMouseControlStyle FMouseControlStyle;
Graphics::TColor FPointerColor;
Graphics::TColor FPointerHighLightColor;
TiRotaryDesiredSpacing FRotationDesiredSpacing;
int __fastcall AngleOffset(void);
void __fastcall SetPointerLength(const int Value);
void __fastcall SetPointerHeight(const int Value);
void __fastcall SetPositionLabelAlignment(const Itypes::TiLabelAlignment Value);
void __fastcall SetPointerStyle(const TiSwitchRotaryPointerStyle Value);
void __fastcall SetRotationStartDegrees(const TiRotaryStartDegrees Value);
void __fastcall SetMouseControlStyle(const Itypes::TiRotaryMouseControlStyle Value);
void __fastcall SetPointerColor(const Graphics::TColor Value);
void __fastcall SetPointerHighLightColor(const Graphics::TColor Value);
void __fastcall SetRotationDesiredSpacing(const TiRotaryDesiredSpacing Value);
protected:
void __fastcall SetPositionFromMouse(int X, int Y);
virtual Types::TPoint __fastcall GetCenterPoint(Graphics::TCanvas* Canvas);
virtual void __fastcall iMouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
virtual void __fastcall iMouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
virtual void __fastcall iMouseMove(Classes::TShiftState Shift, int X, int Y);
virtual void __fastcall iDoKillFocus(void);
virtual void __fastcall iPaintTo(Graphics::TCanvas* Canvas);
void __fastcall DrawIndicator(Graphics::TCanvas* Canvas, const Types::TPoint &CenterPoint, double Angle);
void __fastcall DrawIndicatorPointer(Graphics::TCanvas* Canvas, const Types::TPoint &CenterPoint, double Angle);
void __fastcall DrawIndicatorRectangle(Graphics::TCanvas* Canvas, const Types::TPoint &CenterPoint, double Angle);
void __fastcall DrawTicks(Graphics::TCanvas* Canvas, const Types::TPoint &CenterPoint, double AngleOffset);
public:
__fastcall virtual TiSwitchRotary(Classes::TComponent* AOwner);
__published:
__property Itypes::TiLabelAlignment PositionLabelAlignment = {read=FPositionLabelAlignment, write=SetPositionLabelAlignment, default=0};
__property TiRotaryStartDegrees RotationStartDegrees = {read=FRotationStartDegrees, write=SetRotationStartDegrees, default=4};
__property TiRotaryDesiredSpacing RotationDesiredSpacing = {read=FRotationDesiredSpacing, write=SetRotationDesiredSpacing, default=1};
__property int PointerLength = {read=FPointerLength, write=SetPointerLength, default=25};
__property int PointerHeight = {read=FPointerHeight, write=SetPointerHeight, default=6};
__property TiSwitchRotaryPointerStyle PointerStyle = {read=FPointerStyle, write=SetPointerStyle, default=0};
__property Graphics::TColor PointerColor = {read=FPointerColor, write=SetPointerColor, default=-2147483633};
__property Graphics::TColor PointerHighLightColor = {read=FPointerHighLightColor, write=SetPointerHighLightColor, default=-2147483628};
__property Itypes::TiRotaryMouseControlStyle MouseControlStyle = {read=FMouseControlStyle, write=SetMouseControlStyle, default=1};
__property BackGroundPicture ;
__property BackGroundColor = {default=-2147483633};
__property OffsetX = {default=0};
__property OffsetY = {default=0};
__property Transparent = {default=0};
__property PositionLabelMargin = {default=15};
__property Width = {default=100};
__property Height = {default=80};
public:
#pragma option push -w-inl
/* TiSwitchMultiPosition.Destroy */ inline __fastcall virtual ~TiSwitchRotary(void) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TWinControl.CreateParented */ inline __fastcall TiSwitchRotary(HWND ParentWindow) : Iswitchmultiposition::TiSwitchMultiPosition(ParentWindow) { }
#pragma option pop
};
//-- var, const, procedure ---------------------------------------------------
} /* namespace Iswitchrotary */
using namespace Iswitchrotary;
#pragma option pop // -w-
#pragma option pop // -Vx
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // iSwitchRotary
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -