remove some core changes that are not neccesary

This commit is contained in:
Dylan Vorster
2017-11-29 14:30:02 +02:00
parent a3ef7a089f
commit 77b2ee6f76
4 changed files with 19 additions and 39 deletions

View File

@ -9,17 +9,22 @@ import {
DiagramWidget,
LinkWidget,
LinkProps,
DefaultLinkWidget,
CustomizableLinkProps
DefaultLinkWidget
} from "../../src/main";
import { action } from "@storybook/addon-actions";
import * as React from "react";
import { LinkWidgetFactory } from "../../src/WidgetFactories";
export class AdvancedLinkModel extends LinkModel {
size: number;
color: string;
constructor() {
super();
this.linkType = "advanced";
this.linkType = "advanced";
this.color = 'green';
this.size = 6;
}
}
@ -36,27 +41,15 @@ export class AdvancedPortModel extends DefaultPortModel
}
}
export class AdvancedLinkWidget extends DefaultLinkWidget {
constructor(props: LinkProps) {
super(props);
}
beforeLinkGenerated(props: CustomizableLinkProps): CustomizableLinkProps {
return {
color: 'green',
width: 6,
smooth: props.smooth
};
}
}
export class AdvancedLinkWidgetFactory extends LinkWidgetFactory {
constructor() {
super("advanced");
}
generateReactWidget(diagramEngine: DiagramEngine, link: LinkModel): JSX.Element {
return React.createElement(AdvancedLinkWidget, {
generateReactWidget(diagramEngine: DiagramEngine, link: AdvancedLinkModel): JSX.Element {
return React.createElement(DefaultLinkWidget, {
color: link.color,
width: link.size,
link: link,
diagramEngine: diagramEngine
});

View File

@ -273,10 +273,6 @@ export class LinkModel extends BaseModel<LinkModelListener> {
getType(): string {
return this.linkType;
}
generateLinkWidget(diagramEngine: DiagramEngine): JSX.Element | null {
return diagramEngine.generateWidgetForLink(this);
}
}
export class PortModel extends BaseModel<BaseModelListener> {

View File

@ -3,16 +3,15 @@ import { LinkModel, PointModel } from "../Common";
import * as _ from "lodash";
import { DiagramEngine } from "../DiagramEngine";
export interface CustomizableLinkProps {
color?: string;
width?: number;
smooth?: boolean;
}
export interface DefaultLinkProps extends CustomizableLinkProps {
export interface DefaultLinkProps {
link: LinkModel;
diagramEngine: DiagramEngine;
pointAdded?: (point: PointModel, event) => any;
color?: string;
width?: number;
smooth?: boolean;
}
export interface DefaultLinkState {
@ -84,16 +83,8 @@ export class DefaultLinkWidget extends React.Component<DefaultLinkProps, Default
);
}
beforeLinkGenerated(props: CustomizableLinkProps): CustomizableLinkProps {
return props;
}
generateLink(extraProps: any, id: string | number): JSX.Element {
var props = this.beforeLinkGenerated({
color: this.props.color,
smooth: this.props.smooth,
width: this.props.width
});
var props = this.props;
var Bottom = (
<path

View File

@ -58,7 +58,7 @@ export class LinkLayerWidget extends React.Component<LinkLayerProps, LinkLayerSt
}
//generate links
var generatedLink = link.generateLinkWidget(this.props.diagramEngine);
var generatedLink = this.props.diagramEngine.generateWidgetForLink(link);
if (!generatedLink) {
console.log("no link generated for type: " + link.getType());
return null;