dialogs/BlockPreviewDialog.py
changeset 1246 101625efb1c1
parent 1245 d34ba528346b
child 1249 b956c924cbbd
equal deleted inserted replaced
1245:d34ba528346b 1246:101625efb1c1
    79         self.MinElementSize = None     # Graphic element minimal size
    79         self.MinElementSize = None     # Graphic element minimal size
    80         
    80         
    81         # Variable containing the graphic element name when dialog is opened
    81         # Variable containing the graphic element name when dialog is opened
    82         self.DefaultElementName = None
    82         self.DefaultElementName = None
    83         
    83         
       
    84         # List of variables defined in POU {var_name: (var_class, var_type),...}
       
    85         self.VariableList = {}
       
    86         
    84     def __del__(self):
    87     def __del__(self):
    85         """
    88         """
    86         Destructor
    89         Destructor
    87         """
    90         """
    88         # Remove reference to project controller
    91         # Remove reference to project controller
    99         """
   102         """
   100         Set font of Preview panel
   103         Set font of Preview panel
   101         @param font: wx.Font object containing font style
   104         @param font: wx.Font object containing font style
   102         """
   105         """
   103         self.Preview.SetFont(font)
   106         self.Preview.SetFont(font)
       
   107     
       
   108     def RefreshVariableList(self):
       
   109         """
       
   110         Extract list of variables defined in POU
       
   111         """
       
   112         # Get list of variables defined in POU
       
   113         self.VariableList = {
       
   114             var["Name"]: (var["Class"], var["Type"])
       
   115             for var in self.Controller.GetEditedElementInterfaceVars(
       
   116                                                         self.TagName)
       
   117             if var["Edit"]}
       
   118         
       
   119         # Add POU name to variable list if POU is a function 
       
   120         returntype = self.Controller.GetEditedElementInterfaceReturnType(
       
   121                                                             self.TagName)
       
   122         if returntype is not None:
       
   123             self.VariableList[
       
   124                 self.Controller.GetEditedElementName(self.TagName)] = \
       
   125                  ("Output", returntype)
       
   126         
       
   127         # Add POU name if POU is a transition
       
   128         words = self.TagName.split("::")
       
   129         if words[0] == "T":
       
   130             self.VariableList[words[2]] = ("Output", "BOOL")
   104     
   131     
   105     def TestElementName(self, element_name):
   132     def TestElementName(self, element_name):
   106         """
   133         """
   107         Test displayed graphic element name
   134         Test displayed graphic element name
   108         @param element_name: Graphic element name
   135         @param element_name: Graphic element name