controls/VariablePanel.py
changeset 630 9d7e38e271cb
parent 627 99ab0b74865f
child 666 d4bb66691248
--- a/controls/VariablePanel.py	Tue Jan 17 20:06:07 2012 +0100
+++ b/controls/VariablePanel.py	Tue Jan 24 21:42:21 2012 +0100
@@ -729,8 +729,6 @@
 
             # build a submenu containing user-defined types
             datatype_menu = wx.Menu(title='')
-            
-            # TODO : remove complextypes argument when matiec can manage complex types in pou interface
             datatypes = self.Controler.GetDataTypes(basetypes = False)
             for datatype in datatypes:
                 new_id = wx.NewId()
@@ -738,6 +736,18 @@
                 self.Bind(wx.EVT_MENU, self.GetVariableTypeFunction(datatype), id=new_id)
 
             type_menu.AppendMenu(wx.NewId(), _("User Data Types"), datatype_menu)
+            
+            for category in self.Controler.GetPluginDataTypes():
+               
+               if len(category["list"]) > 0:
+                   # build a submenu containing plugin types
+                   plugin_datatype_menu = wx.Menu(title='')
+                   for datatype in category["list"]:
+                       new_id = wx.NewId()
+                       AppendMenu(plugin_datatype_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=datatype)
+                       self.Bind(wx.EVT_MENU, self.GetVariableTypeFunction(datatype), id=new_id)
+                   
+                   type_menu.AppendMenu(wx.NewId(), category["name"], plugin_datatype_menu)
 
             # build a submenu containing function block types
             bodytype = self.Controler.GetEditedElementBodyType(self.TagName)