From 9051a3afee78ac21d0e354a9c0842e472a861861 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Tue, 18 Jun 2013 13:52:23 +0000 Subject: [PATCH] devStateIcon {} mode changes.... git-svn-id: https://svn.fhem.de/fhem/trunk@3305 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/01_FHEMWEB.pm | 55 +++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/fhem/FHEM/01_FHEMWEB.pm b/fhem/FHEM/01_FHEMWEB.pm index e4041f28f..f8f920f17 100755 --- a/fhem/FHEM/01_FHEMWEB.pm +++ b/fhem/FHEM/01_FHEMWEB.pm @@ -2232,30 +2232,28 @@ FW_dev2image($) my ($icon, $rlink); my $devStateIcon = AttrVal($name, "devStateIcon", undef); - if(defined($devStateIcon)) { - if($devStateIcon =~ m/^{.*}$/) { - my ($html, $link) = eval $devStateIcon; - Log 1, "devStateIcon $name: $@" if($@); - return ($link, undef, 1) if(defined($html) && $html eq ""); - return ($html, $link, 1) if(defined($html)); + if(defined($devStateIcon) && $devStateIcon =~ m/^{.*}$/) { + my ($html, $link) = eval $devStateIcon; + Log 1, "devStateIcon $name: $@" if($@); + return ($html, $link, 1) if(defined($html) && $html =~ m/^<.*>$/); + $devStateIcon = $html; + } - } else { - my @list = split(" ", $devStateIcon); - foreach my $l (@list) { - my ($re, $iconName, $link) = split(":", $l, 3); - if(defined($re) && $state =~ m/^$re$/) { - if($iconName eq "") { - $rlink = $link; - last; - } - if(defined(FW_iconName($iconName))) { - return ($iconName, $link, 0); - } else { - return ($state, $link, 1); - } + if(defined($devStateIcon)) { + my @list = split(" ", $devStateIcon); + foreach my $l (@list) { + my ($re, $iconName, $link) = split(":", $l, 3); + if(defined($re) && $state =~ m/^$re$/) { + if($iconName eq "") { + $rlink = $link; + last; + } + if(defined(FW_iconName($iconName))) { + return ($iconName, $link, 0); + } else { + return ($state, $link, 1); } } - } } @@ -3013,19 +3011,22 @@ FW_dropdownFn() attr lamp devStateIcon on::A0 off::AI
attr lamp devStateIcon .*:noIcon
+ Note: if the image is referencing an SVG icon, then you can use the + @colorname suffix to color the image. E.g.:
+ + Second form:
- Note: if the image is referencing an SVG icon, then you can use the @colorname - suffix to color the image. E.g.:
-