bmslider.hpp

来自「漏洞扫描系列中HB Network Scanner 测试用练习代码」· HPP 代码 · 共 248 行

HPP
248
字号
// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'BMSlider.pas' rev: 6.00

#ifndef BMSliderHPP
#define BMSliderHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <VCLBase.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <ExtCtrls.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Bmslider
{
//-- type declarations -------------------------------------------------------
typedef Shortint TNumThumbStates;

typedef Shortint TImageArrayRange;

#pragma option push -b-
enum TSliderOrientation { soHorizontal, soVertical };
#pragma option pop

#pragma option push -b-
enum TSliderOption { soShowFocus, soShowPoints, soSmooth };
#pragma option pop

typedef Set<TSliderOption, soShowFocus, soSmooth>  TSliderOptions;

#pragma option push -b-
enum TSliderImage { siHThumb, siHRuler, siVThumb, siVRuler };
#pragma option pop

typedef Set<TSliderImage, siHThumb, siVRuler>  TSliderImages;

typedef Graphics::TBitmap* TImageArray[4];

#pragma option push -b-
enum TJumpMode { jmNone, jmHome, jmEnd, jmNext, jmPrior };
#pragma option pop

class DELPHICLASS TepBMPSlider;
class DELPHICLASS TSliderThumb;
class PASCALIMPLEMENTATION TSliderThumb : public Controls::TCustomControl 
{
	typedef Controls::TCustomControl inherited;
	
private:
	Graphics::TBitmap* FBitmap;
	bool FDown;
	TNumThumbStates FNumStates;
	bool FTransparent;
	HRGN FThumbRegion;
	void __fastcall SetTransparent(bool Value);
	void __fastcall SetBitmap(Graphics::TBitmap* Value);
	void __fastcall SetDown(bool Value);
	void __fastcall SetNumStates(TNumThumbStates Value);
	void __fastcall AdjustBounds(void);
	
protected:
	__fastcall virtual TSliderThumb(Classes::TComponent* AOwner);
	__fastcall virtual ~TSliderThumb(void);
	virtual void __fastcall Paint(void);
	
public:
	__property Graphics::TBitmap* Bitmap = {read=FBitmap, write=SetBitmap};
	__property bool Down = {read=FDown, write=SetDown, default=0};
	__property TNumThumbStates NumStates = {read=FNumStates, write=SetNumStates, default=2};
	__property bool Transparent = {read=FTransparent, write=SetTransparent, default=0};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TSliderThumb(HWND ParentWindow) : Controls::TCustomControl(ParentWindow) { }
	#pragma option pop
	
};


class PASCALIMPLEMENTATION TepBMPSlider : public Vclbase::TEffectCControl 
{
	typedef Vclbase::TEffectCControl inherited;
	
private:
	bool FUseFocusFrame;
	Graphics::TColor FPointsColor;
	Graphics::TColor FFocusInnerColor;
	Graphics::TColor FFocusOuterColor;
	TSliderImages FUserImages;
	Graphics::TBitmap* FImages[4];
	int FEdgeSize;
	Graphics::TBitmap* FRuler;
	#pragma pack(push, 1)
	Types::TPoint FRulerOrg;
	#pragma pack(pop)
	
	TSliderThumb* FThumb;
	#pragma pack(push, 1)
	Types::TRect FPointsRect;
	#pragma pack(pop)
	
	TSliderOrientation FOrientation;
	TSliderOptions FOptions;
	int FMinValue;
	int FMaxValue;
	int FIncrement;
	int FValue;
	int FHit;
	bool FActive;
	bool FSliding;
	bool FTracking;
	bool FTimerActive;
	#pragma pack(push, 1)
	Types::TPoint FMousePos;
	#pragma pack(pop)
	
	TJumpMode FStartJump;
	Classes::TNotifyEvent FOnChange;
	Classes::TNotifyEvent FOnDrawPoints;
	void __fastcall SetPointsColor(Graphics::TColor Value);
	void __fastcall SetThumbTransparent(bool Value);
	bool __fastcall GetThumbTransparent(void);
	Graphics::TBitmap* __fastcall GetImage(int Index);
	void __fastcall SetImage(int Index, Graphics::TBitmap* Value);
	void __fastcall SetEdgeSize(int Value);
	TNumThumbStates __fastcall GetNumThumbStates(void);
	void __fastcall SetNumThumbStates(TNumThumbStates Value);
	void __fastcall SetOrientation(TSliderOrientation Value);
	void __fastcall SetOptions(TSliderOptions Value);
	void __fastcall SetMinValue(int Value);
	void __fastcall SetMaxValue(int Value);
	void __fastcall SetIncrement(int Value);
	int __fastcall GetThumbOffset(void);
	void __fastcall SetThumbOffset(int Value);
	void __fastcall SetValue(int Value);
	void __fastcall ThumbJump(TJumpMode Jump);
	TJumpMode __fastcall JumpTo(int X, int Y);
	void __fastcall StopTracking(void);
	void __fastcall TimerTrack(void);
	bool __fastcall StoreImage(int Index);
	void __fastcall CreateElements(void);
	void __fastcall BuildRuler(void);
	void __fastcall AdjustElements(void);
	void __fastcall ImageChanged(void);
	void __fastcall ReadUserImages(Classes::TStream* Stream);
	void __fastcall WriteUserImages(Classes::TStream* Stream);
	int __fastcall GetValueByOffset(int Offset);
	int __fastcall GetOffsetByValue(int Value);
	int __fastcall GetRulerLength(void);
	MESSAGE void __fastcall WMGetDlgCode(Messages::TWMNoParams &Msg);
	HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
	MESSAGE void __fastcall WMTimer(Messages::TMessage &Message);
	HIDESBASE MESSAGE void __fastcall WMEraseBkGnd(Messages::TWMEraseBkgnd &Msg);
	HIDESBASE MESSAGE void __fastcall CMFocusChanged(Controls::TCMFocusChanged &Message);
	__property int ThumbOffset = {read=GetThumbOffset, write=SetThumbOffset, nodefault};
	
protected:
	DYNAMIC void __fastcall Change(void);
	virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
	virtual void __fastcall Loaded(void);
	DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	virtual void __fastcall PaintFace(void);
	virtual void __fastcall ThumbMouseDown(System::TObject* Sender, Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	virtual void __fastcall ThumbMouseMove(System::TObject* Sender, Classes::TShiftState Shift, int X, int Y);
	virtual void __fastcall ThumbMouseUp(System::TObject* Sender, Controls::TMouseButton Thumb, Classes::TShiftState Shift, int X, int Y);
	
public:
	__fastcall virtual TepBMPSlider(Classes::TComponent* AOwner);
	__fastcall virtual ~TepBMPSlider(void);
	virtual void __fastcall DefaultDrawPoints(int PointsStep, int PointsHeight, int ExtremePointsHeight);
	
__published:
	__property bool UseFocusFrame = {read=FUseFocusFrame, write=FUseFocusFrame, nodefault};
	__property Graphics::TColor FocusInnerColor = {read=FFocusInnerColor, write=FFocusInnerColor, nodefault};
	__property Graphics::TColor FocusOuterColor = {read=FFocusOuterColor, write=FFocusOuterColor, nodefault};
	__property Graphics::TColor PointsColor = {read=FPointsColor, write=SetPointsColor, nodefault};
	__property bool ThumbTransparent = {read=GetThumbTransparent, write=SetThumbTransparent, nodefault};
	__property Graphics::TBitmap* ImageHThumb = {read=GetImage, write=SetImage, stored=StoreImage, index=0};
	__property Graphics::TBitmap* ImageHRuler = {read=GetImage, write=SetImage, stored=StoreImage, index=1};
	__property Graphics::TBitmap* ImageVThumb = {read=GetImage, write=SetImage, stored=StoreImage, index=2};
	__property Graphics::TBitmap* ImageVRuler = {read=GetImage, write=SetImage, stored=StoreImage, index=3};
	__property int EdgeSize = {read=FEdgeSize, write=SetEdgeSize, default=2};
	__property TNumThumbStates NumThumbStates = {read=GetNumThumbStates, write=SetNumThumbStates, nodefault};
	__property TSliderOrientation Orientation = {read=FOrientation, write=SetOrientation, default=0};
	__property TSliderOptions Options = {read=FOptions, write=SetOptions, nodefault};
	__property int Increment = {read=FIncrement, write=SetIncrement, nodefault};
	__property int MinValue = {read=FMinValue, write=SetMinValue, nodefault};
	__property int MaxValue = {read=FMaxValue, write=SetMaxValue, nodefault};
	__property int Value = {read=FValue, write=SetValue, nodefault};
	__property Align  = {default=0};
	__property Visible  = {default=1};
	__property Enabled  = {default=1};
	__property Color  = {default=-2147483643};
	__property Cursor  = {default=0};
	__property DragMode  = {default=0};
	__property DragCursor  = {default=-12};
	__property ParentColor  = {default=1};
	__property ParentShowHint  = {default=1};
	__property ShowHint ;
	__property TabOrder  = {default=-1};
	__property TabStop  = {default=1};
	__property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	__property Classes::TNotifyEvent OnDrawPoints = {read=FOnDrawPoints, write=FOnDrawPoints};
	__property OnClick ;
	__property OnDblClick ;
	__property OnEnter ;
	__property OnExit ;
	__property OnMouseMove ;
	__property OnMouseDown ;
	__property OnMouseUp ;
	__property OnKeyDown ;
	__property OnKeyUp ;
	__property OnKeyPress ;
	__property OnDragOver ;
	__property OnDragDrop ;
	__property OnEndDrag ;
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TepBMPSlider(HWND ParentWindow) : Vclbase::TEffectCControl(ParentWindow) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------

}	/* namespace Bmslider */
using namespace Bmslider;
#pragma option pop	// -w-
#pragma option pop	// -Vx

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// BMSlider

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?