|
import art.library.model.devices.Device;
|
import art.library.model.devices.DeviceStatus;
|
import art.library.model.devices.meteo.status.MeteoStatusSensor;
|
import com.kitfox.svg.SVGDiagram;
|
|
public class DeviceGraphicsRuntime_Meteo_18 extends DeviceGraphicsRuntime {
|
|
public DeviceGraphicsRuntime_Meteo_18(art.library.model.devices.Device device, SVGDiagram diagram)
|
{
|
super(device, diagram);
|
}
|
|
public void timer()
|
{
|
}
|
|
|
public void status()
|
{
|
try
|
{
|
art.library.model.devices.Device device = getDevice();
|
String color1 = "#000000";
|
String color2 = "#000000";
|
art.library.model.devices.meteo.MeteoStatus status = (art.library.model.devices.meteo.MeteoStatus) device.getDeviceStatus();
|
art.library.model.devices.meteo.MeteoAlarms alarms = (art.library.model.devices.meteo.MeteoAlarms) device.getDeviceAlarms();
|
|
switch (device.getDeviceStatus().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:
|
if (alarms.hasAlarmNoWeather() == true)
|
{
|
color1 = "#FF0000";
|
color2 = "#7C0000";
|
}
|
else
|
{
|
color1 = "#00FF00";
|
color2 = "#007C00";
|
}
|
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;
|
}
|
setAttribute("Present weather clear", "display", "none");
|
setAttribute("Present weather wind", "display", "none");
|
setAttribute("Present weather fog", "display", "none");
|
setAttribute("Present weather rain", "display", "none");
|
setAttribute("Present weather snow", "display", "none");
|
setAttribute("Present weather snow and rain", "display", "none");
|
setAttribute("Present weather unknown", "display", "none");
|
if (alarms.hasAlarmWeather() == true)
|
{
|
setAttribute("Aura", "display", "inline");
|
setAttribute("Aura", "fill", "#FF0000");
|
}
|
else
|
{
|
setAttribute("Aura", "display", "none");
|
}
|
setAttribute("Background", "fill", color1);
|
setAttribute("Border", "stroke", color2);
|
setText("Information text", String.format("%1$04d", device.getDeviceInformation().number));
|
|
switch (status.getPresentWeather())
|
{
|
case art.library.model.devices.meteo.status.MeteoStatusSensor.VALUE_PRESENT_WEATHER_CLEAR:
|
setAttribute("Present weather clear", "display", "inline");
|
setAttribute("Present weather clear", "fill", color2);
|
break;
|
case art.library.model.devices.meteo.status.MeteoStatusSensor.VALUE_PRESENT_WEATHER_WIND:
|
setAttribute("Present weather wind", "display", "inline");
|
setAttribute("Present weather wind", "fill", color2);
|
break;
|
case art.library.model.devices.meteo.status.MeteoStatusSensor.VALUE_PRESENT_WEATHER_FOG:
|
setAttribute("Present weather fog", "display", "inline");
|
setAttribute("Present weather fog", "fill", color2);
|
break;
|
case art.library.model.devices.meteo.status.MeteoStatusSensor.VALUE_PRESENT_WEATHER_RAIN:
|
setAttribute("Present weather rain", "display", "inline");
|
setAttribute("Present weather rain", "fill", color2, 1);
|
break;
|
case art.library.model.devices.meteo.status.MeteoStatusSensor.VALUE_PRESENT_WEATHER_SNOW_RAIN:
|
setAttribute("Present weather snow and rain", "display", "inline");
|
setAttribute("Present weather snow and rain", "fill", color2);
|
break;
|
case art.library.model.devices.meteo.status.MeteoStatusSensor.VALUE_PRESENT_WEATHER_SNOW:
|
setAttribute("Present weather snow", "display", "inline");
|
setAttribute("Present weather snow", "fill", color2);
|
break;
|
}
|
|
|
setText("Information temperature", "");
|
setText("Information humidity", "");
|
setText("Information wind", "");
|
setText("Information visibility", "");
|
setText("Information rain", "");
|
|
setText("Information temperature", status.getSensorAverageValueText(art.library.model.devices.meteo.status.MeteoStatusSensor.TYPE_AIR_TEMPERATURE));
|
setText("Information humidity", status.getSensorAverageValueText(art.library.model.devices.meteo.status.MeteoStatusSensor.TYPE_AIR_HUMIDITY));
|
setText("Information wind", status.getSensorAverageValueText(art.library.model.devices.meteo.status.MeteoStatusSensor.TYPE_WIND_SPEED));
|
setText("Information visibility", status.getSensorAverageValueText(art.library.model.devices.meteo.status.MeteoStatusSensor.TYPE_VISIBILITY));
|
setText("Information rain", status.getSensorAverageValueText(art.library.model.devices.meteo.status.MeteoStatusSensor.TYPE_RAIN_INTENSITY));
|
|
}
|
catch (Exception exception)
|
{
|
exception.printStackTrace();
|
}
|
}
|
|
|
|
}
|