Hi @jan_weidner -San.
I found text commands to expand and collapse.
This is an example of collapsing all Setup, not Setups.
# Fusion360API Python script
import traceback
import adsk.core as core
import adsk.fusion as fusion
import adsk.cam as cam
def run(context):
ui: core.UserInterface = None
try:
app: core.Application = core.Application.get()
ui = app.userInterface
camObj: cam.CAM = app.activeProduct
sels: core.Selections = ui.activeSelections
sels.clear()
for setup in camObj.setups:
sels.add(setup)
app.executeTextCommand(u"NaNeuCAMUI.CollapseAllChildren")
sels.clear()
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
The deployment requires a little ingenuity because it all unfolds.
# Fusion360API Python script
import traceback
import adsk.core as core
import adsk.fusion as fusion
import adsk.cam as cam
def run(context):
ui: core.UserInterface = None
try:
app: core.Application = core.Application.get()
ui = app.userInterface
camObj: cam.CAM = app.activeProduct
sels: core.Selections = ui.activeSelections
sels.clear()
for setup in camObj.setups:
sels.add(setup)
app.executeTextCommand(u"NaNeuCAMUI.ExpandAllChildren")
sels.clear()
for ope in setup.operations:
sels.add(ope)
app.executeTextCommand(u"NaNeuCAMUI.CollapseAllChildren")
sels.clear()
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))