package Barrier;
|
|
|
import art.library.model.devices.Device;
|
import art.library.model.devices.DeviceGraphicsRuntime;
|
import art.library.model.devices.DeviceStatus;
|
import com.kitfox.svg.SVGDiagram;
|
|
|
public class DeviceGraphicsRuntime_Barrier_status_aspect extends DeviceGraphicsRuntime
|
{
|
|
public DeviceGraphicsRuntime_Barrier_status_aspect(art.library.model.devices.Device device, SVGDiagram diagram)
|
{
|
super(device, diagram);
|
}
|
|
private boolean flashOn = false;
|
|
public void timer()
|
{
|
flashOn = !flashOn;
|
status();
|
}
|
|
public void status()
|
{
|
Device device = getDevice();
|
String color1 = "#000000";
|
String color2 = "#000000";
|
art.library.model.devices.barrier.BarrierRealtime realtime = (art.library.model.devices.barrier.BarrierRealtime) device.getDeviceRealtime();
|
switch (device.getStatus())
|
{
|
case DeviceStatus.STATUS_ONLINE:
|
color1 = "#00FF00";
|
color2 = "#007C00";
|
break;
|
case DeviceStatus.STATUS_WARNING:
|
color1 = "#FFFF00";
|
color2 = "#7C7C00";
|
break;
|
case DeviceStatus.STATUS_ALARM:
|
color1 = "#FF0000";
|
color2 = "#7C0000";
|
break;
|
case DeviceStatus.STATUS_INVALID:
|
color1 = "#B97A57";
|
color2 = "#5A3B2A";
|
break;
|
case DeviceStatus.STATUS_DISABLE:
|
color1 = "#7C7C7C";
|
color2 = "#3E3E3E";
|
break;
|
case DeviceStatus.STATUS_SIMULATION:
|
color1 = "#0000FF";
|
color2 = "#00007C";
|
break;
|
case DeviceStatus.STATUS_OFFLINE:
|
color1 = "#c000c0";
|
color2 = "#7C007C";
|
break;
|
case DeviceStatus.STATUS_UNKNOWN:
|
color1 = "#c000c0";
|
color2 = "#7C007C";
|
break;
|
}
|
setAttribute("Barrier base 1", "fill", color1);
|
setAttribute("Barrier base 2", "fill", color2);
|
setAttribute("Position up", "display", "none");
|
setAttribute("Position down", "display", "none");
|
setAttribute("Position opening", "display", "none");
|
setAttribute("Position closing", "display", "none");
|
|
setAttribute("Lock unlock", "display", "none");
|
setAttribute("Lock lock", "display", "none");
|
setAttribute("Lock unknown", "display", "none");
|
|
setAttribute("Loop input", "display", "none");
|
setAttribute("Loop input unknown", "display", "none");
|
|
setAttribute("Loop output", "display", "none");
|
setAttribute("Loop output unknown", "display", "none");
|
|
setAttribute("Loop output", "display", "none");
|
setAttribute("Loop output unknown", "display", "none");
|
|
setAttribute("Traffic light green", "display", "none");
|
setAttribute("Traffic light yellow", "display", "none");
|
setAttribute("Traffic light red", "display", "none");
|
setAttribute("Traffic light unknown", "display", "none");
|
|
if (realtime == null)
|
{
|
return;
|
}
|
|
switch (realtime.itc != null ? realtime.itc.position : realtime.general.position)
|
{
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.POSITION_UP:
|
setAttribute("Position up", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.POSITION_DOWN:
|
setAttribute("Position down", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.POSITION_OPENING:
|
setAttribute("Position opening", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.POSITION_CLOSING:
|
setAttribute("Position closing", "display", "inline");
|
break;
|
}
|
|
switch (realtime.itc != null ? realtime.itc.lock : realtime.general.lock)
|
{
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOCK_LOCK:
|
setAttribute("Lock lock", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOCK_UNLOCK:
|
setAttribute("Lock unlock", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOCK_UNKNOWN:
|
setAttribute("Lock unknown", "display", "inline");
|
setAttribute("Lock unknown", "fill", color2);
|
break;
|
}
|
|
if (realtime.itc != null)
|
{
|
|
switch (realtime.itc.loopInput)
|
{
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOOP_ACTIVE:
|
setAttribute("Loop input", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOOP_UNKNOWN:
|
setAttribute("Loop input unknown", "display", "inline");
|
setAttribute("Loop input unknown", "fill", color2);
|
break;
|
}
|
|
switch (realtime.itc.loopOutput)
|
{
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOOP_ACTIVE:
|
setAttribute("Loop output", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.LOOP_UNKNOWN:
|
setAttribute("Loop output unknown", "display", "inline");
|
setAttribute("Loop output unknown", "fill", color2);
|
break;
|
}
|
|
switch (realtime.itc.trafficLight)
|
{
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.TRAFFIC_LIGHT_GREEN:
|
setAttribute("Traffic light green", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.TRAFFIC_LIGHT_YELLOW:
|
setAttribute("Traffic light yellow", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.TRAFFIC_LIGHT_RED:
|
setAttribute("Traffic light red", "display", "inline");
|
break;
|
case art.library.model.devices.barrier.realtime.BarrierRealtimeITC.TRAFFIC_LIGHT_UNKNOWN:
|
setAttribute("Traffic light unknown", "display", "inline");
|
setAttribute("Traffic light unknown", "fill", color2);
|
break;
|
}
|
}
|
|
for (int i = 0; i < device.getServerityAlarm(); i++)
|
{
|
setAttribute("Alarm" + i, "display", "none");
|
}
|
}
|
|
// java.io.StringWriter sw = new java.io.StringWriter();
|
// art.library.gui.flat.FlatDialog.showDialog(null, "Error", e.getMessage() + "\n\n" + sw.toString(), true, art.library.gui.flat.FlatDialog.DIALOG_ERROR);
|
//
|
}
|