📄 rm_propinsp.hpp
字号:
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
virtual void __fastcall Edit(void);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELFontPropEditor(void * ADesigner, int APropCount) : TELClassPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELFontPropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELModalResultPropEditor;
class PASCALIMPLEMENTATION TELModalResultPropEditor : public TELIntegerPropEditor
{
typedef TELIntegerPropEditor inherited;
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
virtual AnsiString __fastcall GetValue();
virtual void __fastcall GetValues(Classes::TStrings* AValues);
virtual void __fastcall SetValue(const AnsiString Value);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELModalResultPropEditor(void * ADesigner, int APropCount) : TELIntegerPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELModalResultPropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELPenStylePropEditor;
class PASCALIMPLEMENTATION TELPenStylePropEditor : public TELEnumPropEditor
{
typedef TELEnumPropEditor inherited;
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
virtual void __fastcall ValuesMeasureHeight(const AnsiString AValue, Graphics::TCanvas* ACanvas, int &AHeight);
virtual void __fastcall ValuesMeasureWidth(const AnsiString AValue, Graphics::TCanvas* ACanvas, int &AWidth);
virtual void __fastcall ValuesDrawValue(const AnsiString AValue, Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool ASelected);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELPenStylePropEditor(void * ADesigner, int APropCount) : TELEnumPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELPenStylePropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELBrushStylePropEditor;
class PASCALIMPLEMENTATION TELBrushStylePropEditor : public TELEnumPropEditor
{
typedef TELEnumPropEditor inherited;
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
virtual void __fastcall ValuesMeasureHeight(const AnsiString AValue, Graphics::TCanvas* ACanvas, int &AHeight);
virtual void __fastcall ValuesMeasureWidth(const AnsiString AValue, Graphics::TCanvas* ACanvas, int &AWidth);
virtual void __fastcall ValuesDrawValue(const AnsiString AValue, Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool ASelected);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELBrushStylePropEditor(void * ADesigner, int APropCount) : TELEnumPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELBrushStylePropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELTabOrderPropEditor;
class PASCALIMPLEMENTATION TELTabOrderPropEditor : public TELIntegerPropEditor
{
typedef TELIntegerPropEditor inherited;
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELTabOrderPropEditor(void * ADesigner, int APropCount) : TELIntegerPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELTabOrderPropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELShortCutPropEditor;
class PASCALIMPLEMENTATION TELShortCutPropEditor : public TELOrdinalPropEditor
{
typedef TELOrdinalPropEditor inherited;
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
virtual AnsiString __fastcall GetValue();
virtual void __fastcall GetValues(Classes::TStrings* AValues);
virtual void __fastcall SetValue(const AnsiString Value);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELShortCutPropEditor(void * ADesigner, int APropCount) : TELOrdinalPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELShortCutPropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELStringsPropEditor;
class PASCALIMPLEMENTATION TELStringsPropEditor : public TELClassPropEditor
{
typedef TELClassPropEditor inherited;
protected:
virtual TELPropAttrs __fastcall GetAttrs(void);
virtual void __fastcall Edit(void);
public:
#pragma option push -w-inl
/* TELPropEditor.Create */ inline __fastcall virtual TELStringsPropEditor(void * ADesigner, int APropCount) : TELClassPropEditor(ADesigner, APropCount) { }
#pragma option pop
#pragma option push -w-inl
/* TELPropEditor.Destroy */ inline __fastcall virtual ~TELStringsPropEditor(void) { }
#pragma option pop
};
class DELPHICLASS TELPropertyInspectorItem;
class PASCALIMPLEMENTATION TELPropertyInspectorItem : public TELPropsPageItem
{
typedef TELPropsPageItem inherited;
private:
TELPropEditor* FEditor;
AnsiString FDisplayValue;
void __fastcall EditorModified(System::TObject* Sender);
void __fastcall EditorGetComponent(System::TObject* Sender, const AnsiString AComponentName, Classes::TComponent* &AComponent);
void __fastcall EditorGetComponentNames(System::TObject* Sender, TMetaClass* AClass, Classes::TStrings* AResult);
void __fastcall EditorGetComponentName(System::TObject* Sender, Classes::TComponent* AComponent, AnsiString &AName);
void __fastcall DeGetPickList(Classes::TStrings* AResult);
void __fastcall SetEditor(const TELPropEditor* Value);
protected:
virtual AnsiString __fastcall GetDisplayValue();
virtual void __fastcall SetDisplayValue(const AnsiString Value);
virtual void __fastcall GetEditPickList(Classes::TStrings* APickList);
DYNAMIC void __fastcall EditButtonClick(void);
DYNAMIC void __fastcall EditDblClick(void);
virtual void __fastcall PickListMeasureHeight(const AnsiString AValue, Graphics::TCanvas* ACanvas, int &AHeight);
virtual void __fastcall PickListMeasureWidth(const AnsiString AValue, Graphics::TCanvas* ACanvas, int &AWidth);
virtual void __fastcall PickListDrawValue(const AnsiString AValue, Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool ASelected);
public:
__fastcall virtual ~TELPropertyInspectorItem(void);
void __fastcall UpdateParams(void);
__property TELPropEditor* Editor = {read=FEditor, write=SetEditor};
public:
#pragma option push -w-inl
/* TELPropsPageItem.Create */ inline __fastcall virtual TELPropertyInspectorItem(TELCustomPropsPage* AOwner, TELPropsPageItem* AParent) : TELPropsPageItem(AOwner, AParent) { }
#pragma option pop
};
struct TELPropertyInspectorEditorDescr
{
public:
Typinfo::TTypeInfo *TypeInfo;
TMetaClass* ObjectClass;
AnsiString PropName;
TMetaClass* EditorClass;
} ;
typedef void __fastcall (__closure *TELPropertyInspectorOnFilterProp)(System::TObject* Sender, Classes::TPersistent* AInstance, Typinfo::PPropInfo APropInfo, bool &AIncludeProp);
typedef void __fastcall (__closure *TELPropertyInspectorOnGetCaptionColor)(System::TObject* Sender, Typinfo::PTypeInfo APropTypeInfo, const AnsiString APropName, Graphics::TColor &AColor);
typedef void __fastcall (__closure *TELPropertyInspectorOnGetEditorClass)(System::TObject* Sender, Classes::TPersistent* AInstance, Typinfo::PPropInfo APropInfo, TMetaClass* &AEditorClass);
#pragma option push -b-
enum TELPropertyInspectorPropKind { pkProperties, pkEvents, pkReadOnly };
#pragma option pop
typedef Set<TELPropertyInspectorPropKind, pkProperties, pkReadOnly> TELPropertyInspectorPropKinds;
typedef DynamicArray<TELPropertyInspectorEditorDescr > RM_PropInsp__74;
class DELPHICLASS TELCustomPropertyInspector;
class PASCALIMPLEMENTATION TELCustomPropertyInspector : public TELCustomPropsPage
{
typedef TELCustomPropsPage inherited;
private:
Classes::TList* FObjects;
DynamicArray<TELPropertyInspectorEditorDescr > FEditors;
TELOnGetComponent FOnGetComponent;
TELOnGetComponentNames FOnGetComponentNames;
TRMOnBeforeModifyEvent FOnBeforeModify;
TRMOnAfterModifyEvent FOnAfterModify;
TELOnGetComponentName FOnGetComponentName;
TELPropertyInspectorPropKinds FPropKinds;
TELPropertyInspectorOnFilterProp FOnFilterProp;
Graphics::TColor FComponentRefColor;
Graphics::TColor FComponentRefChildColor;
bool FExpandComponentRefs;
bool FReadOnly;
void *FDesigner;
TELPropertyInspectorOnGetCaptionColor FOnGetCaptionColor;
bool FObjectsLocked;
TELPropertyInspectorOnGetEditorClass FOnGetEditorClass;
void __fastcall Change(void);
void __fastcall InternalModified(void);
int __fastcall IndexOfEditor(Typinfo::PTypeInfo ATypeInfo, TMetaClass* AObjectClass, const AnsiString APropName, TMetaClass* AEditorClass);
void __fastcall CheckObjectsLock(void);
Classes::TPersistent* __fastcall GetObjects(int AIndex);
void __fastcall SetObjects(int AIndex, const Classes::TPersistent* Value);
int __fastcall GetObjectCount(void);
void __fastcall SetPropKinds(const TELPropertyInspectorPropKinds Value);
void __fastcall SetComponentRefColor(const Graphics::TColor Value);
void __fastcall SetComponentRefChildColor(const Graphics::TColor Value);
void __fastcall SetExpandComponentRefs(const bool Value);
void __fastcall SetReadOnly(const bool Value);
void __fastcall SetDesigner(const void * Value);
protected:
virtual TELPropsPageItem* __fastcall CreateItem(TELPropsPageItem* AParent);
virtual void __fastcall ItemExpanded(TELPropsPageItem* AItem);
virtual void __fastcall ItemCollapsed(TELPropsPageItem* AItem);
virtual Graphics::TColor __fastcall GetItemCaptionColor(TELPropsPageItem* AItem);
virtual TMetaClass* __fastcall GetEditorClass(Classes::TPersistent* AInstance, Typinfo::PPropInfo APropInfo);
HIDESBASE virtual void __fastcall GetComponent(const AnsiString AComponentName, Classes::TComponent* &AComponent);
virtual void __fastcall GetComponentNames(TMetaClass* AClass, Classes::TStrings* AResult);
virtual void __fastcall GetComponentName(Classes::TComponent* AComponent, AnsiString &AName);
virtual void __fastcall FilterProp(Classes::TPersistent* AInstance, Typinfo::PPropInfo APropInfo, bool &AIncludeProp);
virtual void __fastcall GetCaptionColor(Typinfo::PTypeInfo APropTypeInfo, const AnsiString APropName, Graphics::TColor &AColor);
__property void * Designer = {read=FDesigner, write=SetDesigner};
__property TELPropertyInspectorPropKinds PropKinds = {read=FPropKinds, write=SetPropKinds, default=1};
__property Graphics::TColor ComponentRefColor = {read=FComponentRefColor, write=SetComponentRefColor, default=128};
__property Graphics::TColor ComponentRefChildColor = {read=FComponentRefChildColor, write=SetComponentRefChildColor, default=32768};
__property bool ExpandComponentRefs = {read=FExpandComponentRefs, write=SetExpandComponentRefs, default=1};
__property bool ReadOnly = {read=FReadOnly, write=SetReadOnly, default=0};
__property TELOnGetComponent OnGetComponent = {read=FOnGetComponent, write=FOnGetComponent};
__property TELOnGetComponentNames OnGetComponentNames = {read=FOnGetComponentNames, write=FOnGetComponentNames};
__property TELOnGetComponentName OnGetComponentName = {read=FOnGetComponentName, write=FOnGetComponentName};
__property TELPropertyInspectorOnFilterProp OnFilterProp = {read=FOnFilterProp, write=FOnFilterProp};
__property TRMOnBeforeModifyEvent OnBeforeModify = {read=FOnBeforeModify, write=FOnBeforeModify};
__property TRMOnAfterModifyEvent OnAfterModify = {read=FOnAfterModify, write=FOnAfterModify};
__property TELPropertyInspectorOnGetCaptionColor OnGetCaptionColor = {read=FOnGetCaptionColor, write=FOnGetCaptionColor};
__property TELPropertyInspectorOnGetEditorClass OnGetEditorClass = {read=FOnGetEditorClass, write=FOnGetEditorClass};
public:
__fastcall virtual TELCustomPropertyInspector(Classes::TComponent* AOwner);
__fastcall virtual ~TELCustomPropertyInspector(void);
void __fastcall Add(Classes::TPersistent* AObject);
void __fastcall AddObjects(Classes::TPersistent* * aObjects, const int aObjects_Size);
void __fastcall Delete(int AIndex);
HIDESBASE void __fastcall Remove(Classes::TPersistent* AObject);
void __fastcall Clear(void);
void __fastcall UpdateItems(void);
void __fastcall AssignObjects(Classes::TList* AObjects);
int __fastcall IndexOf(Classes::TPersistent* AObject);
void __fastcall Modified(void);
void __fastcall RegisterPropEditor(Typinfo::PTypeInfo ATypeInfo, TMetaClass* AObjectClass, const AnsiString APropName, TMetaClass* AEditorClass);
void __fastcall UnregisterPropEditor(Typinfo::PTypeInfo ATypeInfo, TMetaClass* AObjectClass, const AnsiString APropName, TMetaClass* AEditorClass);
__property Classes::TPersistent* Objects[int AIndex] = {read=GetObjects, write=SetObjects};
__property int ObjectCount = {read=GetObjectCount, nodefault};
public:
#pragma option push -w-inl
/* TWinControl.CreateParented */ inline __fastcall TELCustomPropertyInspector(HWND ParentWindow) : TELCustomPropsPage(ParentWindow) { }
#pragma option pop
};
class DELPHICLASS TELPropertyInspector;
class PASCALIMPLEMENTATION TELPropertyInspector : public TELCustomPropertyInspector
{
typedef TELCustomPropertyInspector inherited;
public:
__property Designer ;
__published:
__property PropKinds = {default=1};
__property ComponentRefColor = {default=128};
__property ComponentRefChildColor = {default=32768};
__property ExpandComponentRefs = {default=1};
__property ReadOnly = {default=0};
__property Splitter ;
__property ValuesColor = {default=8388608};
__property Align = {default=0};
__property Anchors = {default=3};
__property BiDiMode ;
__property BorderStyle = {default=1};
__property Color = {default=-16777201};
__property Constraints ;
__property Ctl3D ;
__property DragCursor = {default=-12};
__property DragKind = {default=0};
__property DragMode = {default=0};
__property Enabled = {default=1};
__property Font ;
__property ParentBiDiMode = {default=1};
__property ParentColor = {default=0};
__property ParentFont = {default=1};
__property ParentShowHint = {default=1};
__property PopupMenu ;
__property ShowHint ;
__property TabOrder = {default=-1};
__property Visible = {default=1};
__property OnBeforeModify ;
__property OnAfterModify ;
__property OnGetComponent ;
__property OnGetComponentNames ;
__property OnGetComponentName ;
__property OnFilterProp ;
__property OnGetCaptionColor ;
__property OnGetEditorClass ;
__property OnClick ;
__property OnContextPopup ;
__property OnDblClick ;
__property OnDragDrop ;
__property OnDragOver ;
__property OnEndDock ;
__property OnEndDrag ;
__property OnEnter ;
__property OnExit ;
__property OnKeyDown ;
__property OnKeyPress ;
__property OnKeyUp ;
__property OnMouseDown ;
__property OnMouseMove ;
__property OnMouseUp ;
__property OnMouseWheelDown ;
__property OnMouseWheelUp ;
__property OnStartDock ;
__property OnStartDrag ;
public:
#pragma option push -w-inl
/* TELCustomPropertyInspector.Create */ inline __fastcall virtual TELPropertyInspector(Classes::TComponent* AOwner) : TELCustomPropertyInspector(AOwner) { }
#pragma option pop
#pragma option push -w-inl
/* TELCustomPropertyInspector.Destroy */ inline __fastcall virtual ~TELPropertyInspector(void) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TWinControl.CreateParented */ inline __fastcall TELPropertyInspector(HWND ParentWindow) : TELCustomPropertyInspector(ParentWindow) { }
#pragma option pop
};
//-- var, const, procedure ---------------------------------------------------
#define SELDsgnrControlLockedDel "Control \"%s\" or some of it chidrens can not\r be delete"\
"d becouse they are locked"
#define SELDsgnrControlsLockedDel "Some controls is locked. Can not delete controls."
#define SELDsgnrClipboardFormat "Extension Library designer components"
extern PACKAGE void __fastcall ELGetObjectsProps(void * ADesigner, Classes::TList* AObjList, Typinfo::TTypeKinds AKinds, bool AOnlyNestable, TELGetEditorClassProc AGetEditorClassProc, Classes::TList* AResult);
} /* namespace Rm_propinsp */
using namespace Rm_propinsp;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // Rm_propinsp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -