StateTrackingManager
StateTrackingManager subclass that's aware of the Scheduler Pro data structure specifics, namely supports tracking of event segment changes.
There is normally no need to deal with this class manually since it's instantiated automatically by the project and can be reached like this:
project.stm
Tracking store changes
Tracks the state of every store registered via addStore. It is disabled by default so remember to call enable when your stores are registered and initial dataset is loaded. Use undo / redo method calls to restore state to a particular point in time
stm = new StateTrackingManager({
autoRecord : true,
listeners : {
'recordingstop' : () => {
// your custom code to update undo/redo GUI controls
updateUndoRedoControls();
},
'restoringstop' : ({ stm }) => {
// your custom code to update undo/redo GUI controls
updateUndoRedoControls();
}
},
getTransactionTitle : (transaction) => {
// your custom code to analyze the transaction and return custom transaction title
const lastAction = transaction.queue[transaction.queue.length - 1];
if (lastAction instanceof AddAction) {
let title = 'Add new record';
}
return title;
}
});
stm.addStore(userStore);
stm.addStore(companyStore);
stm.addStore(otherStore);
stm.enable();
Resetting the queue on data loading
When loading data from the server it makes perfect sense to reset the queue.
If project (CrudManager protocol) is used for data loading it can be done like this:
project.on({
load() {
project.stm.resetQueue();
}
});
and in case individual stores are used:
ajaxStore.on({
load() {
ajaxStore.stm.resetQueue();
}
});
Configs
10
Configs
10Common
listenersEvents
Other
autoRecordStateTrackingManager
autoRecordMergeUpdateActionsStateTrackingManager
autoRecordTransactionStopTimeoutStateTrackingManager
disabledStateTrackingManager
getTransactionTitleStateTrackingManager
Revisions
revisionsEnabledStateTrackingManager
Properties
22
Properties
22Class hierarchy
Identifies an object as an instance of StateTrackingManager class, or subclass thereof.
Identifies an object as an instance of StateTrackingManager class, or subclass thereof.
isEventsEvents
Misc
callOnFunctionsEvents
Other
autoRecordStateTrackingManager
canRedoStateTrackingManager
canUndoStateTrackingManager
disabledStateTrackingManager
isReadyStateTrackingManager
isRecordingStateTrackingManager
isRestoringStateTrackingManager
lengthStateTrackingManager
positionStateTrackingManager
queueStateTrackingManager
stateStateTrackingManager
storesStateTrackingManager
transactionStateTrackingManager
Functions
41
Functions
41Configuration
Events
detachListenersBase
Other
addListenerEvents
addStoreStateTrackingManager
disableStateTrackingManager
enableStateTrackingManager
forEachStoreStateTrackingManager
hasListenerEvents
hasStoreStateTrackingManager
mergeTransactionUpdateActionsStateTrackingManager
onEvents
redoStateTrackingManager
redoAllStateTrackingManager
rejectTransactionStateTrackingManager
relayAllEvents
removeAllListenersEvents
removeListenerEvents
removeStoreStateTrackingManager
resetQueueStateTrackingManager
resetRedoQueueStateTrackingManager
resetUndoQueueStateTrackingManager
resumeEventsEvents
startTransactionStateTrackingManager
stopTransactionStateTrackingManager
suspendEventsEvents
triggerEvents
unEvents
undoStateTrackingManager
undoAllStateTrackingManager
Events
16
Events
16beforeDestroyEvents
catchAllEvents
checkoutStartStateTrackingManager
checkoutToHeadStateTrackingManager
destroyEvents
disabledStateTrackingManager
queueResetStateTrackingManager
recordingStartStateTrackingManager
recordingStopStateTrackingManager
restoringStartStateTrackingManager
restoringStopStateTrackingManager
revisionAddStateTrackingManager
revisionRecordingStartStateTrackingManager
revisionRecordingStopStateTrackingManager
temporaryRevisionRecordingStartStateTrackingManager
temporaryRevisionRecordingStopStateTrackingManager
Event handlers
16
Event handlers
16onBeforeDestroyEvents
onCatchAllEvents
onCheckoutStartStateTrackingManager
onCheckoutToHeadStateTrackingManager
onDestroyEvents
onDisabledStateTrackingManager
onQueueResetStateTrackingManager
onRecordingStartStateTrackingManager
onRecordingStopStateTrackingManager
onRestoringStartStateTrackingManager
onRestoringStopStateTrackingManager
onRevisionAddStateTrackingManager
onRevisionRecordingStartStateTrackingManager
onRevisionRecordingStopStateTrackingManager
onTemporaryRevisionRecordingStartStateTrackingManager
onTemporaryRevisionRecordingStopStateTrackingManager
Typedefs
1
Typedefs
1BryntumListenerConfigEvents