deserialize labels correctly

This commit is contained in:
Dylan Vorster
2018-02-25 10:16:04 +02:00
parent 60e620539e
commit ec3e022ca3
2 changed files with 12 additions and 3 deletions

View File

@@ -58,11 +58,15 @@ export class DefaultLinkWidget extends React.Component<DefaultLinkProps, Default
}
componentDidUpdate() {
window.requestAnimationFrame(this.calculateAllLabelPosition.bind(this));
if(this.props.link.labels.length > 0){
window.requestAnimationFrame(this.calculateAllLabelPosition.bind(this));
}
}
componentDidMount() {
window.requestAnimationFrame(this.calculateAllLabelPosition.bind(this));
if(this.props.link.labels.length > 0) {
window.requestAnimationFrame(this.calculateAllLabelPosition.bind(this));
}
}
addPointToLink = (event: MouseEvent, index: number): void => {

View File

@@ -38,7 +38,12 @@ export class LinkModel<T extends LinkModelListener = LinkModelListener> extends
return p;
});
this.labels = ob.label || null;
//deserialize labels
_.forEach(ob.labels || [], (label: any) => {
let labelOb = engine.getLabelFactory(label.type).getNewInstance();
labelOb.deSerialize(label, engine);
this.addLabel(labelOb);
});
if (ob.target) {
this.setTargetPort(