Не уверен, поможет ли это, но обычно у меня есть слушатель mxEvent.CHANGE и обрабатываю каждое изменение ...
Примерно так:
model.addListener(mxEvent.CHANGE, function(sender, evt)
{
var changes = evt.getProperty('edit').changes;
for (var i = 0; i < changes.length; i++) {
if (changes[i].constructor.name == "mxTerminalChange") {
// DO SOMETHING
}
}
}