📄 simplegraph.hpp
字号:
// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved
// (DO NOT EDIT: machine generated header) 'SimpleGraph.pas' rev: 6.00
#ifndef SimpleGraphHPP
#define SimpleGraphHPP
#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Menus.hpp> // Pascal unit
#include <Forms.hpp> // Pascal unit
#include <StdCtrls.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Graphics.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Messages.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <SysInit.hpp> // Pascal unit
#include <System.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Simplegraph
{
//-- type declarations -------------------------------------------------------
typedef DynamicArray<Types::TPoint > TPoints;
class DELPHICLASS EGraphStreamError;
class PASCALIMPLEMENTATION EGraphStreamError : public Classes::EStreamError
{
typedef Classes::EStreamError inherited;
public:
#pragma option push -w-inl
/* Exception.Create */ inline __fastcall EGraphStreamError(const AnsiString Msg) : Classes::EStreamError(Msg) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmt */ inline __fastcall EGraphStreamError(const AnsiString Msg, const System::TVarRec * Args, const int Args_Size) : Classes::EStreamError(Msg, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateRes */ inline __fastcall EGraphStreamError(int Ident)/* overload */ : Classes::EStreamError(Ident) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmt */ inline __fastcall EGraphStreamError(int Ident, const System::TVarRec * Args, const int Args_Size)/* overload */ : Classes::EStreamError(Ident, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateHelp */ inline __fastcall EGraphStreamError(const AnsiString Msg, int AHelpContext) : Classes::EStreamError(Msg, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmtHelp */ inline __fastcall EGraphStreamError(const AnsiString Msg, const System::TVarRec * Args, const int Args_Size, int AHelpContext) : Classes::EStreamError(Msg, Args, Args_Size, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResHelp */ inline __fastcall EGraphStreamError(int Ident, int AHelpContext)/* overload */ : Classes::EStreamError(Ident, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmtHelp */ inline __fastcall EGraphStreamError(System::PResStringRec ResStringRec, const System::TVarRec * Args, const int Args_Size, int AHelpContext)/* overload */ : Classes::EStreamError(ResStringRec, Args, Args_Size, AHelpContext) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~EGraphStreamError(void) { }
#pragma option pop
};
class DELPHICLASS EGraphInvalidOperation;
class PASCALIMPLEMENTATION EGraphInvalidOperation : public Classes::EInvalidOperation
{
typedef Classes::EInvalidOperation inherited;
public:
#pragma option push -w-inl
/* Exception.Create */ inline __fastcall EGraphInvalidOperation(const AnsiString Msg) : Classes::EInvalidOperation(Msg) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmt */ inline __fastcall EGraphInvalidOperation(const AnsiString Msg, const System::TVarRec * Args, const int Args_Size) : Classes::EInvalidOperation(Msg, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateRes */ inline __fastcall EGraphInvalidOperation(int Ident)/* overload */ : Classes::EInvalidOperation(Ident) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmt */ inline __fastcall EGraphInvalidOperation(int Ident, const System::TVarRec * Args, const int Args_Size)/* overload */ : Classes::EInvalidOperation(Ident, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateHelp */ inline __fastcall EGraphInvalidOperation(const AnsiString Msg, int AHelpContext) : Classes::EInvalidOperation(Msg, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmtHelp */ inline __fastcall EGraphInvalidOperation(const AnsiString Msg, const System::TVarRec * Args, const int Args_Size, int AHelpContext) : Classes::EInvalidOperation(Msg, Args, Args_Size, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResHelp */ inline __fastcall EGraphInvalidOperation(int Ident, int AHelpContext)/* overload */ : Classes::EInvalidOperation(Ident, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmtHelp */ inline __fastcall EGraphInvalidOperation(System::PResStringRec ResStringRec, const System::TVarRec * Args, const int Args_Size, int AHelpContext)/* overload */ : Classes::EInvalidOperation(ResStringRec, Args, Args_Size, AHelpContext) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~EGraphInvalidOperation(void) { }
#pragma option pop
};
class DELPHICLASS EPointListError;
class PASCALIMPLEMENTATION EPointListError : public Classes::EListError
{
typedef Classes::EListError inherited;
public:
#pragma option push -w-inl
/* Exception.Create */ inline __fastcall EPointListError(const AnsiString Msg) : Classes::EListError(Msg) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmt */ inline __fastcall EPointListError(const AnsiString Msg, const System::TVarRec * Args, const int Args_Size) : Classes::EListError(Msg, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateRes */ inline __fastcall EPointListError(int Ident)/* overload */ : Classes::EListError(Ident) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmt */ inline __fastcall EPointListError(int Ident, const System::TVarRec * Args, const int Args_Size)/* overload */ : Classes::EListError(Ident, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateHelp */ inline __fastcall EPointListError(const AnsiString Msg, int AHelpContext) : Classes::EListError(Msg, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmtHelp */ inline __fastcall EPointListError(const AnsiString Msg, const System::TVarRec * Args, const int Args_Size, int AHelpContext) : Classes::EListError(Msg, Args, Args_Size, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResHelp */ inline __fastcall EPointListError(int Ident, int AHelpContext)/* overload */ : Classes::EListError(Ident, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmtHelp */ inline __fastcall EPointListError(System::PResStringRec ResStringRec, const System::TVarRec * Args, const int Args_Size, int AHelpContext)/* overload */ : Classes::EListError(ResStringRec, Args, Args_Size, AHelpContext) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~EPointListError(void) { }
#pragma option pop
};
class DELPHICLASS TGraphScrollBar;
class DELPHICLASS TSimpleGraph;
typedef Byte TGridSize;
typedef Shortint TMarkerSize;
typedef Word TZoom;
class DELPHICLASS TGraphObjectList;
typedef DynamicArray<TGraphObject* > SimpleGraph__01;
class DELPHICLASS TGraphObject;
#pragma option push -b-
enum TGraphObjectListAction { glAdded, glRemoved, glReordered };
#pragma option pop
typedef void __fastcall (__closure *TGraphObjectListEvent)(System::TObject* Sender, TGraphObject* GraphObject, TGraphObjectListAction Action);
class PASCALIMPLEMENTATION TGraphObjectList : public Classes::TPersistent
{
typedef Classes::TPersistent inherited;
public:
TGraphObject* operator[](int Index) { return Items[Index]; }
private:
DynamicArray<TGraphObject* > fItems;
int fCount;
int fCapacity;
TGraphObjectListEvent fOnChange;
int EnumIndex;
int EnumDir;
void __fastcall SetCapacity(int Value);
TGraphObject* __fastcall GetItems(int Index);
protected:
void __fastcall Grow(void);
int __fastcall Replace(TGraphObject* OldItem, TGraphObject* NewItem);
virtual void __fastcall NotifyAction(TGraphObject* Item, TGraphObjectListAction Action);
public:
__fastcall virtual ~TGraphObjectList(void);
void __fastcall Clear(void);
virtual void __fastcall Assign(Classes::TPersistent* Source);
int __fastcall Add(TGraphObject* Item);
void __fastcall Insert(int Index, TGraphObject* Item);
void __fastcall Delete(int Index);
int __fastcall Remove(TGraphObject* Item);
void __fastcall Move(int CurIndex, int NewIndex);
int __fastcall IndexOf(TGraphObject* Item);
TGraphObject* __fastcall First(void);
TGraphObject* __fastcall Prior(void);
TGraphObject* __fastcall Next(void);
TGraphObject* __fastcall Last(void);
__property int Count = {read=fCount, nodefault};
__property int Capacity = {read=fCapacity, write=SetCapacity, nodefault};
__property TGraphObject* Items[int Index] = {read=GetItems/*, default*/};
__property TGraphObjectListEvent OnChange = {read=fOnChange, write=fOnChange};
public:
#pragma option push -w-inl
/* TObject.Create */ inline __fastcall TGraphObjectList(void) : Classes::TPersistent() { }
#pragma option pop
};
typedef TMetaClass*TGraphNodeClass;
typedef TMetaClass*TGraphLinkClass;
#pragma option push -b-
enum TGraphCommandMode { cmViewOnly, cmPan, cmEdit, cmInsertNode, cmInsertLink };
#pragma option pop
class DELPHICLASS TGraphConstraints;
#pragma option push -b-
enum TObjectSide { osLeft, osTop, osRight, osBottom };
#pragma option pop
typedef Set<TObjectSide, osLeft, osBottom> TObjectSides;
class PASCALIMPLEMENTATION TGraphConstraints : public Classes::TPersistent
{
typedef Classes::TPersistent inherited;
private:
TSimpleGraph* fOwner;
#pragma pack(push, 1)
Types::TRect fBoundsRect;
#pragma pack(pop)
#pragma pack(push, 1)
Types::TRect fSourceRect;
#pragma pack(pop)
Classes::TNotifyEvent fOnChange;
void __fastcall SetBoundsRect(const Types::TRect &Rect);
int __fastcall GetField(int Index);
void __fastcall SetField(int Index, int Value);
protected:
DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
virtual void __fastcall DoChange(void);
public:
__fastcall TGraphConstraints(TSimpleGraph* AOwner);
virtual void __fastcall Assign(Classes::TPersistent* Source);
void __fastcall SetBounds(int aLeft, int aTop, int aWidth, int aHeight);
bool __fastcall WithinBounds(const Types::TPoint * Pts, const int Pts_Size);
bool __fastcall ConfinePt(Types::TPoint &Pt);
bool __fastcall ConfineRect(Types::TRect &Rect);
bool __fastcall ConfineOffset(int &dX, int &dY, TObjectSides Mobility);
__property TSimpleGraph* Owner = {read=fOwner};
__property Types::TRect BoundsRect = {read=fBoundsRect, write=SetBoundsRect};
__property Types::TRect SourceRect = {read=fSourceRect, write=fSourceRect};
__property Classes::TNotifyEvent OnChange = {read=fOnChange, write=fOnChange};
__published:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -