The viewer and designer can be combined into one edit-and-preview workflow using the viewer's onDesignReport and the designer's onExit events, served from two routes.

Viewer route: enable the Design button.
viewer = StiViewer()
viewer.onDesignReport += 'viewerDesign'
viewer.options.toolbar.showDesignButton = True
Designer route: handle Exit and Save.
designer = StiDesigner()
designer.onExit += 'designerExit'
designer.onSaveReport += saveReport
designer.options.toolbar.showFileMenuExit = True

How it works. Two routes and a pair of events link preview and editing, so users move between viewer and designer within one workflow.

Hi. Need any help?