flexbase.hpp
来自「FlexGraphics是一套创建矢量图形的VCL组件」· HPP 代码 · 共 1,378 行 · 第 1/5 页
HPP
1,378 行
// CodeGear C++Builder
// Copyright (c) 1995, 2008 by CodeGear
// All rights reserved
// (DO NOT EDIT: machine generated header) 'Flexbase.pas' rev: 20.00
#ifndef FlexbaseHPP
#define FlexbaseHPP
#pragma delphiheader begin
#pragma option push
#pragma option -w- // All warnings off
#pragma option -Vx // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp> // Pascal unit
#include <Sysinit.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Messages.hpp> // Pascal unit
#include <Forms.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Sysutils.hpp> // Pascal unit
#include <Extctrls.hpp> // Pascal unit
#include <Graphics.hpp> // Pascal unit
#include <Dialogs.hpp> // Pascal unit
#include <Menus.hpp> // Pascal unit
#include <Printers.hpp> // Pascal unit
#include <Consts.hpp> // Pascal unit
#include <Clipbrd.hpp> // Pascal unit
#include <Variants.hpp> // Pascal unit
#include <Rtlconsts.hpp> // Pascal unit
#include <Flexprops.hpp> // Pascal unit
#include <Flexutils.hpp> // Pascal unit
#include <Flexpath.hpp> // Pascal unit
#include <Flexalpha.hpp> // Pascal unit
#include <Flexhistory.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Flexbase
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TResizeCursor { rcrNone, rcrTopLeft, rcrTop, rcrTopRight, rcrLeft, rcrRight, rcrBottomLeft, rcrBottom, rcrBottomRight };
#pragma option pop
#pragma option push -b-
enum TFlexToolMode { ftmSelect, ftmSelecting, ftmZoom, ftmZooming, ftmMove, ftmMoving, ftmResize, ftmResizing, ftmCreating, ftmPointEdit, ftmPointSelecting, ftmPointEditing, ftmCurveMoving, ftmCurveContinue, ftmPan, ftmPanning, ftmUser };
#pragma option pop
#pragma option push -b-
enum TFlexAlign { faLeft, faHCenter, faRight, faTop, faVCenter, faBottom, faCenter };
#pragma option pop
#pragma option push -b-
enum TFlexSnap { snLeft, snTop, snRight, snBottom, snCenter, snAll };
#pragma option pop
typedef Set<TFlexSnap, snLeft, snAll> TFlexSnaps;
#pragma option push -b-
enum TFlexStateItem { fsCreating, fsDestroying, fsAdding, fsExtracting, fsResizing, fsEndUpdating, fsRecording, fsLoading };
#pragma option pop
typedef Set<TFlexStateItem, fsCreating, fsLoading> TFlexState;
#pragma option push -b-
enum TFlexLoadFunc { lfNew, lfAdd };
#pragma option pop
#pragma option push -b-
enum TFlexGridStyle { gsLines, gsDots };
#pragma option pop
#pragma option push -b-
enum TFlexAlphaBufferMode { amAuto, amRequired, amNotRequired };
#pragma option pop
struct TFlexEditPointGuide;
typedef TFlexEditPointGuide *PFlexEditPointGuide;
struct TFlexEditPointGuide
{
public:
int Count;
Types::TPoint NewPoint;
Flexpath::TPointArray Points;
Flexpath::TPointArray PaintPoints;
Flexpath::TPointTypeArray Types;
Flexpath::TSelectedArray Visible;
};
class DELPHICLASS TFlexControl;
typedef void __fastcall (__closure *TFlexNotifyEvent)(System::TObject* Sender, TFlexControl* Control, Flexutils::TFlexNotify Notify);
typedef void __fastcall (__closure *TFlexControlCreateEvent)(System::TObject* Sender, TFlexControl* Control, Types::TRect &ControlDocRect);
typedef TMetaClass* TFlexControlClass;
typedef DynamicArray<TFlexControlClass> TFlexControlClasses;
struct TFlexCreateInDesignInfo;
typedef TFlexCreateInDesignInfo *PFlexCreateInDesignInfo;
struct TFlexCreateInDesignInfo
{
public:
bool IsPointEdit;
int PointEditIndex;
bool IsContinueAvail;
int PointContinueIndex;
};
struct TPassControlRec;
typedef TPassControlRec *PPassControlRec;
struct TPassControlRec
{
private:
typedef DynamicArray<int> _TPassControlRec__1;
public:
TFlexControl* Control;
TFlexControl* FirstControl;
_TPassControlRec__1 Indexes;
};
struct TLinkPointInfo;
typedef TLinkPointInfo *PLinkPointInfo;
struct TLinkPointInfo
{
public:
TFlexControl* Control;
int Index;
Types::TPoint DocPos;
int Size;
};
class DELPHICLASS TSchemeRefProp;
class PASCALIMPLEMENTATION TSchemeRefProp : public Flexprops::TCustomProp
{
typedef Flexprops::TCustomProp inherited;
private:
TFlexControl* FValue;
void __fastcall SetValue(const TFlexControl* Value);
protected:
virtual System::UnicodeString __fastcall GetDisplayValue();
virtual TFlexControl* __fastcall GetNamesControl(void);
public:
__fastcall TSchemeRefProp(Flexprops::TPropList* AOwner, const System::UnicodeString AName);
virtual void __fastcall GetEnumList(Classes::TStrings* List);
virtual void __fastcall SetPropValue(const System::UnicodeString PropName, const System::Variant &Value);
virtual System::Variant __fastcall GetPropValue(const System::UnicodeString PropName);
__property TFlexControl* Value = {read=FValue, write=SetValue};
public:
/* TCustomProp.Destroy */ inline __fastcall virtual ~TSchemeRefProp(void) { }
};
class DELPHICLASS TLinkProp;
class PASCALIMPLEMENTATION TLinkProp : public Flexprops::TCustomProp
{
typedef Flexprops::TCustomProp inherited;
private:
System::UnicodeString FValue;
bool FLinkChanged;
Flexutils::TNotifyLinkEvent FOnLinkedNotify;
Flexutils::TNotifyLinkEvent FOnLinkedFreeNotify;
System::UnicodeString __fastcall GetValue();
void __fastcall SetValue(const System::UnicodeString Value);
void __fastcall SetControl(const TFlexControl* Value);
void __fastcall SetProp(const Flexprops::TCustomProp* Value);
protected:
TFlexControl* FControl;
Flexprops::TCustomProp* FProp;
bool FLinkToOtherOwner;
virtual System::UnicodeString __fastcall GetDisplayValue();
virtual void __fastcall SetDisplayValue(const System::UnicodeString Value);
virtual bool __fastcall SetLink(TFlexControl* AControl, Flexprops::TCustomProp* AProp);
virtual void __fastcall LinkedNotify(System::TObject* Sender, Flexutils::TNotifyLink* Source, const Flexutils::TNotifyLinkInfo &Info);
virtual void __fastcall LinkedFreeNotify(System::TObject* Sender, Flexutils::TNotifyLink* Source, const Flexutils::TNotifyLinkInfo &Info);
public:
__fastcall TLinkProp(Flexprops::TPropList* AOwner, const System::UnicodeString AName);
__fastcall virtual ~TLinkProp(void);
virtual void __fastcall SetPropValue(const System::UnicodeString PropName, const System::Variant &Value);
virtual System::Variant __fastcall GetPropValue(const System::UnicodeString PropName);
__property TFlexControl* LinkedControl = {read=FControl, write=SetControl};
__property Flexprops::TCustomProp* LinkedProp = {read=FProp, write=SetProp};
__property System::UnicodeString Value = {read=GetValue, write=SetValue};
__property NotifyLink = {read=FNotifyLink};
__property Flexutils::TNotifyLinkEvent OnLinkedNotify = {read=FOnLinkedNotify, write=FOnLinkedNotify};
__property Flexutils::TNotifyLinkEvent OnLinkedFreeNotify = {read=FOnLinkedFreeNotify, write=FOnLinkedFreeNotify};
};
class DELPHICLASS TLinkPointProp;
class PASCALIMPLEMENTATION TLinkPointProp : public TLinkProp
{
typedef TLinkProp inherited;
private:
TFlexControl* FConnector;
Types::TPoint FLinkPoint;
Types::TPoint FSavedPoint;
Types::TRect FSavedRect;
void __fastcall SetLinkPoint(const Types::TPoint &Value);
protected:
virtual bool __fastcall SetLink(TFlexControl* AControl, Flexprops::TCustomProp* AProp);
virtual void __fastcall LinkedNotify(System::TObject* Sender, Flexutils::TNotifyLink* Source, const Flexutils::TNotifyLinkInfo &Info);
public:
__fastcall TLinkPointProp(Flexprops::TPropList* AOwner, const System::UnicodeString AName);
int __fastcall IndexOfLinkPoint(void);
__property Flexprops::TCustomProp* LinkedProp = {read=FProp};
__property Types::TPoint LinkPoint = {read=FLinkPoint, write=SetLinkPoint};
public:
/* TLinkProp.Destroy */ inline __fastcall virtual ~TLinkPointProp(void) { }
};
class DELPHICLASS TLayerProp;
class DELPHICLASS TFlexLayer;
class PASCALIMPLEMENTATION TLayerProp : public Flexprops::TStrProp
{
typedef Flexprops::TStrProp inherited;
private:
TFlexLayer* __fastcall GetControl(void);
void __fastcall SetControl(const TFlexLayer* Value);
protected:
virtual void __fastcall SetValue(const System::UnicodeString Value);
public:
__fastcall TLayerProp(Flexprops::TPropList* AOwner, const System::UnicodeString AName);
virtual void __fastcall GetEnumList(Classes::TStrings* List);
__property TFlexLayer* Control = {read=GetControl, write=SetControl};
public:
/* TCustomProp.Destroy */ inline __fastcall virtual ~TLayerProp(void) { }
};
class DELPHICLASS TFlexPanel;
class DELPHICLASS TFlexCustomScheme;
class PASCALIMPLEMENTATION TFlexControl : public System::TObject
{
typedef System::TObject inherited;
public:
TFlexControl* operator[](int Index) { return Controls[Index]; }
private:
TFlexPanel* FOwner;
TFlexControl* FParent;
TFlexLayer* FLayer;
TFlexState FState;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?