VCOM:VectorWorks:PluginSupport:IExtendedProps::GetObjComponentTypeWidgets

From Vectorworks Developer
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

.SDK|SDK ..SDK:Types|SDK Types ..VCOM:VCOM (Vectorworks Component Object Model)|VCOM Basics ..VCOM:Class Reference|VCOM Class Reference

Description

namespace VectorWorks::PluginSupport

Member of VCOM:VectorWorks:PluginSupport:IExtendedProps

Provides implementatoin of IWidgetsProvider or IWidgetsEditProvider interface that can be used for defining the widgets (shown in object's info palette shape pane) for the specified parametric object type and the specified component of that object type type.

virtual VCOMError VCOM_CALLTYPE GetObjComponentTypeWidgets(
CodeRefID inCodeRefID,
TComponentTypeID typeID,
IWidgetsProvider*& outWidgetProvider) = 0;
virtual VCOMError VCOM_CALLTYPE	GetObjComponentTypeWidgets(
CodeRefID inCodeRefID,
TComponentTypeID typeID,
IWidgetsEditProvider*& outWidgetEditProvider) = 0;

Parameters

inCodeRefID CodeRefID Object type identifier representing the parametric object type. This is part of the SDK:Parametric Extended Properties mechanizm.
typeID TComponentTypeID Component identifier represented the component which widgets are to be defined. The constant kObjectRootComponentTypeID represents the root component, which is the object itself.
outWidgetProvider IWidgetsProvider*& Output parameter. Returns interface for accessing widgets of the specified object's component.
outWidgetEditProvider IWidgetsEditProvider*& Output parameter. Returns interface for defining widgets of the specified object's component.

Return Value

Uses standard VCOM Error Reporting.

Return value meaning:

kVCOMError_NotInitialized Bad VCOM instance used to call the fuction.
kVCOMError_Failed Routine failed. Parametric object type doesn't exist, or component doesn't exist.

Remarks

Components are logical groups defined inside a parametric object. See SDK:Parametric Components.

Components are created by the plug-in during SDK:Parametric Extended Properties initialization using function: AddObjComponentType.

There is a standard component identifier defined to recognize the object itself -- or the main component containing all others:

// ----------------------------------------------------------------------------------------------------
// object itself component ID
const TComponentTypeID  kObjectRootComponentTypeID  = (TComponentTypeID) -1;