svghmi/widget_textlist.ysl2
author Edouard Tisserant <edouard.tisserant@gmail.com>
Thu, 28 Sep 2023 18:28:07 +0200
changeset 3847 832c257d5618
parent 3556 5d73bed497de
permissions -rw-r--r--
IDE: connect local runtime with '127.0.0.1' instead of 'localhost'
Workaround localhost possibly resolving as ::1. leading to problems.
// widget_textlist.ysl2

widget_desc("TextList") {
    longdesc
    ||
    TextList widget is a svg:group, list items are labeled elements
    in that group.

    To use a TextList, clone (svg:use) one of the items inside the widget 
    that expects a TextList.

    In this list, (translated) text content is what matters. Nevertheless
    text style of the cloned item will be applied in client widget.
    ||

    shortdesc > A named list of ordered texts 

    arg name="listname"
}

widget_defs("TextList") {
    |     texts: [
    foreach "func:refered_elements($hmi_element/*[@inkscape:label])[self::svg:text]" {
    |         id("«@id»"),
    }
    // could find a proper way in xpath to reverse()
    |     ].reverse(),
}

widget_class("TextList");