See below. Please note, it has 0 error checking in it currently, so if it is ran in the document more than once (as well as a couple other things), it will cause an error.
Also, this is in vb.net, so it is ready to run as an iLogic rule.
You have yet to convert it and add error handling.
Good luck.
'Starting Structure:
'|-Sketch Symbols
' |- Triangle
' |- Square
' |- Ellipse
'Ending Structure:
'|-Sketch Symbols
' |- Combo
' |- Ellipse
' |- Sharps
' |- Triangle
' |- Square
Sub Main()
Call AddItemsToFolder("Sharps", "Triangle", "Square")
Call SortDwgResourcesFolder
Call AddItemsToFolder("Combo", "Sharps", "Ellipse")
Call SortDwgResourcesFolder
End Sub
Sub AddItemsToFolder(oFolderTitle As String, ByVal ParamArray oSketchedSymbolNameArray As String())
Dim oPane As BrowserPane
Dim oNode As BrowserNode
Dim oTopNode As BrowserNode
Dim oDwgResourcesFolder As BrowserNode
Dim oSketchedSymbolsFolder As BrowserNode
Dim oOccurrenceNodes1 As ObjectCollection
oOccurrenceNodes1 = ThisApplication.TransientObjects.CreateObjectCollection
oPane = ThisApplication.ActiveDocument.BrowserPanes("Model")
oDwgResourcesFolder = oPane.TopNode.BrowserNodes.Item("Drawing Resources")
oSketchedSymbolsFolder = oDwgResourcesFolder.BrowserNodes.Item(4)
For Each oNode In oSketchedSymbolsFolder.BrowserNodes
oNodeName = Right(oNode.FullPath, Len(oNode.FullPath) - InStrRev(oNode.FullPath, ":", -1))
For Each oSketchSymbolName In oSketchedSymbolNameArray
If oNodeName = oSketchSymbolName
oOccurrenceNodes1.Add(oNode)
End If
Next
Next
oPane.AddBrowserFolder(oFolderTitle, oOccurrenceNodes1)
End Sub
Sub SortDwgResourcesFolder()
ThisApplication.ActiveDocument.BrowserPanes("Model").TopNode.BrowserNodes.Item("Drawing Resources").BrowserNodes.Item(4).DoSelect
Dim oCommandMgr As CommandManager
oCommandMgr = ThisApplication.CommandManager
Dim oControlDef1 As ControlDefinition
oControlDef1 = oCommandMgr.ControlDefinitions.Item("DrawingResourceSort")
oControlDef1.Execute
End Sub
--------------------------------------
Did you find this reply helpful ? If so please use the 'Accept as Solution' or 'Like' button below.