|
import art.library.model.devices.Device;
|
import art.library.model.devices.DeviceStatus;
|
import com.kitfox.svg.SVGDiagram;
|
|
public class DeviceGraphicsRuntime_Inforpark_ParkingSymbolBig extends DeviceGraphicsRuntime {
|
|
public DeviceGraphicsRuntime_Inforpark_ParkingSymbolBig(art.library.model.devices.Device device, SVGDiagram diagram) {
|
super(device, diagram);
|
}
|
|
public void timer() {
|
Device device = (Device) getDevice();
|
art.library.model.devices.DeviceGraphics graphics = device.getDeviceGraphics();
|
try {
|
if (graphics.getField("position") == null) {
|
graphics.setField("position", new Integer(0));
|
}
|
int position = (int) graphics.getField("position");
|
art.library.model.devices.vms.banner.BannerStatus status = (art.library.model.devices.vms.banner.BannerStatus) device.getDeviceStatus();
|
String text = status.rotulosElectronicos.text;
|
int fontlength = 8;
|
if (text.length() > fontlength) {
|
position = position + 1;
|
graphics.setField("position", position);
|
if (position >= text.length() + 3) {
|
graphics.setField("position", 0);
|
}
|
return;
|
}
|
} catch (Exception e) {
|
}
|
graphics.setField("position", 0);
|
}
|
|
public void status() {
|
try {
|
setAttribute("Font-16-Center", "display", "none");
|
setAttribute("Font-16-Left", "display", "none");
|
setAttribute("Font-16-Right", "display", "none");
|
setAttribute("Reboot", "display", "none");
|
setAttribute("Auto", "display", "none");
|
setAttribute("Background", "fill", "#FF00FF");
|
Device device = getDevice();
|
art.library.model.devices.vms.banner.BannerStatus status = (art.library.model.devices.vms.banner.BannerStatus) device.getDeviceStatus();
|
String foreground = "#800080";
|
String background = "#FF00FF";
|
try {
|
switch (status.status) {
|
case DeviceStatus.STATUS_ONLINE:
|
background = "#00FF00";
|
break;
|
case DeviceStatus.STATUS_WARNING:
|
background = "#FFFF00";
|
break;
|
case DeviceStatus.STATUS_ALARM:
|
background = "#FF0000";
|
break;
|
case DeviceStatus.STATUS_INVALID:
|
background = "#B97A57";
|
break;
|
case DeviceStatus.STATUS_DISABLE:
|
background = "#808080";
|
break;
|
case DeviceStatus.STATUS_SIMULATION:
|
background = "#0000FF";
|
break;
|
case DeviceStatus.STATUS_OFFLINE:
|
background = "#FF00FF";
|
break;
|
case DeviceStatus.STATUS_UNKNOWN:
|
background = "#FF00FF";
|
break;
|
}
|
setAttribute("Background", "fill", background);
|
setAttribute("Background", "stroke", background);
|
setAttribute("Background2", "fill", background);
|
setAttribute("Background2", "stroke", background);
|
setAttribute("Separator", "fill", background);
|
|
if (status.rotulosElectronicos.state != art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.STATE_UNKNOWN)
|
{
|
setAttribute("DoubleFieldBanner", "display", "inline");
|
|
switch (status.rotulosElectronicos.state)
|
{
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.STATE_OPEN:
|
setAttribute("lblObert", "display", "inline");
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.STATE_CLOSE:
|
setAttribute("lblTancat", "display", "inline");
|
break;
|
|
}
|
}
|
|
if (status.rotulosElectronicos != null)
|
{
|
switch (status.rotulosElectronicos.foreground)
|
{
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_BLUE:
|
foreground = "#0000FF";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_CYAN:
|
foreground = "#00FFFF";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_GREEN:
|
foreground = "#00FF00";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_PURPLE:
|
foreground = "#FF00FF0";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_RED:
|
foreground = "#FF0000";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_WHITE:
|
foreground = "#FFFFFF";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_YELLOW:
|
foreground = "#FFFF00";
|
break;
|
default:
|
foreground = "#FFFFFF";
|
break;
|
}
|
if (status.status == DeviceStatus.STATUS_OFFLINE)
|
{
|
foreground = background;
|
}
|
}
|
}
|
catch (Exception e)
|
{
|
}
|
try
|
{
|
art.library.model.devices.DeviceGraphics graphics = device.getDeviceGraphics();
|
int position = (int) graphics.getField("position");
|
if (status.rotulosElectronicos != null) {
|
if (status.rotulosElectronicos.text == null) {
|
status.rotulosElectronicos.text = " ";
|
}
|
String fontsize = "Font-16-Center";
|
int fontlength = 8;
|
String text = status.rotulosElectronicos.text;
|
if (text.length() > fontlength) {
|
text = text + " " + text;
|
text = text.substring(position, position + fontlength);
|
setText(fontsize, text);
|
} else {
|
switch (status.rotulosElectronicos.horizontalAlignment) {
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.ALIGNMENT_HORIZONTAL_LEFT:
|
fontsize = fontsize = "Font-" + fontsize.split("-")[1] + "-Left";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.ALIGNMENT_HORIZONTAL_RIGHT:
|
fontsize = "Font-" + fontsize.split("-")[1] + "-Right";
|
break;
|
default:
|
fontsize = "Font-" + fontsize.split("-")[1] + "-Center";
|
break;
|
}
|
setText(fontsize, text);
|
}
|
setAttribute(fontsize, "fill", foreground);
|
setAttribute(fontsize, "display", "inline");
|
}
|
}
|
catch (Exception e)
|
{
|
}
|
}
|
catch (Exception e)
|
{
|
}
|
}
|
|
public void commands()
|
{
|
try
|
{
|
setAttribute("Font-16-Center", "display", "none");
|
setAttribute("Font-16-Left", "display", "none");
|
setAttribute("Font-16-Right", "display", "none");
|
setAttribute("Reboot", "display", "none");
|
setAttribute("Auto", "display", "none");
|
setAttribute("DoubleFieldBanner", "display", "none");
|
setAttribute("lblTancat", "display", "none");
|
setAttribute("lblObert", "display", "none");
|
setAttribute("Background", "fill", "#0000e0");
|
setAttribute("Background", "stroke", "#0000e0");
|
art.library.model.devices.vms.banner.BannerCommands deviceCommands = (art.library.model.devices.vms.banner.BannerCommands) getDeviceCommands();
|
String foreground = "#000000";
|
try
|
{
|
setAttribute("Background", "fill", "#00FF00");
|
setAttribute("Background", "stroke", "#00FF00");
|
setAttribute("Background2", "fill", "#00FF00");
|
setAttribute("Background2", "stroke", "#00FF00");
|
setAttribute("Separator", "fill", "#00FF00");
|
switch (deviceCommands.operationMode) {
|
case art.library.model.devices.vms.banner.BannerCommands.OPERATION_AUTOMATIC:
|
setAttribute("Auto", "display", "inline");
|
return;
|
}
|
switch (deviceCommands.reset) {
|
case art.library.model.devices.vms.banner.BannerCommands.CONDITION_YES:
|
setAttribute("Reboot", "display", "inline");
|
return;
|
}
|
if (deviceCommands.state != art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.STATE_UNKNOWN)
|
{
|
setAttribute("DoubleFieldBanner", "display", "inline");
|
|
switch (deviceCommands.state)
|
{
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.STATE_OPEN:
|
setAttribute("lblObert", "display", "inline");
|
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.STATE_CLOSE:
|
setAttribute("lblTancat", "display", "inline");
|
break;
|
}
|
}
|
if (deviceCommands.rotulosElectronicos != null) {
|
switch (deviceCommands.rotulosElectronicos.foreground) {
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_BLUE:
|
foreground = "#0000FF";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_CYAN:
|
foreground = "#00FFFF";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_GREEN:
|
foreground = "#00FF00";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_PURPLE:
|
foreground = "#FF00FF0";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_RED:
|
foreground = "#FF0000";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_WHITE:
|
foreground = "#FFFFFF";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.COLOR_YELLOW:
|
foreground = "#FFFF00";
|
break;
|
default:
|
foreground = "#FFFFFF";
|
break;
|
}
|
}
|
} catch (Exception e) {
|
}
|
try {
|
if (deviceCommands.rotulosElectronicos != null && deviceCommands.operationMode == art.library.model.devices.vms.banner.BannerCommands.OPERATION_MANUAL) {
|
String fontsize = "Font-16-Center";
|
int fontlength = 8;
|
String text = deviceCommands.rotulosElectronicos.text;
|
if (text.length() > fontlength) {
|
setText(fontsize, text.substring(0, fontlength));
|
} else {
|
switch (deviceCommands.rotulosElectronicos.horizontalAlignment) {
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.ALIGNMENT_HORIZONTAL_LEFT:
|
fontsize = fontsize = "Font-" + fontsize.split("-")[1] + "-Left";
|
break;
|
case art.library.model.devices.vms.banner.status.BannerRotulosElectronicosStatus.ALIGNMENT_HORIZONTAL_RIGHT:
|
fontsize = "Font-" + fontsize.split("-")[1] + "-Right";
|
break;
|
default:
|
fontsize = "Font-" + fontsize.split("-")[1] + "-Center";
|
break;
|
}
|
setText(fontsize, text);
|
}
|
setAttribute(fontsize, "fill", foreground);
|
setAttribute(fontsize, "display", "inline");
|
}
|
} catch (Exception e) {
|
}
|
} catch (Exception e) {
|
}
|
}
|
//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);
|
}
|