package Vehicle; import art.library.model.devices.DeviceCommands; import art.library.model.devices.DeviceGraphicsRuntime; import com.kitfox.svg.SVGDiagram; public class VehicleMapWhiteBorder extends DeviceGraphicsRuntime { public VehicleMapWhiteBorder(art.library.model.devices.Device device, SVGDiagram diagram) { super(device, diagram); } private boolean flashOn = false; public void timer() { flashOn = !flashOn; status(); } public void status() { try { art.library.model.devices.vehicle.Vehicle device = (art.library.model.devices.vehicle.Vehicle) getDevice(); String color1 = "#000000"; String color2 = "#000000"; art.library.model.devices.vehicle.VehicleStatus status = (art.library.model.devices.vehicle.VehicleStatus) device.getDeviceStatus(); String display = "inline"; switch (status.status) { case art.library.model.devices.DeviceStatus.STATUS_ONLINE: color1 = "#00FF00"; color2 = "#007C00"; break; case art.library.model.devices.DeviceStatus.STATUS_WARNING: color1 = "#FFFF00"; color2 = "#7C7C00"; break; case art.library.model.devices.DeviceStatus.STATUS_ALARM: color1 = "#FF0000"; color2 = "#7C0000"; break; case art.library.model.devices.DeviceStatus.STATUS_INVALID: color1 = "#B97A57"; color2 = "#5A3B2A"; break; case art.library.model.devices.DeviceStatus.STATUS_DISABLE: color1 = "#7C7C7C"; color2 = "#3E3E3E"; break; case art.library.model.devices.DeviceStatus.STATUS_SIMULATION: color1 = "#0000FF"; color2 = "#00007C"; break; case art.library.model.devices.DeviceStatus.STATUS_OFFLINE: color1 = "#FF00FF"; color2 = "#7C007C"; display = "none"; break; case art.library.model.devices.DeviceStatus.STATUS_UNKNOWN: color1 = "#FF00FF"; color2 = "#7C007C"; display = "none"; break; } setText("Information text", device.getDeviceInformation().mnemonic != null ? device.getDeviceInformation().mnemonic : device.getDeviceInformation().ISSI); setAttribute("Icon", "fill", color2); setAttribute("Background", "fill", color1); if (System.currentTimeMillis() - device.getLastTimestampUpdate() > (device.getDeviceInformation().polling * 1000 * 3)) { display = "none"; } setAttribute("Information text", "display", display, 999); setAttribute("Icon", "display", display, 999); setAttribute("Background", "display", display, 999); setAttribute("Border", "display", display, 999); } catch (java.lang.Exception e) { } } public void status(boolean marked) { try { art.library.model.devices.vehicle.Vehicle device = (art.library.model.devices.vehicle.Vehicle) getDevice(); String color1 = "#000000"; String color2 = "#000000"; art.library.model.devices.vehicle.VehicleStatus status = (art.library.model.devices.vehicle.VehicleStatus) device.getDeviceStatus(); String display = "inline"; switch (status.status) { case art.library.model.devices.DeviceStatus.STATUS_ONLINE: color1 = "#00FF00"; color2 = "#007C00"; break; case art.library.model.devices.DeviceStatus.STATUS_WARNING: color1 = "#FFFF00"; color2 = "#7C7C00"; break; case art.library.model.devices.DeviceStatus.STATUS_ALARM: color1 = "#FF0000"; color2 = "#7C0000"; break; case art.library.model.devices.DeviceStatus.STATUS_INVALID: color1 = "#B97A57"; color2 = "#5A3B2A"; break; case art.library.model.devices.DeviceStatus.STATUS_DISABLE: color1 = "#7C7C7C"; color2 = "#3E3E3E"; break; case art.library.model.devices.DeviceStatus.STATUS_SIMULATION: color1 = "#0000FF"; color2 = "#00007C"; break; case art.library.model.devices.DeviceStatus.STATUS_OFFLINE: color1 = "#FF00FF"; color2 = "#7C007C"; display = "none"; break; case art.library.model.devices.DeviceStatus.STATUS_UNKNOWN: color1 = "#FF00FF"; color2 = "#7C007C"; display = "none"; break; } setText("Information text", device.getDeviceInformation().mnemonic != null ? device.getDeviceInformation().mnemonic : device.getDeviceInformation().ISSI); setAttribute("Icon", "fill", color2); setAttribute("Background", "fill", color1); if (System.currentTimeMillis() - device.getLastTimestampUpdate() > (device.getDeviceInformation().polling * 1000 * 3)) { display = "none"; } setAttribute("Information text", "display",( !marked ? "none" : display), 999); setAttribute("Icon", "display", display, 999); setAttribute("Background", "display", display, 999); setAttribute("Border", "display", display, 999); } catch (java.lang.Exception e) { } } public void statusHistorical(boolean marked) { try { art.library.model.devices.vehicle.Vehicle device = (art.library.model.devices.vehicle.Vehicle) getDevice(); String color1 = "#000000"; String color2 = "#000000"; art.library.model.devices.vehicle.VehicleStatus status = (art.library.model.devices.vehicle.VehicleStatus) device.getDeviceStatus(); final String display = "inline"; switch (status.status) { case art.library.model.devices.DeviceStatus.STATUS_ONLINE: color1 = "#00FF00"; color2 = "#007C00"; break; case art.library.model.devices.DeviceStatus.STATUS_WARNING: color1 = "#FFFF00"; color2 = "#7C7C00"; break; case art.library.model.devices.DeviceStatus.STATUS_ALARM: color1 = "#FF0000"; color2 = "#7C0000"; break; case art.library.model.devices.DeviceStatus.STATUS_INVALID: color1 = "#B97A57"; color2 = "#5A3B2A"; break; case art.library.model.devices.DeviceStatus.STATUS_DISABLE: color1 = "#7C7C7C"; color2 = "#3E3E3E"; break; case art.library.model.devices.DeviceStatus.STATUS_SIMULATION: color1 = "#0000FF"; color2 = "#00007C"; break; case art.library.model.devices.DeviceStatus.STATUS_OFFLINE: color1 = "#FF00FF"; color2 = "#7C007C"; break; case art.library.model.devices.DeviceStatus.STATUS_UNKNOWN: color1 = "#FF00FF"; color2 = "#7C007C"; break; } setText("Information text", device.getDeviceInformation().mnemonic != null ? device.getDeviceInformation().mnemonic : device.getDeviceInformation().ISSI); setAttribute("Icon", "fill", color2); setAttribute("Background", "fill", color1); setAttribute("Information text", "display",( !marked ? "none" : display), 999); setAttribute("Icon", "display", display, 999); setAttribute("Background", "display", display, 999); setAttribute("Border", "display", display, 999); } catch (java.lang.Exception e) { e.printStackTrace(); } } public void commands() { DeviceCommands deviceCommands = getDeviceCommands(); String color1 = "#0000FF"; String color2 = "#00007C"; if (!deviceCommands.isEmpty()) { color1 = "#00FF00"; color2 = "#007C00"; } setText("Information text", String.valueOf(device.getDeviceInformation().number)); setAttribute("Background", "fill", color1); setAttribute("Icon", "fill", color2); setAttribute("Border", "stroke", color2); } // 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); // }