Hi Everyone, I've been working on this for a LONG while and just don't understand it. Here's what I am doing (in VB): I duplicate a symbol, add it 4 times to layer1 (with some massaging to each added reference). Variable 'aLayer' is the first layer (trust me, I've checked it 2.742 times ). When I refer to the AI UI and refresh it just before the line in RED executes, everything shows just fine - those little buggers are on layer1, just where they are supposed to be. Then when I execute the 'delete' to break the link, it moves the pathitems to layer 2. If I try the same on Layer2, (there's only 2 layers), the copies go to layer 2. If I add a third layer to diagnose the problem using the layer 2 variables, the copies go to layer3. Any ideas what I am doing wrong? Thanks so much in advance for your help! TT Here's the code: ... Dim tmpCenterWidget = aDoc.Symbols.GetByName("CenterWidget").Duplicate Dim widgetLeft = DrawCenterWidgets(aDoc, "_WidgetLeft_" & aLayer.Name, tmpCenterWidget, 180, yCenter + 18, x1) Dim widgetRight = DrawCenterWidgets(aDoc, "_WidgetRight_" & aLayer.Name, tmpCenterWidget, 0, yCenter + 18, x2 - 18) Dim widgetTop = DrawCenterWidgets(aDoc, "_WidgetTop_" & aLayer.Name, tmpCenterWidget, 90, y1, xCenter - 18) Dim widgetBottom = DrawCenterWidgets(aDoc, "_WidgetBottom_" & aLayer.Name, tmpCenterWidget, -90, y2 + 18, xCenter - 18) tmpCenterWidget.Delete() ' deletes temp widget symbol duplicate which breaks symbols to paths 'GroupSelectedObjects(app, "_GroupWidgets_") aDoc.Selection = vbEmpty 'deselects all app.Redraw() Return True End Function Private Function DrawCenterWidgets(aDoc As AI.Document, widgetName As String, baseSymbol As Illustrator.Symbol, rotate As Double, top As Double, left As Double) Dim aLayer = aDoc.ActiveLayer Dim newSymbol = aLayer.SymbolItems.Add(baseSymbol) newSymbol.Rotate(rotate) newSymbol.Top = top newSymbol.Left = left newSymbol.Name = widgetName Return newSymbol End Function
... View more