301 EditorPanel.__init__(self, parent, tagname, window, controler) |
301 EditorPanel.__init__(self, parent, tagname, window, controler) |
302 |
302 |
303 self.RefreshHighlightsTimer = wx.Timer(self, -1) |
303 self.RefreshHighlightsTimer = wx.Timer(self, -1) |
304 self.Bind(wx.EVT_TIMER, self.OnRefreshHighlightsTimer, self.RefreshHighlightsTimer) |
304 self.Bind(wx.EVT_TIMER, self.OnRefreshHighlightsTimer, self.RefreshHighlightsTimer) |
305 |
305 |
306 self.TasksDefaultValue = {"Name": "", "Triggering": "", "Single": "", "Interval": "", "Priority": 0} |
306 self.TasksDefaultValue = {"Name": "task0", "Triggering": "Cyclic", |
|
307 "Single": "", "Interval": "T#20ms", "Priority": 0} |
307 self.TasksTable = ResourceTable(self, [], GetTasksTableColnames()) |
308 self.TasksTable = ResourceTable(self, [], GetTasksTableColnames()) |
308 self.TasksTable.SetColAlignements([wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_RIGHT, wx.ALIGN_RIGHT]) |
309 self.TasksTable.SetColAlignements([wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_RIGHT, wx.ALIGN_RIGHT]) |
309 self.TasksTable.SetColSizes([200, 100, 100, 150, 100]) |
310 self.TasksTable.SetColSizes([200, 100, 100, 150, 100]) |
310 self.TasksGrid.SetTable(self.TasksTable) |
311 self.TasksGrid.SetTable(self.TasksTable) |
311 self.TasksGrid.SetButtons({"Add": self.AddTaskButton, |
312 self.TasksGrid.SetButtons({"Add": self.AddTaskButton, |
312 "Delete": self.DeleteTaskButton, |
313 "Delete": self.DeleteTaskButton, |
313 "Up": self.UpTaskButton, |
314 "Up": self.UpTaskButton, |
314 "Down": self.DownTaskButton}) |
315 "Down": self.DownTaskButton}) |
315 |
316 |
316 def _AddTask(new_row): |
317 def _AddTask(new_row): |
317 self.TasksTable.InsertRow(new_row, self.TasksDefaultValue.copy()) |
318 if new_row > 0: |
|
319 row_content = self.TasksTable.data[new_row-1].copy() |
|
320 old_name = row_content['Name'] |
|
321 row_content['Name'] =\ |
|
322 self.Controler.GenerateNewName(self.TagName, old_name, old_name+'%d') |
|
323 else: |
|
324 row_content = self.TasksDefaultValue.copy() |
|
325 |
|
326 self.TasksTable.InsertRow(new_row, row_content) |
318 self.RefreshModel() |
327 self.RefreshModel() |
319 self.RefreshView() |
328 self.RefreshView() |
320 return new_row |
329 return new_row |
321 setattr(self.TasksGrid, "_AddRow", _AddTask) |
330 setattr(self.TasksGrid, "_AddRow", _AddTask) |
322 |
331 |
336 |
345 |
337 self.TasksGrid.SetRowLabelSize(0) |
346 self.TasksGrid.SetRowLabelSize(0) |
338 self.TasksTable.ResetView(self.TasksGrid) |
347 self.TasksTable.ResetView(self.TasksGrid) |
339 self.TasksGrid.RefreshButtons() |
348 self.TasksGrid.RefreshButtons() |
340 |
349 |
341 self.InstancesDefaultValue = {"Name": "", "Type": "", "Task": ""} |
350 self.InstancesDefaultValue = {"Name": "instance0", "Type": "", "Task": ""} |
342 self.InstancesTable = ResourceTable(self, [], GetInstancesTableColnames()) |
351 self.InstancesTable = ResourceTable(self, [], GetInstancesTableColnames()) |
343 self.InstancesTable.SetColAlignements([wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_LEFT]) |
352 self.InstancesTable.SetColAlignements([wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_LEFT]) |
344 self.InstancesTable.SetColSizes([200, 150, 150]) |
353 self.InstancesTable.SetColSizes([200, 150, 150]) |
345 self.InstancesGrid.SetTable(self.InstancesTable) |
354 self.InstancesGrid.SetTable(self.InstancesTable) |
346 self.InstancesGrid.SetButtons({"Add": self.AddInstanceButton, |
355 self.InstancesGrid.SetButtons({"Add": self.AddInstanceButton, |
347 "Delete": self.DeleteInstanceButton, |
356 "Delete": self.DeleteInstanceButton, |
348 "Up": self.UpInstanceButton, |
357 "Up": self.UpInstanceButton, |
349 "Down": self.DownInstanceButton}) |
358 "Down": self.DownInstanceButton}) |
350 |
359 |
351 def _AddInstance(new_row): |
360 def _AddInstance(new_row): |
352 self.InstancesTable.InsertRow(new_row, self.InstancesDefaultValue.copy()) |
361 if new_row > 0: |
|
362 row_content = self.InstancesTable.data[new_row - 1].copy() |
|
363 old_name = row_content['Name'] |
|
364 row_content['Name'] =\ |
|
365 self.Controler.GenerateNewName(self.TagName, old_name, old_name+'%d') |
|
366 else: |
|
367 row_content = self.InstancesDefaultValue.copy() |
|
368 |
|
369 self.InstancesTable.InsertRow(new_row, row_content) |
353 self.RefreshModel() |
370 self.RefreshModel() |
354 self.RefreshView() |
371 self.RefreshView() |
355 return new_row |
372 return new_row |
356 setattr(self.InstancesGrid, "_AddRow", _AddInstance) |
373 setattr(self.InstancesGrid, "_AddRow", _AddInstance) |
357 |
374 |