|
import com.kitfox.svg.SVGDiagram;
|
|
public class DeviceGraphicsRuntime_Inforpark_VmsBanner_Actions extends DeviceGraphicsRuntime {
|
|
public DeviceGraphicsRuntime_Inforpark_VmsBanner_Actions(art.library.model.devices.Device device, SVGDiagram diagram) {
|
super(device, diagram);
|
}
|
|
private int position = 0;
|
|
public void timer()
|
{
|
try
|
{
|
art.library.model.devices.vms.banner.BannerCommands deviceCommands = (art.library.model.devices.vms.banner.BannerCommands) getDeviceCommands();
|
String text = deviceCommands.rotulosElectronicos.text;
|
int fontlength = 10;
|
if (deviceCommands.rotulosElectronicos.fontSize == 2)
|
{
|
fontlength = 8;
|
}
|
if (text.length() > fontlength)
|
{
|
position = position + 1;
|
if (position >= text.length())
|
{
|
position = 0;
|
}
|
commands();
|
return;
|
}
|
}
|
catch (Exception e)
|
{
|
}
|
position = 0;
|
}
|
|
public void commands()
|
{
|
try {
|
art.library.model.devices.vms.banner.BannerCommands deviceCommands = (art.library.model.devices.vms.banner.BannerCommands) getDeviceCommands();
|
String foreground = "#000000";
|
try {
|
setAttribute("Font-12-Center", "display", "none");
|
setAttribute("Font-12-Left", "display", "none");
|
setAttribute("Font-12-Right", "display", "none");
|
setAttribute("Font-16-Center", "display", "none");
|
setAttribute("Font-16-Left", "display", "none");
|
setAttribute("Font-16-Right", "display", "none");
|
setAttribute("Auto", "display", "none");
|
setAttribute("Reboot", "display", "none");
|
setAttribute("lblObert", "display", "none");
|
setAttribute("lblTancat", "display", "none");
|
|
switch (deviceCommands.operationMode)
|
{
|
case art.library.model.devices.vms.banner.BannerCommands.OPERATION_AUTOMATIC:
|
setAttribute("Auto", "display", "inline");
|
position = 0;
|
break;
|
case art.library.model.devices.vms.banner.BannerCommands.OPERATION_MANUAL:
|
setAttribute("Manual", "display", "inline");
|
break;
|
}
|
switch (deviceCommands.reset)
|
{
|
case art.library.model.devices.vms.banner.BannerCommands.CONDITION_YES:
|
setAttribute("Reboot", "display", "inline");
|
position = 0;
|
break;
|
}
|
|
switch(deviceCommands.state)
|
{
|
|
case art.library.model.devices.vms.banner.BannerCommands.STATE_OPEN:
|
setAttribute("lblObert", "display", "inline");
|
break;
|
|
case art.library.model.devices.vms.banner.BannerCommands.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-12-Center";
|
int fontlength = 10;
|
if (deviceCommands.rotulosElectronicos.fontSize == 2) {
|
fontsize = "Font-16-Center";
|
fontlength = 8;
|
}
|
String text = deviceCommands.rotulosElectronicos.text;
|
if (text.length() > fontlength) {
|
if (position > 0) {
|
text = text + " " + deviceCommands.rotulosElectronicos.text;
|
}
|
text = text.substring(position, Math.min(position + fontlength, text.length()));
|
setText(fontsize, text);
|
} 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);
|
//
|
}
|