145 SHOW_PARAMS = True |
145 SHOW_PARAMS = True |
146 CONFNODEEDITOR_TABS = [] |
146 CONFNODEEDITOR_TABS = [] |
147 |
147 |
148 def _init_Editor(self, parent): |
148 def _init_Editor(self, parent): |
149 tabs_num = len(self.CONFNODEEDITOR_TABS) |
149 tabs_num = len(self.CONFNODEEDITOR_TABS) |
150 if self.SHOW_PARAMS: |
150 if self.SHOW_PARAMS and len(self.Controler.GetParamsAttributes()) > 0: |
151 tabs_num += 1 |
151 tabs_num += 1 |
152 |
152 |
153 if tabs_num > 1: |
153 if tabs_num > 1 or self.SHOW_BASE_PARAMS: |
154 self.Editor = wx.Panel(parent, |
154 self.Editor = wx.Panel(parent, |
155 style=wx.SUNKEN_BORDER|wx.SP_3D) |
155 style=wx.SUNKEN_BORDER|wx.SP_3D) |
156 |
156 self.Editor.SetBackgroundColour(WINDOW_COLOUR) |
157 main_sizer = wx.BoxSizer(wx.VERTICAL) |
157 |
158 |
158 self.MainSizer = wx.BoxSizer(wx.VERTICAL) |
159 self.ConfNodeNoteBook = wx.Notebook(self.Editor) |
|
160 parent = self.ConfNodeNoteBook |
|
161 main_sizer.AddWindow(self.ConfNodeNoteBook, 1, flag=wx.GROW) |
|
162 |
|
163 self.Editor.SetSizer(main_sizer) |
|
164 else: |
|
165 self.ConfNodeNoteBook = None |
|
166 self.Editor = None |
|
167 |
|
168 for title, create_func_name in self.CONFNODEEDITOR_TABS: |
|
169 editor = getattr(self, create_func_name)(parent) |
|
170 if self.ConfNodeNoteBook is not None: |
|
171 self.ConfNodeNoteBook.AddPage(editor, title) |
|
172 else: |
|
173 self.Editor = editor |
|
174 |
|
175 if self.SHOW_PARAMS: |
|
176 |
|
177 panel_style = wx.TAB_TRAVERSAL|wx.HSCROLL|wx.VSCROLL |
|
178 if self.ConfNodeNoteBook is None: |
|
179 panel_style |= wx.SUNKEN_BORDER |
|
180 self.ParamsEditor = wx.ScrolledWindow(parent, |
|
181 style=panel_style) |
|
182 self.ParamsEditor.SetBackgroundColour(WINDOW_COLOUR) |
|
183 self.ParamsEditor.Bind(wx.EVT_SIZE, self.OnWindowResize) |
|
184 self.ParamsEditor.Bind(wx.EVT_MOUSEWHEEL, self.OnMouseWheel) |
|
185 |
|
186 # Variable allowing disabling of ParamsEditor scroll when Popup shown |
|
187 self.ScrollingEnabled = True |
|
188 |
159 |
189 if self.SHOW_BASE_PARAMS: |
160 if self.SHOW_BASE_PARAMS: |
190 self.ParamsEditorSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5) |
|
191 self.ParamsEditorSizer.AddGrowableCol(0) |
|
192 self.ParamsEditorSizer.AddGrowableRow(1) |
|
193 |
|
194 self.ParamsEditor.SetSizer(self.ParamsEditorSizer) |
|
195 |
|
196 baseparamseditor_sizer = wx.BoxSizer(wx.HORIZONTAL) |
161 baseparamseditor_sizer = wx.BoxSizer(wx.HORIZONTAL) |
197 self.ParamsEditorSizer.AddSizer(baseparamseditor_sizer, border=5, |
162 self.MainSizer.AddSizer(baseparamseditor_sizer, border=5, |
198 flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.TOP) |
163 flag=wx.GROW|wx.ALL) |
199 |
164 |
200 self.FullIECChannel = wx.StaticText(self.ParamsEditor, -1) |
165 self.FullIECChannel = wx.StaticText(self.Editor, -1) |
201 self.FullIECChannel.SetFont( |
166 self.FullIECChannel.SetFont( |
202 wx.Font(faces["size"], wx.DEFAULT, wx.NORMAL, |
167 wx.Font(faces["size"], wx.DEFAULT, wx.NORMAL, |
203 wx.BOLD, faceName = faces["helv"])) |
168 wx.BOLD, faceName = faces["helv"])) |
204 baseparamseditor_sizer.AddWindow(self.FullIECChannel, |
169 baseparamseditor_sizer.AddWindow(self.FullIECChannel, |
205 flag=wx.ALIGN_CENTER_VERTICAL) |
170 flag=wx.ALIGN_CENTER_VERTICAL) |
206 |
171 |
207 updownsizer = wx.BoxSizer(wx.VERTICAL) |
172 updownsizer = wx.BoxSizer(wx.VERTICAL) |
208 baseparamseditor_sizer.AddSizer(updownsizer, border=5, |
173 baseparamseditor_sizer.AddSizer(updownsizer, border=5, |
209 flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL) |
174 flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL) |
210 |
175 |
211 self.IECCUpButton = wx.lib.buttons.GenBitmapTextButton(self.ParamsEditor, |
176 self.IECCUpButton = wx.lib.buttons.GenBitmapTextButton(self.Editor, |
212 bitmap=GetBitmap('IECCDown'), size=wx.Size(16, 16), style=wx.NO_BORDER) |
177 bitmap=GetBitmap('IECCDown'), size=wx.Size(16, 16), style=wx.NO_BORDER) |
213 self.IECCUpButton.Bind(wx.EVT_BUTTON, self.GetItemChannelChangedFunction(1), |
178 self.IECCUpButton.Bind(wx.EVT_BUTTON, self.GetItemChannelChangedFunction(1), |
214 self.IECCUpButton) |
179 self.IECCUpButton) |
215 updownsizer.AddWindow(self.IECCUpButton, flag=wx.ALIGN_LEFT) |
180 updownsizer.AddWindow(self.IECCUpButton, flag=wx.ALIGN_LEFT) |
216 |
181 |
217 self.IECCDownButton = wx.lib.buttons.GenBitmapButton(self.ParamsEditor, |
182 self.IECCDownButton = wx.lib.buttons.GenBitmapButton(self.Editor, |
218 bitmap=GetBitmap('IECCUp'), size=wx.Size(16, 16), style=wx.NO_BORDER) |
183 bitmap=GetBitmap('IECCUp'), size=wx.Size(16, 16), style=wx.NO_BORDER) |
219 self.IECCDownButton.Bind(wx.EVT_BUTTON, self.GetItemChannelChangedFunction(-1), |
184 self.IECCDownButton.Bind(wx.EVT_BUTTON, self.GetItemChannelChangedFunction(-1), |
220 self.IECCDownButton) |
185 self.IECCDownButton) |
221 updownsizer.AddWindow(self.IECCDownButton, flag=wx.ALIGN_LEFT) |
186 updownsizer.AddWindow(self.IECCDownButton, flag=wx.ALIGN_LEFT) |
222 |
187 |
223 self.ConfNodeName = wx.TextCtrl(self.ParamsEditor, |
188 self.ConfNodeName = wx.TextCtrl(self.Editor, |
224 size=wx.Size(150, 25), style=wx.NO_BORDER) |
189 size=wx.Size(150, 25), style=wx.NO_BORDER) |
225 self.ConfNodeName.SetFont( |
190 self.ConfNodeName.SetFont( |
226 wx.Font(faces["size"] * 0.75, wx.DEFAULT, wx.NORMAL, |
191 wx.Font(faces["size"] * 0.75, wx.DEFAULT, wx.NORMAL, |
227 wx.BOLD, faceName = faces["helv"])) |
192 wx.BOLD, faceName = faces["helv"])) |
228 self.ConfNodeName.Bind(wx.EVT_TEXT, |
193 self.ConfNodeName.Bind(wx.EVT_TEXT, |
232 flag=wx.LEFT|wx.RIGHT|wx.ALIGN_CENTER_VERTICAL) |
197 flag=wx.LEFT|wx.RIGHT|wx.ALIGN_CENTER_VERTICAL) |
233 |
198 |
234 buttons_sizer = self.GenerateMethodButtonSizer() |
199 buttons_sizer = self.GenerateMethodButtonSizer() |
235 baseparamseditor_sizer.AddSizer(buttons_sizer, flag=wx.ALIGN_CENTER) |
200 baseparamseditor_sizer.AddSizer(buttons_sizer, flag=wx.ALIGN_CENTER) |
236 |
201 |
|
202 if tabs_num > 1: |
|
203 self.ConfNodeNoteBook = wx.Notebook(self.Editor) |
|
204 parent = self.ConfNodeNoteBook |
|
205 self.MainSizer.AddWindow(self.ConfNodeNoteBook, 1, flag=wx.GROW) |
237 else: |
206 else: |
238 self.ParamsEditorSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=1, vgap=5) |
207 self.ConfNodeNoteBook = None |
239 self.ParamsEditorSizer.AddGrowableCol(0) |
208 |
240 self.ParamsEditorSizer.AddGrowableRow(0) |
209 self.Editor.SetSizer(self.MainSizer) |
|
210 else: |
|
211 self.ConfNodeNoteBook = None |
|
212 self.Editor = None |
|
213 |
|
214 for title, create_func_name in self.CONFNODEEDITOR_TABS: |
|
215 editor = getattr(self, create_func_name)(parent) |
|
216 if self.ConfNodeNoteBook is not None: |
|
217 self.ConfNodeNoteBook.AddPage(editor, title) |
|
218 elif self.SHOW_BASE_PARAMS: |
|
219 self.MainSizer.AddWindow(editor, 1, flag=wx.GROW) |
|
220 else: |
|
221 self.Editor = editor |
|
222 |
|
223 if self.SHOW_PARAMS and len(self.Controler.GetParamsAttributes()) > 0: |
|
224 |
|
225 panel_style = wx.TAB_TRAVERSAL|wx.HSCROLL|wx.VSCROLL |
|
226 editor_parent = parent |
|
227 if self.ConfNodeNoteBook is None: |
|
228 panel_style |= wx.SUNKEN_BORDER |
|
229 self.ParamsEditor = wx.ScrolledWindow(parent, |
|
230 style=panel_style) |
|
231 self.ParamsEditor.SetBackgroundColour(WINDOW_COLOUR) |
|
232 self.ParamsEditor.Bind(wx.EVT_SIZE, self.OnWindowResize) |
|
233 self.ParamsEditor.Bind(wx.EVT_MOUSEWHEEL, self.OnMouseWheel) |
|
234 |
|
235 # Variable allowing disabling of ParamsEditor scroll when Popup shown |
|
236 self.ScrollingEnabled = True |
|
237 |
|
238 self.ParamsEditorSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=1, vgap=5) |
|
239 self.ParamsEditorSizer.AddGrowableCol(0) |
|
240 self.ParamsEditorSizer.AddGrowableRow(0) |
|
241 self.ParamsEditor.SetSizer(self.ParamsEditorSizer) |
241 |
242 |
242 self.ConfNodeParamsSizer = wx.BoxSizer(wx.VERTICAL) |
243 self.ConfNodeParamsSizer = wx.BoxSizer(wx.VERTICAL) |
243 self.ParamsEditorSizer.AddSizer(self.ConfNodeParamsSizer, border=5, |
244 self.ParamsEditorSizer.AddSizer(self.ConfNodeParamsSizer, border=5, |
244 flag=wx.LEFT|wx.RIGHT|wx.BOTTOM) |
245 flag=wx.LEFT|wx.RIGHT|wx.BOTTOM) |
245 |
246 |
246 self.RefreshConfNodeParamsSizer() |
247 self.RefreshConfNodeParamsSizer() |
247 |
248 |
248 if self.ConfNodeNoteBook is not None: |
249 if self.ConfNodeNoteBook is not None: |
249 self.ConfNodeNoteBook.AddPage(self.ParamsEditor, _("Config")) |
250 self.ConfNodeNoteBook.AddPage(self.ParamsEditor, _("Config")) |
|
251 elif self.SHOW_BASE_PARAMS: |
|
252 self.MainSizer.AddWindow(self.ParamsEditor, 1, flag=wx.GROW) |
250 else: |
253 else: |
251 self.Editor = self.ParamsEditor |
254 self.Editor = self.ParamsEditor |
252 else: |
255 else: |
253 self.ParamsEditor = None |
256 self.ParamsEditor = None |
254 |
257 |