--- a/runtime/PLCObject.py Tue Mar 16 14:19:22 2021 +0100
+++ b/runtime/PLCObject.py Wed Mar 17 11:07:29 2021 +0100
@@ -459,6 +459,7 @@
self.PythonThreadAcknowledge(cmd)
self.PythonRuntimeCall("start")
self.LogMessage("Python extensions started")
+ self.PostStartPLC()
self.PythonThreadLoop()
self.PythonRuntimeCall("stop", reverse_order=True)
elif cmd == "Finish":
@@ -496,6 +497,16 @@
"""
pass
+ def PostStartPLC(self):
+ """
+ Here goes actions to be taken after PLC is started,
+ with all libraries and python object already created,
+ and python extensions "Start" methods being called.
+ This is called before python thread processing py_eval blocks starts.
+ For example : attach additional ressource to web services
+ """
+ pass
+
@RunInMain
def StartPLC(self):
--- a/svghmi/gen_index_xhtml.xslt Tue Mar 16 14:19:22 2021 +0100
+++ b/svghmi/gen_index_xhtml.xslt Wed Mar 17 11:07:29 2021 +0100
@@ -5562,21 +5562,7 @@
<xsl:text> styles: {
</xsl:text>
<xsl:for-each select="$hmi_element/*[@inkscape:label]">
- <xsl:variable name="text" select="func:refered_elements(.)[self::svg:text][1]"/>
- <xsl:variable name="tspan" select="$text/svg:tspan[1]"/>
- <xsl:variable name="style">
- <xsl:choose>
- <xsl:when test="$text/@style and $tspan/@style">
- <xsl:value-of select="$text/@style"/>
- <xsl:text>;</xsl:text>
- <xsl:value-of select="$tspan/@style"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$text/@style"/>
- <xsl:value-of select="$tspan/@style"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
+ <xsl:variable name="style" select="func:refered_elements(.)[self::svg:text]/@style"/>
<xsl:text> </xsl:text>
<xsl:value-of select="@inkscape:label"/>
<xsl:text>: "</xsl:text>
--- a/svghmi/widget_list.ysl2 Tue Mar 16 14:19:22 2021 +0100
+++ b/svghmi/widget_list.ysl2 Wed Mar 17 11:07:29 2021 +0100
@@ -13,13 +13,7 @@
param "hmi_element";
| styles: {
foreach "$hmi_element/*[@inkscape:label]" {
- const "text", "func:refered_elements(.)[self::svg:text][1]";
- const "tspan", "$text/svg:tspan[1]";
- const "style" choose {
- when "$text/@style and $tspan/@style" > «$text/@style»;«$tspan/@style»
- otherwise > «$text/@style»«$tspan/@style»
-
- }
+ const "style", "func:refered_elements(.)[self::svg:text]/@style";
| «@inkscape:label»: "«$style»",
}
| },