[erledigt :) ]feature Request: PUP Funktion mit Icon-größe

Begonnen von Sany, 28 Februar 2021, 11:46:43

Vorheriges Thema - Nächstes Thema

Sany

 Hallo Damian,

ich hätte einen "Wunsch" für die PUP-Funktion, respektive DOIF_tablePopUp: Eingabemöglichkeit für die Größe des Icons.
Ich habe mal in Anlehnung an die icon-ring Funktion die Übergabe von Parametern ausprobiert, und das funktioniert.

Bisher:
PUP(<Name des anderen DOIF>,<Iconname@optionale Farbe>)

neu:
PUP("Name des anderen DOIF","Iconname@optionale Farbe,text,class")

text ist analog der FW_makeImage, wird übergeben, hat aber keine Auswirkungen. Kann "" oder undef sein
class ist die im attr WEBxy Css definierte Klasse wie hier https://forum.fhem.de/index.php/topic,118280.msg1127050.html#msg1127050 schon mal beschrieben.

Die Funktion DOIF_tablePopUp ab Zeile 728 in 98_DOIF.pm müsste dann so aussehen:


sub DOIF_tablePopUp {
my ($pn,$d,$icon,$table) = @_;
$table = $table ? $table : "uiTable";

my ($ic,$itext,$iclass)=();

if (defined ($icon)) {
($ic,$itext,$iclass)=split(",",$icon);
$itext="" if (!defined $itext);
$iclass="" if (!defined $iclass);
$ic="" if (!defined($ic));

if ($defs{$d} && AttrVal($d,$table,"")) {
my $ret = "<a href=\"#\" onclick=\"doifTablePopUp('$defs{$d}','$d','$pn','$table')\">".FW_makeImage($ic,$itext,$iclass)."</a>";
} else {
return "no device $d or attribut $table";
}
}


Oder einen beliebigen anderen Weg, einen Größenparameter mitzugeben. Hier https://forum.fhem.de/index.php/topic,118280.msg1127072.html#msg1127072 hattest Du ja schon einen Vorschlag gemacht, um ohne eine Definition der CSS-class auszukommen. Ginge auch, allerdings wäre mit eine zentrale Stelle lieber.

Wär das was?

Viele Grüße

Sany


P.S. jetzt müsste nur noch das Popup-Fenster zentriert auf dem Bildschirm erscheinen, dann wäre es optimal. Das ist aber wohl aus der fhem-Ebene, wurde schon ab und an gefragt, aber leider nie umgesetzt....
fhem als LXC auf Proxmox auf einem minix Z100 , weitere LXC mit ZigBee2MQTT, MariaDB und Grafana. Homematic, FS20, mySensors, MQTT2, Tasmota, Shelly, Z-Wave  ....

Damian

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Sany

fhem als LXC auf Proxmox auf einem minix Z100 , weitere LXC mit ZigBee2MQTT, MariaDB und Grafana. Homematic, FS20, mySensors, MQTT2, Tasmota, Shelly, Z-Wave  ....

Damian

Neue Version eingecheckt: https://svn.fhem.de/trac/browser/trunk/fhem/FHEM?order=date&desc=1

ui_Table Perl-Funktion widget entspricht WID
PUP mit icontext und iconclass

getestet mit:

defmod di_popup DOIF ##
attr di_popup room test9
attr di_popup uiTable {package ui_Table;;}\
"<style>.mysvg {height:20px;;}</style>"\
"Slider"| widget([$SELF:wert],"slider,0,5,100,1")\
PUP("Umwelt","temp_outside,,mysvg")

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF