RessourceEditor.py
changeset 121 40b91ba978db
parent 113 9eeaebd867aa
child 124 635d0817508c
--- a/RessourceEditor.py	Tue Nov 13 17:21:30 2007 +0100
+++ b/RessourceEditor.py	Fri Nov 16 17:43:32 2007 +0100
@@ -25,6 +25,77 @@
 import wx
 import wx.grid
 
+if wx.VERSION >= (2, 8, 0):
+    import wx.aui
+
+    class MDIConfigurationEditor(wx.aui.AuiMDIChildFrame):
+        def __init__(self, parent, tagname, window, controler):
+            wx.aui.AuiMDIChildFrame.__init__(self, parent, -1, title = "")
+            
+            sizer = wx.BoxSizer(wx.HORIZONTAL)
+            
+            self.Viewer = ConfigurationEditor(self, tagname, window, controler)
+            
+            sizer.AddWindow(self.Viewer, 1, border=0, flag=wx.GROW)
+            
+            self.SetSizer(sizer)
+        
+        def GetViewer(self):
+            return self.Viewer
+
+    class MDIResourceEditor(wx.aui.AuiMDIChildFrame):
+        def __init__(self, parent, tagname, window, controler):
+            wx.aui.AuiMDIChildFrame.__init__(self, parent, -1, title = "")
+            
+            sizer = wx.BoxSizer(wx.HORIZONTAL)
+            
+            self.Viewer = ResourceEditor(self, tagname, window, controler)
+            
+            sizer.AddWindow(self.Viewer, 1, border=0, flag=wx.GROW)
+            
+            self.SetSizer(sizer)
+        
+        def GetViewer(self):
+            return self.Viewer
+
+#-------------------------------------------------------------------------------
+#                          Configuration Editor class
+#-------------------------------------------------------------------------------
+
+[ID_CONFIGURATIONEDITOR, 
+] = [wx.NewId() for _init_ctrls in range(1)]
+
+class ConfigurationEditor(wx.Panel):
+    
+    def _init_ctrls(self, prnt):
+        wx.Panel.__init__(self, id=ID_CONFIGURATIONEDITOR, name='', parent=prnt,
+              size=wx.Size(0, 0), style=wx.SUNKEN_BORDER)
+
+    def __init__(self, parent, tagname, window, controler):
+        self._init_ctrls(parent)
+        
+        self.ParentWindow = window
+        self.Controler = controler
+        self.TagName = tagname
+
+    def SetTagName(self, tagname):
+        self.TagName = tagname
+        
+    def GetTagName(self):
+        return self.TagName
+    
+    def IsViewing(self, tagname):
+        return self.TagName == tagname
+
+    def SetMode(self, mode):
+        pass
+
+    def ResetBuffer(self):
+        pass
+
+    def RefreshView(self):
+        pass
+
 #-------------------------------------------------------------------------------
 #                            Resource Editor class
 #-------------------------------------------------------------------------------
@@ -361,11 +432,12 @@
 
         self._init_sizers()
 
-    def __init__(self, parent, window, controler):
+    def __init__(self, parent, tagname, window, controler):
         self._init_ctrls(parent)
         
         self.ParentWindow = window
         self.Controler = controler
+        self.TagName = tagname
         
         self.TasksDefaultValue = {"Name" : "", "Single" : "", "Interval" : "", "Priority" : 0}
         self.TasksTable = ResourceTable(self, [], ["Name", "Single", "Interval", "Priority"])
@@ -383,12 +455,18 @@
         self.InstancesGrid.SetRowLabelSize(0)
         self.InstancesTable.ResetView(self.InstancesGrid)
 
+    def SetTagName(self, tagname):
+        self.TagName = tagname
+        
+    def GetTagName(self):
+        return self.TagName
+    
+    def IsViewing(self, tagname):
+        return self.TagName == tagname
+
     def SetMode(self, mode):
         pass
 
-    def VerifyVariableTypeCompatibility(self):
-        pass
-
     def RefreshTypeList(self):
         self.TypeList = ""
         blocktypes = self.Controler.GetBlockResource()
@@ -402,11 +480,11 @@
 
     def RefreshVariableList(self):
         self.VariableList = ""
-        for variable in self.Controler.GetCurrentResourceEditingVariables():
+        for variable in self.Controler.GetEditedResourceVariables(self.TagName):
             self.VariableList += ",%s"%variable
         
     def RefreshModel(self):
-        self.Controler.SetCurrentResourceEditingInfos(self.TasksTable.GetData(), self.InstancesTable.GetData())
+        self.Controler.SetEditedResourceInfos(self.TagName, self.TasksTable.GetData(), self.InstancesTable.GetData())
         self.RefreshBuffer()
         
     def ResetBuffer(self):
@@ -419,7 +497,7 @@
         self.ParentWindow.RefreshEditMenu()
 
     def RefreshView(self):
-        tasks, instances = self.Controler.GetCurrentResourceEditingInfos()
+        tasks, instances = self.Controler.GetEditedResourceInfos(self.TagName)
         self.TasksTable.SetData(tasks)
         self.InstancesTable.SetData(instances)
         self.RefreshTypeList()