⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iledmatrix.hpp

📁 Iocomp Ultra Pack v3.0.2 Sources.For.Delphi 数据显示编程插件,可用于工业控制
💻 HPP
字号:
// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved

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

#ifndef iLedMatrixHPP
#define iLedMatrixHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <iComponent.hpp>	// Pascal unit
#include <iVCLComponent.hpp>	// Pascal unit
#include <iOPCItem.hpp>	// Pascal unit
#include <iCustomComponent.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 Iledmatrix
{
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TClickIndicatorEvent)(int Row, int Col);

class DELPHICLASS TLedCacheObject;
class PASCALIMPLEMENTATION TLedCacheObject : public System::TObject 
{
	typedef System::TObject inherited;
	
public:
	Graphics::TBitmap* ActiveBitmap;
	Graphics::TBitmap* InActiveBitmap;
	Graphics::TColor Color;
	__fastcall virtual ~TLedCacheObject(void);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TLedCacheObject(void) : System::TObject() { }
	#pragma option pop
	
};


class DELPHICLASS TLedCache;
class PASCALIMPLEMENTATION TLedCache : public System::TObject 
{
	typedef System::TObject inherited;
	
private:
	Classes::TList* FCacheList;
	
public:
	__fastcall TLedCache(void);
	__fastcall virtual ~TLedCache(void);
	TLedCacheObject* __fastcall Find(Graphics::TColor AColor);
	void __fastcall Add(TLedCacheObject* LedCacheObject);
	void __fastcall Clear(void);
};


#pragma pack(push, 4)
struct TIndicatorData
{
	Graphics::TColor Color;
	System::SmallString<50>  Caption;
	bool Active;
	bool Dirty;
	Types::TRect ARect;
	bool MouseDown;
} ;
#pragma pack(pop)

typedef TIndicatorData TIndicatorList[100001];

typedef TIndicatorData *PIndicatorList;

#pragma option push -b-
enum TiLedMatrixIndiatorStyle { ilmisRound, ilmisRectangle };
#pragma option pop

class DELPHICLASS TiLedMatrix;
class PASCALIMPLEMENTATION TiLedMatrix : public Icustomcomponent::TiCustomComponent 
{
	typedef Icustomcomponent::TiCustomComponent inherited;
	
private:
	TLedCache* FLedCache;
	bool FFillBackGround;
	TIndicatorData *FIndicatorList;
	Graphics::TColor FIndicatorActiveColor;
	int FColCount;
	int FRowCount;
	TiLedMatrixIndiatorStyle FIndicatorStyle;
	int FIndicatorHeight;
	int FIndicatorWidth;
	Itypes::TiBevelStyle FIndicatorBevelStyle;
	int FSpacingHorizontal;
	int FOuterMargin;
	int FSpacingVertical;
	bool FAutoSize;
	Classes::TNotifyEvent FOnAutoSize;
	Graphics::TFont* FIndicatorCaptionInactiveFont;
	Graphics::TFont* FIndicatorCaptionActiveFont;
	bool FIndicatorShowReflection;
	bool FDoingAutoSize;
	TClickIndicatorEvent FOnMouseUpIndicator;
	TClickIndicatorEvent FOnMouseMoveIndicator;
	TClickIndicatorEvent FOnMouseDownIndicator;
	TClickIndicatorEvent FOnClickIndicator;
	TClickIndicatorEvent FOnDblClickIndicator;
	int FClickRow;
	int FClickCol;
	void __fastcall SetIndicatorActiveColor(const Graphics::TColor Value);
	void __fastcall SetColCount(const int Value);
	void __fastcall SetRowCount(const int Value);
	void __fastcall SetIndicatorStyle(const TiLedMatrixIndiatorStyle Value);
	void __fastcall SetIndicatorBevelStyle(const Itypes::TiBevelStyle Value);
	void __fastcall SetIndicatorHeight(const int Value);
	void __fastcall SetIndicatorWidth(const int Value);
	void __fastcall SetOuterMargin(const int Value);
	void __fastcall SetSpacingHorizontal(const int Value);
	void __fastcall SetSpacingVertical(const int Value);
	void __fastcall iSetAutoSize(const bool Value);
	void __fastcall SetIndicatorActive(int Row, int Col, const bool Value);
	void __fastcall SetIndicatorColor(int Row, int Col, const Graphics::TColor Value);
	bool __fastcall GetIndicatorActive(int Row, int Col);
	Graphics::TColor __fastcall GetIndicatorColor(int Row, int Col);
	AnsiString __fastcall GetIndicatorCaption(int Row, int Col);
	void __fastcall SetIndicatorCaption(int Row, int Col, const AnsiString Value);
	void __fastcall SetIndicatorCaptionActiveFont(const Graphics::TFont* Value);
	void __fastcall SetIndicatorCaptionInactiveFont(const Graphics::TFont* Value);
	void __fastcall SetIndicatorShowReflection(const bool Value);
	
protected:
	Types::TPoint __fastcall GetAutoSize();
	int __fastcall GetLedAtXY(int X, int Y);
	virtual void __fastcall SetTransparent(const bool Value);
	virtual void __fastcall SetBackGroundColor(const Graphics::TColor Value);
	virtual void __fastcall SetBorderStyle(const Itypes::TiBevelStyle Value);
	virtual void __fastcall SetCachedDrawing(const bool Value);
	void __fastcall DoAutoSize(void);
	void __fastcall SetCapacity(void);
	virtual void __fastcall iPaintTo(Graphics::TCanvas* Canvas);
	void __fastcall iPaintCached(Graphics::TCanvas* Canvas);
	void __fastcall iPaintNonCached(Graphics::TCanvas* Canvas);
	void __fastcall DrawRound(Graphics::TCanvas* Canvas, const Types::TRect &DrawRect, bool Active, Graphics::TColor AColor);
	void __fastcall DrawRectangle(Graphics::TCanvas* Canvas, const Types::TRect &DrawRect, bool Active, Graphics::TColor AColor);
	void __fastcall RedoAll(void);
	void __fastcall ClearMouseDown(void);
	virtual void __fastcall iDoKillFocus(void);
	virtual void __fastcall iMouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	virtual void __fastcall iMouseMove(Classes::TShiftState Shift, int X, int Y);
	virtual void __fastcall iMouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall DblClick(void);
	virtual void __fastcall UpdateOPCSpecialList(void);
	virtual bool __fastcall OPCNewDataSpecial(Iopcitem::TiOPCItem* iOPCItem);
	
public:
	__fastcall virtual TiLedMatrix(Classes::TComponent* AOwner);
	__fastcall virtual ~TiLedMatrix(void);
	virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
	__property bool IndicatorActive[int Row][int Col] = {read=GetIndicatorActive, write=SetIndicatorActive};
	__property Graphics::TColor IndicatorColor[int Row][int Col] = {read=GetIndicatorColor, write=SetIndicatorColor};
	__property AnsiString IndicatorCaption[int Row][int Col] = {read=GetIndicatorCaption, write=SetIndicatorCaption};
	__property Classes::TNotifyEvent OnAutoSize = {read=FOnAutoSize, write=FOnAutoSize};
	
__published:
	__property bool AutoSize = {read=FAutoSize, write=iSetAutoSize, default=1};
	__property Graphics::TColor IndicatorActiveColor = {read=FIndicatorActiveColor, write=SetIndicatorActiveColor, default=65280};
	__property int ColCount = {read=FColCount, write=SetColCount, default=5};
	__property int RowCount = {read=FRowCount, write=SetRowCount, default=5};
	__property TiLedMatrixIndiatorStyle IndicatorStyle = {read=FIndicatorStyle, write=SetIndicatorStyle, default=1};
	__property int IndicatorWidth = {read=FIndicatorWidth, write=SetIndicatorWidth, default=10};
	__property int IndicatorHeight = {read=FIndicatorHeight, write=SetIndicatorHeight, default=10};
	__property Itypes::TiBevelStyle IndicatorBevelStyle = {read=FIndicatorBevelStyle, write=SetIndicatorBevelStyle, default=0};
	__property Graphics::TFont* IndicatorCaptionActiveFont = {read=FIndicatorCaptionActiveFont, write=SetIndicatorCaptionActiveFont};
	__property Graphics::TFont* IndicatorCaptionInactiveFont = {read=FIndicatorCaptionInactiveFont, write=SetIndicatorCaptionInactiveFont};
	__property int OuterMargin = {read=FOuterMargin, write=SetOuterMargin, default=5};
	__property int SpacingHorizontal = {read=FSpacingHorizontal, write=SetSpacingHorizontal, default=2};
	__property int SpacingVertical = {read=FSpacingVertical, write=SetSpacingVertical, default=2};
	__property bool IndicatorShowReflection = {read=FIndicatorShowReflection, write=SetIndicatorShowReflection, default=1};
	__property TClickIndicatorEvent OnMouseDownIndicator = {read=FOnMouseDownIndicator, write=FOnMouseDownIndicator};
	__property TClickIndicatorEvent OnMouseMoveIndicator = {read=FOnMouseMoveIndicator, write=FOnMouseMoveIndicator};
	__property TClickIndicatorEvent OnMouseUpIndicator = {read=FOnMouseUpIndicator, write=FOnMouseUpIndicator};
	__property TClickIndicatorEvent OnClickIndicator = {read=FOnClickIndicator, write=FOnClickIndicator};
	__property TClickIndicatorEvent OnDblClickIndicator = {read=FOnDblClickIndicator, write=FOnDblClickIndicator};
	__property BackGroundColor  = {default=-2147483633};
	__property BorderStyle  = {default=0};
	__property Transparent  = {default=0};
	__property CachedDrawing  = {default=1};
	__property Width  = {default=150};
	__property Height  = {default=150};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TiLedMatrix(HWND ParentWindow) : Icustomcomponent::TiCustomComponent(ParentWindow) { }
	#pragma option pop
	
};


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

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

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

⌨️ 快捷键说明

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