You must have two Diagrams (main and overview) and two corresponding Models (virtual and whole). Is that correct?
Are you using TwoWay Bindings to automatically update the model data with changes that occur in the diagram?
If so, then you can organize your page to be like the Local View sample, http://gojs.net/latest/samples/localview.html. The two Models should share the same model data object for each node that appears in both diagrams. If that’s the case, you could just implement this on your virtual model:
myLocalDiagram.model.addChangedListener(function(e) {
if (e.change === go.ChangedEvent.Property) {
myFullDiagram.model.raiseDataChanged(e.object, e.propertyName, e.oldValue, e.newValue, e.oldParam, e.newParam);
}
});
The second request is also ambiguous to me.