TronDesigner – Integration Examples
Docs: Developer documentation  |  Events and callbacks

Back to examples

Event Handling & Callbacks

Subscribe to editor events with subscribeDesignerEvent(entityType, eventType, callback) (or the data-td-*-callback attributes of the script tag). Every callback gets { entityType, eventType, entityGuid, detail }.

Available Events:

There is no print job deleted event and no editor open/close event. To learn that the editor closed, pass onClose(reason, redirectUrl) in the options of openDesigner() / open() - it is logged below as Editor.Closed.

Oregon 400 ml - Red

Create New Print Job

Event Log

Waiting for events...

Implementation Code

// Subscribe to events
const td = window.tronDesigner;

td.subscribeDesignerEvent("printJob", "created", (event) => {
    console.log("Print job created:", event.entityGuid, event.detail);
});

td.subscribeDesignerEvent("printJob", "updated", (event) => {
    console.log("Print job updated:", event.entityGuid);
});

td.subscribeDesignerEvent("logo", "created", (event) => {
    console.log("Logo uploaded:", event.entityGuid);
});

td.subscribeDesignerEvent("proofreading", "created", (event) => {
    console.log("Proofreading PDF:", event.detail); // Blob
});

// Editor closed - use the onClose option, there is no "editor" event
td.openDesigner(editorArguments, {
    mode: "dialog",
    onClose: (reason, redirectUrl) => console.log("Editor closed:", reason) // 'Confirmed' | 'Cancelled' | 'Error'
});

// Edit the print job later
td.openDesigner({
    openMode: "Edit",
    printJob: { printJobGuid: printJobGuid }
}, { mode: "dialog" });