27 from controls import ProjectPropertiesPanel, VariablePanel |
27 from controls import ProjectPropertiesPanel, VariablePanel |
28 from EditorPanel import EditorPanel |
28 from EditorPanel import EditorPanel |
29 from ConfTreeNodeEditor import ConfTreeNodeEditor |
29 from ConfTreeNodeEditor import ConfTreeNodeEditor |
30 |
30 |
31 class ProjectNodeEditor(ConfTreeNodeEditor): |
31 class ProjectNodeEditor(ConfTreeNodeEditor): |
32 |
32 |
33 SHOW_BASE_PARAMS = False |
33 SHOW_BASE_PARAMS = False |
34 ENABLE_REQUIRED = True |
34 ENABLE_REQUIRED = True |
35 CONFNODEEDITOR_TABS = [ |
35 CONFNODEEDITOR_TABS = [ |
36 (_("Config variables"), "_create_VariablePanel"), |
36 (_("Config variables"), "_create_VariablePanel"), |
37 (_("Project properties"), "_create_ProjectPropertiesPanel")] |
37 (_("Project properties"), "_create_ProjectPropertiesPanel")] |
38 |
38 |
39 def _create_VariablePanel(self, prnt): |
39 def _create_VariablePanel(self, prnt): |
40 self.VariableEditorPanel = VariablePanel(prnt, self, self.Controler, "config", self.Debug) |
40 self.VariableEditorPanel = VariablePanel(prnt, self, self.Controler, "config", self.Debug) |
41 self.VariableEditorPanel.SetTagName(self.TagName) |
41 self.VariableEditorPanel.SetTagName(self.TagName) |
42 |
42 |
43 return self.VariableEditorPanel |
43 return self.VariableEditorPanel |
44 |
44 |
45 def _create_ProjectPropertiesPanel(self, prnt): |
45 def _create_ProjectPropertiesPanel(self, prnt): |
46 self.ProjectProperties = ProjectPropertiesPanel(prnt, self.Controler, self.ParentWindow, self.ENABLE_REQUIRED) |
46 self.ProjectProperties = ProjectPropertiesPanel(prnt, self.Controler, self.ParentWindow, self.ENABLE_REQUIRED) |
47 |
47 |
48 return self.ProjectProperties |
48 return self.ProjectProperties |
49 |
49 |
50 def __init__(self, parent, controler, window): |
50 def __init__(self, parent, controler, window): |
51 configuration = controler.GetProjectMainConfigurationName() |
51 configuration = controler.GetProjectMainConfigurationName() |
52 if configuration is not None: |
52 if configuration is not None: |
53 tagname = controler.ComputeConfigurationName(configuration) |
53 tagname = controler.ComputeConfigurationName(configuration) |
54 else: |
54 else: |
55 tagname = "" |
55 tagname = "" |
56 |
56 |
57 ConfTreeNodeEditor.__init__(self, parent, controler, window, tagname) |
57 ConfTreeNodeEditor.__init__(self, parent, controler, window, tagname) |
58 |
58 |
59 buttons_sizer = self.GenerateMethodButtonSizer() |
59 buttons_sizer = self.GenerateMethodButtonSizer() |
60 self.MainSizer.InsertSizer(0, buttons_sizer, 0, border=5, flag=wx.ALL) |
60 self.MainSizer.InsertSizer(0, buttons_sizer, 0, border=5, flag=wx.ALL) |
61 self.MainSizer.Layout() |
61 self.MainSizer.Layout() |
62 |
62 |
63 self.VariableEditor = self.VariableEditorPanel |
63 self.VariableEditor = self.VariableEditorPanel |
64 |
64 |
65 def GetTagName(self): |
65 def GetTagName(self): |
66 return self.Controler.CTNName() |
66 return self.Controler.CTNName() |
67 |
67 |
68 def SetTagName(self, tagname): |
68 def SetTagName(self, tagname): |
69 self.TagName = tagname |
69 self.TagName = tagname |
70 if self.VariableEditor is not None: |
70 if self.VariableEditor is not None: |
71 self.VariableEditor.SetTagName(tagname) |
71 self.VariableEditor.SetTagName(tagname) |
72 |
72 |
73 def GetTitle(self): |
73 def GetTitle(self): |
74 fullname = _(self.Controler.CTNName()) |
74 fullname = _(self.Controler.CTNName()) |
75 if self.Controler.CTNTestModified(): |
75 if self.Controler.CTNTestModified(): |
76 return "~%s~" % fullname |
76 return "~%s~" % fullname |
77 return fullname |
77 return fullname |
78 |
78 |
79 def RefreshView(self, variablepanel=True): |
79 def RefreshView(self, variablepanel=True): |
80 ConfTreeNodeEditor.RefreshView(self) |
80 ConfTreeNodeEditor.RefreshView(self) |
81 self.VariableEditorPanel.RefreshView() |
81 self.VariableEditorPanel.RefreshView() |
82 self.ProjectProperties.RefreshView() |
82 self.ProjectProperties.RefreshView() |
83 |
83 |
84 def GetBufferState(self): |
84 def GetBufferState(self): |
85 return self.Controler.GetBufferState() |
85 return self.Controler.GetBufferState() |
86 |
86 |
87 def Undo(self): |
87 def Undo(self): |
88 self.Controler.LoadPrevious() |
88 self.Controler.LoadPrevious() |
89 self.ParentWindow.CloseTabsWithoutModel() |
89 self.ParentWindow.CloseTabsWithoutModel() |
90 |
90 |
91 def Redo(self): |
91 def Redo(self): |
92 self.Controler.LoadNext() |
92 self.Controler.LoadNext() |
93 self.ParentWindow.CloseTabsWithoutModel() |
93 self.ParentWindow.CloseTabsWithoutModel() |
94 |
|