Converts referenced symbol to group using the specified conversion options.
{| class="wikitable_c" |+ Table - Convert Actions
| ! Convert Action !! Constant |
|---|
| Don't convert subobjects |
| 0 |
| - |
| Convert plug-in and symbol subobjects |
| 1 |
| - |
| Convert all subobjects |
| 2 |
| } |
PROCEDURE SymbolToGroup(
h : HANDLE;
convertAction : INTEGER);def vs.SymbolToGroup(h, convertAction):
return None| Name | Type | Description |
|---|---|---|
| h | HANDLE | Handle to the symbol |
| convertAction | INTEGER | Conversion action: |
([[User:CBM-c-|c]], 2014.09.14): Upon success, this creates a group which doesn't respond to ''LNewObj''. It actually disables ''LNewObj'', which will return NIL, unregarded what you created before running ''SymbolToGroup''
The handle to the group can be fetched storing a handle to the object BEFORE the symbol on drawing, then fetching the next object:
PROCEDURE Test;
VAR
h : HANDLE;
BEGIN
h := PrevObj(FSActLayer); { store "h" as placeholder }
{ FSActLayer must be a symbol on drawing }
IF (FSActLayer <> NIL) & (GetType(h) = 15) THEN BEGIN
SymbolToGroup(FSActLayer, 2);
{ fetch group starting from placeholder "h" }
Message(GetType(NextObj(h))); { <-- NextObj(h) should return 11: is the new group }
END ELSE
AlrtDialog('Select a symbol on drawing!');
END;
RUN(Test);
Availability: from VectorWorks 10.0
- Objects - Symbols