in sim/visuals/board.ts [284:317]
private getDisplayViewForNode(id: NodeType, port: number): LayoutElement {
if (this.cachedDisplayViews[id] && this.cachedDisplayViews[id][port]) {
return this.cachedDisplayViews[id][port];
}
let view: LayoutElement;
switch (id) {
case NodeType.TouchSensor:
view = new TouchSensorView(port); break;
case NodeType.MediumMotor:
view = new MediumMotorView(port); break;
case NodeType.LargeMotor:
view = new LargeMotorView(port); break;
case NodeType.GyroSensor:
view = new GyroSensorView(port); break;
case NodeType.ColorSensor:
view = new ColorSensorView(port); break;
case NodeType.UltrasonicSensor:
view = new UltrasonicSensorView(port); break;
case NodeType.InfraredSensor:
view = new InfraredView(port); break;
case NodeType.Brick:
//return new BrickView(0);
view = this.layoutView.getBrick(); break;
}
if (view) {
if (!this.cachedDisplayViews[id]) this.cachedDisplayViews[id] = [];
this.cachedDisplayViews[id][port] = view;
return view;
}
return undefined;
}