DesignIntf

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche


DesignIntf definiert die von den Eigenschaften-Editoren in der IDE verwendeten Interfaces und Klassen. In RAD Studio können Sie DesignIntf aus einem Package oder einer DLL-Quelle verwenden. Im Folgenden finden Sie die beste Vorgehensweise für beide Fälle.


Verwenden von DesignIntf aus einem Package

Da IDE-Plugins meist Packages sind und sie die Unit DesignIntf verwenden, ist die häufigste Vorgehensweise für die Verwendung das Hinzufügen der Datei designide zum Ordner Erfordert wie unten dargestellt:

  1. Erweitern Sie im Fenster "Projekte" den Knoten Package1.bpl.
    Package1 bpl.png
  2. Klicken Sie mit der rechten Maustaste auf den Ordner Erfordert, und wählen Sie Referenz hinzufügen... aus.
    Add Reference.png
  3. Geben Sie im Fenster Hinzufügen in das Feld Name designide.dcp ein.
    Add Package.png
  4. Klicken Sie auf OK. Die Datei designide.dcp sollte nun unter dem Ordner "Erfordert" erstellt worden sein.
    Designide dcp.png

Nachdem Sie den Package-Namen hinzugefügt haben, erkennt der Compiler automatisch, dass Ihr Package das Package designide verwendet.

Verwenden von DesignIntf aus einer DLL

Um die Units DesignIntf und DesignEditors aus einer DLL mit Delphi zu verwenden, müssen Sie eine Verknüpfung zum Package designide erstellen. Fügen Sie dazu den Compiler-Optionen –LUDesignIDE hinzu:

  1. Klicken Sie in der Menüleiste auf Projekt und wählen Sie Optionen aus, um das Dialogfeld Projektoptionen zu öffnen.
  2. Wählen Sie unter Delphi-Compiler die Option Compilieren aus.
  3. Suchen Sie im Abschnitt Weitere Optionen nach Weitere Optionen für die Übergabe an den Compiler und geben Sie –LUDesignIDE ein.
    Compiling.png

Für C++ müssen Sie sicherstellen, dass $(BDS)\include\windows\vcl\design dem INCLUDE-Pfad und designide.bpi dem Ordner Erfordert Ihres Packages hinzugefügt ist.

Weitere Informationen finden Sie in den Kommentaren in der Quelltextdatei. Die Quelltextdatei DesignIntf.pas ist ausführlich kommentiert.


Klassen

IActivatableRepräsentiert eine Komponente, die aktiviert werden kann.
IClassStellt den Zugriff auf Klassen-Metadaten bereit.
IComponentEditorIComponentEditor dient als Interface für die Kommunikation zwischen dem Formular-Designer und einem Komponenteneditor.
IComponentGuidelinesStellt den Zugriff auf Richtlinien für visuelle Komponenten bereit.
ICustomModuleRepräsentiert ein benutzerdefiniertes Modul.
IDefaultEditorRepräsentiert einen Standardeditor.
IDesignEditQueryStellt den Zugriff auf Bearbeitungsoperationen bereit.
IDesignerIDesigner ist ein Interface zum Formular-Designer der IDE.
IDesigner100 IDesigner100 ist ein Interface für den Formular-Designer in der IDE.
IDesigner170
IDesigner200
IDesigner60 IDesigner60 ist ein Interface für den Formular-Designer in der IDE.
IDesigner70 IDesigner70 ist ein Interface für den Formular-Designer in der IDE.
IDesigner80 IDesigner80 ist ein Interface für den Formular-Designer in der IDE.
IDesignerSelectionsIDesignerSelections stellt eine Liste persistenter Objekte dar.
IDesignNotificationRepräsentiert eine Benachrichtigung von der IDE, wenn ein bestimmtes Ereignis auftritt.
IDesignNotificationEx
IDesignNotificationViews
IDesignObjectRepräsentiert ein Objekt im Formular-Designer.
IDesignPersistentRepräsentiert ein vom Designer verwendetes persistentes Objekt.
IDesignWindowRepräsentiert ein Designfenster, das in der IDE angezeigt wird.
IEditHandlerStellt den Zugriff auf Bearbeitungsoperationen bereit.
IEventInfoEnthält Typinformationen zu einem Ereignis.
IHostFormRepräsentiert ein Host-Formular für einen benutzerdefinierten Designer.
IImplementationStellt den Zugriff auf die Instanz einer Klasse bereit.
IMethodPropertyRepräsentiert eine Methodeneigenschaft.
IPropertyIProperty ist die Schnittstelle für die Kommunikation zwischen dem Objektinspektor und einem Eigenschaftseditor.
IProperty160
IProperty70Repräsentiert eine Eigenschaft.
IProperty80Repräsentiert eine Eigenschaft.
IPropertyControlStellt die Steuerung der Daten einer Eigenschaft bereit.
IPropertyDescriptionErmöglicht das Hinzufügen von Beschreibungen zu der Eigenschaft.
IPropertyHostStellt den Zugriff auf ein Dropdown-Steuerelement für eine Eigenschaft bereit.
IPropertyHost20Stellt den Zugriff auf ein Dropdown-Steuerelement für eine Eigenschaft bereit.
IPropertyKindStellt den Zugriff auf den Typ der Eigenschaft bereit.
IReferencePropertyRepräsentiert eine Eigenschaft, deren Wert eine andere Komponente auf dem Formular ist.
ISelectionEditorStellt die Unterstützung für die Bearbeitung von im Formular-Designer ausgewählten Komponenten bereit.
ISelectionEditorListRepräsentiert eine Liste mit ISelectionEditor-Objekten.
ISelectionPropertyFilterStellt die Unterstützung für das Filtern der Eigenschaftsliste für eine Auswahl bereit, die an den Objektinspektor gesendet werden soll.
IShowReferenceProperty
IWidePropertyRepräsentiert eine WideString-Eigenschaft.
IWideProperty10Repräsentiert eine Erweiterung des Interface IWideProperty.
IWidePropertyDescriptionStellt die Unterstützung zum Abrufen der Beschreibung einer Eigenschaft bereit.
TBaseComponentEditorTBaseComponentEditor ist die Basisklasse für alle Komponenteneditoren.
TBaseComponentGuidelines TBaseComponentGuidelines ist die Basisklasse für Komponentenrichtlinien-Klassen.
TBaseCustomModuleBasisklasse für benutzerdefinierte Module.
TBasePropertyEditorTBasePropertyEditor ist die Basisklasse für alle Eigenschaftseditoren.
TBaseSelectionEditorBasisklasse für Auswahleditorklassen.
TClassWrapperBasis-Wrapper für IClass.
TComponentEditorClassKlasse von TBaseComponentEditor.
TComponentGuidelinesClassKlasse von TBaseComponentGuidelines.
TCustomModuleClassKlasse von TBaseCustomModule.
TDesignerSelectionsTDesignerSelections verwaltet eine Liste persistenter Objekte.
TDragTargetStellt die Unterstützung für Drag&Drop-Operationen bereit.
TDragTargetClassKlasse von TDragTarget.
TEventInfoRepräsentiert die Typinformationen für ein Ereignis.
TPropertyEditorClassKlasse von TBasePropertyEditor.
TSelectionEditorClassKlasse von TBaseSelectionEditor.

Routinen

CreateSelectionList
EnableDemandLoadReport
ForceDemandLoadStateLegt fest, ob die IDE das intelligente Laden von registrierten Komponenten verwenden soll.
PersistentToDesignObject
RegisterComponentEditorRegistriert einen Editor, der während des Entwurfs verfügbar ist.
RegisterComponentGuidelines
RegisterCustomModule
RegisterDesignDragObject
RegisterDesignNotification
RegisterDragTarget
RegisterIDropTarget
RegisterPropertiesInCategoryRegistriert mehrere Eigenschaften in einer bestimmten Eigenschaftskategorie.
RegisterPropertyEditorErmöglicht es einer Komponente, einen benutzerdefinierten Eigenschaftseditor über den Objektinspektor bereitzustellen.
RegisterPropertyInCategoryRegistriert eine Eigenschaft in einer bestimmten Eigenschaftskategorie.
RegisterPropertyMapper
RegisterSelectionEditor
SetPropertyEditorGroup
UnlistPublishedProperty
UnregisterDesignNotification

Typen

TCustomModuleAttribute
TCustomModuleAttributes
TDemandLoadStateLegt fest, ob die IDE das intelligente Laden (Lazy Loading) von in der IDE installierten Entwurfszeit-Packages verwenden soll.
TDesignerGuideType
TEditAction
TEditState
TEditStates
TEnableDemandLoadReportProc
TForceDemandLoadStateProc
TGetDesignerEvent
TGetPropProc
TGetWideStrProc
TPropertyAttribute
TPropertyAttributes
TPropertyEditorFilterFunc
TPropertyMapperFunc
TPropKind
TRegisterComponentEditorProc
TRegisterComponentGuidelines
TRegisterCustomModuleProc
TRegisterDesignDragObject
TRegisterDesignNotification
TRegisterDragTargetProc
TRegisterIDropTarget
TRegisterPropertyEditorProc
TRegisterPropertyInCategoryProc
TRegisterPropertyMapperProc
TRegisterSelectionEditorProc
TSetPropertyEditorGroupProc

Variablen

_sActionCategoryName
_sAppearanceCategoryName
_sBehaviorCategoryName
_sDatabaseCategoryName
_sDataCategoryName
_sDesignCategoryName
_sDragNDropCategoryName
_sFocusCategoryName
_sHelpCategoryName
_sInputCategoryName
_sInvalidFilter
_sKeyCategoryName
_sLayoutCategoryName
_sLegacyCategoryName
_sLinkageCategoryName
_sLocaleCategoryName
_sLocalizableCategoryName
_sMiscellaneousCategoryName
_sMouseCategoryName
_sPropertyChangeCategoryName
_sVisualCategoryName
_sWindowStyleName
EnableDemandLoadReportProc
ForceDemandLoadStateProc
GReferenceExpandableGibt an, ob der Objektinspektor Komponenteneigenschaften wie Untereigenschaften behandelt.
GShowReadOnlyPropsGibt an, ob im Objektinspektor als published deklarierte, schreibgeschützte Eigenschaften angezeigt werden.
RegisterComponentEditorProc
RegisterComponentGuidelinesProc
RegisterCustomModuleProc
RegisterDesignDragObjectProc
RegisterDesignNotificationProc
RegisterDragTargetProc
RegisterIDropTargetProc
RegisterPropertyEditorProc
RegisterPropertyInCategoryProc
RegisterPropertyMapperProc
RegisterSelectionEditorProc
SetPropertyEditorGroupProc
UnregisterDesignNotificationProc

Konstanten

MaxIdentLengthMaxIdentLength: Integer = $3F;