# HG changeset patch # User Edouard Tisserant # Date 1625061119 -7200 # Node ID 5f20f391ae31fd879fa874251ba789819f89a767 # Parent aff5cedb35ba8e40ccab0fb0f2c3f7f7a9947045 SVGHMI: Prepare accepting multiple clients on multiple HMI: Use POULibrary new capability to add variables to PLC Configuration. Now heartbeat and HMI tree root are added by the library part of SVGHMI, and not by each instance. diff -r aff5cedb35ba -r 5f20f391ae31 svghmi/svghmi.py --- a/svghmi/svghmi.py Wed Jun 30 15:44:32 2021 +0200 +++ b/svghmi/svghmi.py Wed Jun 30 15:51:59 2021 +0200 @@ -238,6 +238,11 @@ # note the double zero after "runtime_", # to ensure placement before other CTN generated code in execution order + def GlobalInstances(self): + """ Adds HMI tree root and hearbeat to PLC Configuration's globals """ + return [(name, iec_type, "") for name, iec_type in SPECIAL_NODES] + + def Register_SVGHMI_UI_for_HMI_tree_updates(ref): global on_hmitree_update @@ -699,11 +704,10 @@ self.GetCTRoot().logger.write_error( _("Font file does not exist: %s\n") % fontfile) - def CTNGlobalInstances(self): - # view_name = self.BaseParams.getName() - # return [ (view_name + "_" + name, iec_type, "") for name, iec_type in SPECIAL_NODES] - # TODO : move to library level for multiple hmi - return [(name, iec_type, "") for name, iec_type in SPECIAL_NODES] + ## In case one day we support more than one heartbeat + # def CTNGlobalInstances(self): + # view_name = self.BaseParams.getName() + # return [(view_name + "_HEARTBEAT", "HMI_INT", "")] def GetIconName(self): return "SVGHMI"