📄 flexbase.hpp
字号:
public:
__fastcall TFlexPaintList(TFlexPanel* AOwner);
__fastcall virtual ~TFlexPaintList(void);
PFlexPaintStruct __fastcall BeginPaint(Graphics::TCanvas* ACanvas);
void __fastcall EndPaint(PFlexPaintStruct PaintStruct);
__property TFlexPanel* Owner = {read=FOwner};
};
class DELPHICLASS TFlexClone;
typedef TMetaClass*TFlexCloneClass;
typedef TMetaClass*TFlexGroupClass;
class PASCALIMPLEMENTATION TFlexPanel : public Forms::TScrollingWinControl
{
typedef Forms::TScrollingWinControl inherited;
private:
Forms::TFormBorderStyle FBorderStyle;
Graphics::TCanvas* FCanvas;
int FDocWidth;
int FDocHeight;
Graphics::TColor FDocFrameColor;
Graphics::TColor FDocShadowColor;
Graphics::TBrush* FDocSpaceBrush;
bool FDocSpaceFill;
bool FDocClipping;
bool FSchemeBkStretch;
bool FShowDocFrame;
bool FAutoZoom;
bool FAutoNames;
bool FAutoNameNumbs;
bool FSelectAsFilled;
bool FSelectPartialOverlapped;
TFlexGrid* FGridControl;
TFlexToolMode FToolMode;
TFlexToolMode FDefaultToolMode;
bool FAutoDragEnabled;
TFlexLayers* FLayers;
TFlexLayer* FActiveLayer;
TFlexSchemes* FSchemes;
TFlexCustomScheme* FActiveScheme;
Classes::TList* FSelList;
bool FInDesign;
bool FViewing;
bool FModified;
Flexutils::TIdPool* FIdPool;
TFlexControl* FIdChangeControl;
int FConnectorsMinGap;
#pragma pack(push, 1)
Types::TPoint FMouseAnchor;
#pragma pack(pop)
#pragma pack(push, 1)
Types::TPoint FMoveStart;
#pragma pack(pop)
#pragma pack(push, 1)
Types::TRect FResizeRect;
#pragma pack(pop)
#pragma pack(push, 1)
Types::TRect FMarqueeRect;
#pragma pack(pop)
TMetaClass*FCreatingControlClass;
bool FShowEditPointGuide;
TFlexEditPointGuide FEditPointGuide;
TFlexControl* FEditPointControl;
DynamicArray<bool > FEditPointSelected;
int FEditPointSelCount;
bool FUseOriginalBezier;
bool FUseImageClipTransparent;
bool FWMPaintProcessing;
Flexutils::TNotifyLink* FNotifyLink;
Flexalpha::TAlphaBuffer* FAlphaBuffer;
bool FFrostPan;
bool FFrostPanFullDoc;
TFlexControlCreateEvent FOnControlCreate;
TFlexUpdateCursorEvent FOnUpdateCursor;
Flexprops::TPropChangedEvent FOnPropBeforeChanged;
Flexprops::TPropChangedEvent FOnPropChanged;
TFlexPaintEvent FOnPaintScheme;
TFlexPaintEvent FOnPaintOver;
TFlexNotifyEvent FOnNotify;
Classes::TNotifyEvent FOnBeginSelectionUpdate;
Classes::TNotifyEvent FOnEndSelectionUpdate;
Flexutils::TFlexProgressEvent FOnProgress;
Classes::TNotifyEvent FOnToolMode;
TFlexNeedHintEvent FOnNeedHint;
TFlexShowHintEvent FOnShowHint;
Classes::TNotifyEvent FOnMouseControlChange;
void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
void __fastcall SetInDesign(const bool Value);
void __fastcall SetActiveLayer(const TFlexLayer* Value);
void __fastcall SetActiveScheme(const TFlexCustomScheme* Value);
TFlexControl* __fastcall GetSelected(int Index);
int __fastcall GetSelectedCount(void);
void __fastcall SetToolMode(const TFlexToolMode Value);
void __fastcall SetCreatingControlClass(const TMetaClass* Value);
unsigned __fastcall GetCppCreatingControlClass(void);
void __fastcall SetCppCreatingControlClass(const unsigned Value);
void __fastcall SetDocHeight(const int Value);
void __fastcall SetDocWidth(const int Value);
void __fastcall SetDocFrameColor(const Graphics::TColor Value);
void __fastcall SetDocShadowColor(const Graphics::TColor Value);
void __fastcall SetDocSpaceFill(const bool Value);
bool __fastcall GetDocFrameVisible(void);
void __fastcall SetDocClipping(const bool Value);
void __fastcall SetShowDocFrame(const bool Value);
void __fastcall SetScale(int Value);
bool __fastcall GetShowGrid(void);
void __fastcall SetShowGrid(const bool Value);
bool __fastcall GetShowPixGrid(void);
void __fastcall SetShowPixGrid(const bool Value);
int __fastcall GetGridHorizSize(void);
int __fastcall GetGridVertSize(void);
void __fastcall SetGridHorizSize(const int Value);
void __fastcall SetGridVertSize(const int Value);
TFlexGridStyle __fastcall GetGridStyle(void);
void __fastcall SetGridStyle(const TFlexGridStyle Value);
bool __fastcall GetSnapToGrid(void);
void __fastcall SetSnapToGrid(const bool Value);
TFlexSnaps __fastcall GetSnapStyle(void);
void __fastcall SetSnapStyle(const TFlexSnaps Value);
Graphics::TColor __fastcall GetGridColor(void);
void __fastcall SetGridColor(const Graphics::TColor Value);
void __fastcall SetMarqueeRect(const Types::TRect &Value);
void __fastcall SetEditPointControl(TFlexControl* Value);
TFlexCustomScheme* __fastcall GetDefaultScheme(void);
Graphics::TColor __fastcall GetGridPixColor(void);
void __fastcall SetGridPixColor(const Graphics::TColor Value);
void __fastcall SetHorzExtraSpace(const int Value);
void __fastcall SetVertExtraSpace(const int Value);
void __fastcall DocSpaceBrushChanged(System::TObject* Sender);
void __fastcall SetSchemeBkStretch(const bool Value);
void __fastcall FilerProgress(System::TObject* Sender, int Progress, Flexutils::TFlexFilerProcess Process);
void __fastcall SetDocSpaceBrush(const Graphics::TBrush* Value);
HIDESBASE int __fastcall GetControlCount(TFlexControl* Control);
bool __fastcall GetEditPointSelected(int Index);
void __fastcall SetEditPointSelected(int Index, bool Value);
Flexpath::TPathEditFuncs __fastcall GetEditPointsCaps(void);
bool __fastcall GetIsLoading(void);
void __fastcall SetHideSelection(const bool Value);
void __fastcall UpdateMouseData(void);
bool __fastcall IsEditCloseFigure(void);
bool __fastcall CloseFigureByPoint(int Index);
void __fastcall SetShowEditPointGuide(const bool Value);
Flexutils::TNotifyLink* __fastcall GetNotifyLink(void);
void __fastcall SetAutoZoom(const bool Value);
void __fastcall SetGridControl(const TFlexGrid* Value);
void __fastcall SetFrostPan(const bool Value);
HIDESBASE MESSAGE void __fastcall CMHintShow(Messages::TMessage &Message);
HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
HIDESBASE MESSAGE void __fastcall WMHScroll(Messages::TWMScroll &Message);
HIDESBASE MESSAGE void __fastcall WMVScroll(Messages::TWMScroll &Message);
HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TMessage &Message);
HIDESBASE MESSAGE void __fastcall WMNCCalcSize(Messages::TMessage &Message);
protected:
TFlexPanelHistory* FHistory;
Flexhistory::THistoryGroup* FCreateInDesignAction;
Classes::TList* FWithoutParent;
Controls::TCursor FFlexCursor;
#pragma pack(push, 1)
Types::TPoint FOrigin;
#pragma pack(pop)
#pragma pack(push, 1)
Types::TRect FClientDocRect;
#pragma pack(pop)
Flexutils::TFlexFilerProcess FFilerProcess;
TFlexPaintCache FPaintCache;
int FPaintWidth;
int FPaintHeight;
#pragma pack(push, 1)
Types::TRect FPaintRect;
#pragma pack(pop)
bool FPaintForExport;
bool FPaintSchemeBackground;
#pragma pack(push, 1)
Types::TPoint FInPaintOrigin;
#pragma pack(pop)
int FInPaintScale;
int FScale;
bool FZoomingIn;
#pragma pack(push, 1)
Types::TPoint FZoomMouseStart;
#pragma pack(pop)
bool FIsPointAlter;
bool FIsOverPoint;
bool FIsOverCurveSegment;
bool FIsOverSegment;
Flexpath::TNearestPoint FOverCurveNearest;
TFlexControl* FMouseControl;
TFlexControl* FMouseSubControl;
bool FHideSelection;
TFlexControl* FHintControl;
int FEditPointIndex;
int FIsLoading;
TFlexLoadFunc FLoadFunc;
#pragma pack(push, 1)
Types::TPoint FLastMousePos;
#pragma pack(pop)
Classes::TShiftState FLastKeyShift;
#pragma pack(push, 1)
Types::TRect FSelRect;
#pragma pack(pop)
int FSelUpdateCounter;
bool FSelNeedUpdate;
TResizeCursor FResizeCursor;
HRGN FPointsRgn;
bool FPointsRgnExact;
TFlexDragObject* FDragObject;
Flexprops::TPropRefList* FRefPropsList;
TLinkPointInfo FDefaultLinkPoint;
#pragma pack(push, 1)
Types::TPoint FLastMovedPos;
#pragma pack(pop)
TFlexPaintList* FPaintList;
int FHorzExtraSpace;
int FVertExtraSpace;
bool FSaveAsBinary;
Graphics::TBitmap* FFrostPanImage;
int __fastcall AddWithoutParent(TFlexControl* Control);
bool __fastcall RemoveWithoutParent(TFlexControl* Control);
TFlexControl* __fastcall WithoutParentFindById(unsigned ControlID);
virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
virtual void __fastcall DoNotify(TFlexControl* Control, Flexutils::TFlexNotify Notify);
bool __fastcall IsInternalControl(TFlexControl* Control);
void __fastcall UpdateOrigin(void);
HIDESBASE void __fastcall UpdateScrollBars(void);
virtual void __fastcall Paint(Graphics::TCanvas* ACanvas, TFlexControl* AControl, bool ChildrenOnly, bool SelectedOnly);
virtual void __fastcall PaintPoints(Graphics::TCanvas* ACanvas);
virtual void __fastcall PaintLinkPoint(Graphics::TCanvas* ACanvas);
Types::TRect __fastcall GetAnchorRect(TFlexControl* AControl, int Inflate = 0x0);
Types::TRect __fastcall GetEditPointRect(int Index, int Inflate = 0x0);
bool __fastcall DoPointEdit(TFlexControl* Control, int Index, int DocX, int DocY);
DYNAMIC void __fastcall DoEnter(void);
DYNAMIC void __fastcall DoExit(void);
virtual void __fastcall DoMouseControlChange(void);
void __fastcall UpdatePoints(void);
bool __fastcall UpdatePointGuide(HRGN Region = (HRGN)(0x0));
bool __fastcall UpdatePointTangents(HRGN Region = (HRGN)(0x0));
void __fastcall UpdateEditPointIndex(void);
void __fastcall FindControlPoints(int PointIndex, /* out */ int &PrevNode, /* out */ int &NextNode);
int __fastcall FindFirstOrLastNodeIfEqual(int Index, TFlexControl* AControl);
void __fastcall InvalidateSelection(void);
virtual void __fastcall PaintSelection(Graphics::TCanvas* ACanvas);
virtual void __fastcall PaintMarquee(Graphics::TCanvas* ACanvas);
virtual void __fastcall DoNeedHint(bool &IsNeedHint);
virtual void __fastcall DoShowHint(Forms::THintInfo &HintInfo, bool &IsShowHint);
DYNAMIC void __fastcall DoStartDrag(Controls::TDragObject* &DragObject);
DYNAMIC void __fastcall DragOver(System::TObject* Source, int X, int Y, Controls::TDragState State, bool &Accept);
DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
void __fastcall UpdateToolMode(Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
DYNAMIC void __fastcall KeyUp(Word &Key, Classes::TShiftState Shift);
bool __fastcall ValidateID(TFlexControl* Control, unsigned LastID);
virtual void __fastcall PropBeforeChanged(System::TObject* Sender, Flexprops::TCustomProp* Prop);
virtual void __fastcall PropChanged(System::TObject* Sender, Flexprops::TCustomProp* Prop);
virtual HRGN __fastcall CreateSelMarkersRgn(void);
virtual TResizeCursor __fastcall GetSelResizeCursor(int PaintX, int PaintY);
void __fastcall UpdateSelection(TFlexControl* Control);
virtual void __fastcall SetConnectorsMinGap(const int Value);
virtual void __fastcall SetMouseControl(TFlexControl* Control, TFlexControl* SubControl = (TFlexControl*)(0x0));
__property Graphics::TCanvas* Canvas = {read=FCanvas};
__property Types::TRect MarqueeRect = {read=FMarqueeRect, write=SetMarqueeRect};
__property Flexalpha::TAlphaBuffer* AlphaBuffer = {read=FAlphaBuffer};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -