From 25f5edb47c5b5a12af4f254abb3f1bdc751bd1dc Mon Sep 17 00:00:00 2001 From: betateilchen Date: Wed, 11 Feb 2015 01:04:56 +0000 Subject: [PATCH] 55_InfoPanel.pm: updated git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@7935 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/55_InfoPanel.pm | 59 ++++++++++++++++++++++++--------------- 1 file changed, 37 insertions(+), 22 deletions(-) diff --git a/fhem/FHEM/55_InfoPanel.pm b/fhem/FHEM/55_InfoPanel.pm index a75201edb..f8e83e408 100644 --- a/fhem/FHEM/55_InfoPanel.pm +++ b/fhem/FHEM/55_InfoPanel.pm @@ -202,8 +202,6 @@ sub btIP_itemButton { $id = ($id eq '-') ? createUniqueId() : $id; my $width = $x2 - $x1; my $height = $y2 - $y1; - $text = AnalyzePerlCommand(undef,$text); - $link = AnalyzePerlCommand(undef,$link); my $oldrgb = $params{rgb}; $params{rgb} = $params{boxcolor}; @@ -295,12 +293,12 @@ sub btIP_itemGroup { my($id,$type,$x,$y) = @_; return "\n" if $type eq 'close'; $id = ($id eq '-') ? createUniqueId() : $id; - return "" if $type eq 'open'; + return "\n" if $type eq 'open'; } sub btIP_itemImg { return unless $useImgTools; - my ($id,$x,$y,$scale,$srctype,$arg,%params)= @_; + my ($id,$x,$y,$scale,$srctype,$arg,$link,%params)= @_; $id = ($id eq '-') ? createUniqueId() : $id; return unless(defined($arg)); return if($arg eq ""); @@ -336,8 +334,14 @@ sub btIP_itemImg { ($width,$height,$mimetype,$data) = _btIP_imgData($data,$scale); } + my $target; + ($link,$target) = btIP_findTarget($link); + $output = "\n"; + $output .= "\n" if($link && length($link)); $output .= "\n"; + $output .= "\n" if($link && length($link)); + return $output; } @@ -546,8 +550,10 @@ sub btIP_itemTime { sub btIP_itemTrash { return unless $useImgTools; - my ($id,$x,$y,$scale,$fgcolor,$bgcolor,%params)= @_; + my ($id,$x,$y,$scale,$fgcolor,$bgcolor,$link,%params)= @_; $id = ($id eq '-') ? createUniqueId() : $id; + my $target; + ($link,$target) = btIP_findTarget($link); my ($counter,$data,$info,$width,$height,$mimetype,$output); @@ -575,10 +581,13 @@ $data = ''. ($r,$g,$b,$a) = btIP_color($bgcolor); $bgcolor = "rgb($r,$g,$b)"; ($width,$height,$mimetype,$data) = _btIP_imgData($data,$scale); - $output = "\n" if($link && length($link)); + $output .= "\n"; - $output .= "\n"; $output .= "\n"; + $output .= "\n" if($link && length($link)); + return $output; } @@ -797,7 +806,7 @@ sub btIP_evalLayout { if($line=~ s/\\$//) { $cont= $line; undef $line; } next unless($line); $cont= ""; - Debug "$name: evaluating >$line<"; +# Debug "$name: evaluating >$line<"; # split line into command and definition my ($cmd, $def)= split("[ \t]+", $line, 2); @@ -816,13 +825,13 @@ sub btIP_evalLayout { given($cmd) { when("area") { - ($id,$x1,$y1,$x2,$y2,$arg)= split("[ \t]+", $def, 6); + ($id,$x1,$y1,$x2,$y2,$link)= split("[ \t]+", $def, 6); ($x1,$y1)= btIP_xy($x1,$y1,%params); ($x2,$y2)= btIP_xy($x2,$y2,%params); - my $arg = AnalyzePerlCommand(undef,$arg); + $link = AnalyzePerlCommand(undef,$link); $params{xx} = $x; $params{yy} = $y; - $svg .= btIP_itemArea($id,$x1,$y1,$x2,$y2,$arg,%params); + $svg .= btIP_itemArea($id,$x1,$y1,$x2,$y2,$link,%params); } when("boxcolor"){ @@ -834,9 +843,11 @@ sub btIP_evalLayout { ($id,$x1,$y1,$x2,$y2,$r1,$r2,$link,$text)= split("[ \t]+", $def, 9); ($x1,$y1)= btIP_xy($x1,$y1,%params); ($x2,$y2)= btIP_xy($x2,$y2,%params); -# my $arg = AnalyzePerlCommand(undef,$arg); $params{xx} = $x; $params{yy} = $y; + $link = AnalyzePerlCommand(undef,$link); + $link = (length($link)) ? $link : "-$params{name}.html"; + $text = AnalyzePerlCommand(undef,$text); $svg .= btIP_itemButton($id,$x1,$y1,$x2,$y2,$r1,$r2,$link,$text,%params); } @@ -851,7 +862,7 @@ sub btIP_evalLayout { ($x1,$y1)= btIP_xy($x1,$y1,%params); $filled //= 0; $stroked //= 0; - $link = AnalyzePerlCommand(undef,$link); + $link = AnalyzePerlCommand(undef,$link); $svg .= btIP_itemCircle($id,$x1,$y1,$r1,$filled,$stroked,$link,%params); } @@ -876,7 +887,7 @@ sub btIP_evalLayout { ($x1,$y1)= btIP_xy($x1,$y1,%params); $filled //= 0; $stroked //= 0; - $link = AnalyzePerlCommand(undef,$link); + $link = AnalyzePerlCommand(undef,$link); $svg .= btIP_itemEllipse($id,$x1,$y1,$r1,$r2,$filled,$stroked,$link,%params); } @@ -895,12 +906,13 @@ sub btIP_evalLayout { } when("img") { - ($id,$x,$y,$scale,$srctype,$arg)= split("[ \t]+", $def,6); + ($id,$x,$y,$scale,$srctype,$arg,$link)= split("[ \t]+", $def,7); ($x,$y)= btIP_xy($x,$y,%params); $params{xx} = $x; $params{yy} = $y; - my $arg= AnalyzePerlCommand(undef, $arg); - $svg .= btIP_itemImg($id,$x,$y,$scale,$srctype,$arg,%params); + $arg = AnalyzePerlCommand(undef, $arg); + $link = AnalyzePerlCommand(undef,$link); + $svg .= btIP_itemImg($id,$x,$y,$scale,$srctype,$arg,$link,%params); } when("line") { @@ -956,7 +968,7 @@ sub btIP_evalLayout { $params{yy} = $y; $filled //= 0; # set 0 as default (not filled) $stroked //= 0; # set 0 as default (not stroked) - $link = AnalyzePerlCommand(undef,$link); + $link = AnalyzePerlCommand(undef,$link); $svg .= btIP_itemRect($id,$x1,$y1,$x2,$y2,$r1,$r2,$filled,$stroked,$link,%params); } @@ -1024,13 +1036,14 @@ sub btIP_evalLayout { } when("trash") { - ($id,$x,$y,$scale,$r1,$r2)= split("[ \t]+", $def,6); + ($id,$x,$y,$scale,$r1,$r2,$link)= split("[ \t]+", $def,7); ($x,$y)= btIP_xy($x,$y,%params); $params{xx} = $x; $params{yy} = $y; $r1 = AnalyzePerlCommand(undef,$r1); $r2 = AnalyzePerlCommand(undef,$r2); - $svg .= btIP_itemTrash($id,$x,$y,$scale,$r1,$r2,%params); + $link = AnalyzePerlCommand(undef,$link); + $svg .= btIP_itemTrash($id,$x,$y,$scale,$r1,$r2,$link,%params); } default { @@ -1408,7 +1421,7 @@ Please read