VS:SymbolToGroup: Difference between revisions
Jump to navigation
Jump to search
(add remark: difficult list position) |
(expand example) |
||
Line 68: | Line 68: | ||
IF FSActLayer <> NIL THEN BEGIN | IF FSActLayer <> NIL THEN BEGIN | ||
SymbolToGroup(FSActLayer, 2); | SymbolToGroup(FSActLayer, 2); | ||
Message(GetType(NextObj(h))); | Message(GetType(NextObj(h))); { <-- NextObj(h) is the new group } | ||
{ fetch group starting from placeholder "h" } | |||
END ELSE | END ELSE | ||
AlrtDialog('Select a symbol on drawing!'); | AlrtDialog('Select a symbol on drawing!'); |
Revision as of 15:25, 14 September 2014
.VectorScript|VectorScript ..VS:Function Reference|Function Reference ..VS:Function_Reference_Appendix|Appendix
Description
Converts referenced symbol to group using the specified conversion options.
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
Parameters
h HANDLE Handle to the symbol convertAction INTEGER Conversion action:
Remarks
(Orso, 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 object afterwards:
PROCEDURE T; VAR h : HANDLE; BEGIN h := PrevObj(FSActLayer); { store "h" as placeholder } { FSActLayer is a symbol on drawing } IF FSActLayer <> NIL THEN BEGIN SymbolToGroup(FSActLayer, 2); Message(GetType(NextObj(h))); { <-- NextObj(h) is the new group } { fetch group starting from placeholder "h" } END ELSE AlrtDialog('Select a symbol on drawing!'); END; RUN(T);
Version
Availability: from VectorWorks 10.0