editors/ResourceEditor.py
changeset 1768 691083b5682a
parent 1762 fcc406143e5b
child 1773 38fde37c3766
equal deleted inserted replaced
1767:c74815729afd 1768:691083b5682a
   231 
   231 
   232         tasks_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5)
   232         tasks_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5)
   233         tasks_sizer.AddGrowableCol(0)
   233         tasks_sizer.AddGrowableCol(0)
   234         tasks_sizer.AddGrowableRow(1)
   234         tasks_sizer.AddGrowableRow(1)
   235         main_sizer.AddSizer(tasks_sizer, border=5,
   235         main_sizer.AddSizer(tasks_sizer, border=5,
   236               flag=wx.GROW | wx.TOP | wx.LEFT | wx.RIGHT)
   236                             flag=wx.GROW | wx.TOP | wx.LEFT | wx.RIGHT)
   237 
   237 
   238         tasks_buttons_sizer = wx.FlexGridSizer(cols=5, hgap=5, rows=1, vgap=0)
   238         tasks_buttons_sizer = wx.FlexGridSizer(cols=5, hgap=5, rows=1, vgap=0)
   239         tasks_buttons_sizer.AddGrowableCol(0)
   239         tasks_buttons_sizer.AddGrowableCol(0)
   240         tasks_buttons_sizer.AddGrowableRow(0)
   240         tasks_buttons_sizer.AddGrowableRow(0)
   241         tasks_sizer.AddSizer(tasks_buttons_sizer, flag=wx.GROW)
   241         tasks_sizer.AddSizer(tasks_buttons_sizer, flag=wx.GROW)
   247                 ("AddTaskButton", "add_element", _("Add task")),
   247                 ("AddTaskButton", "add_element", _("Add task")),
   248                 ("DeleteTaskButton", "remove_element", _("Remove task")),
   248                 ("DeleteTaskButton", "remove_element", _("Remove task")),
   249                 ("UpTaskButton", "up", _("Move task up")),
   249                 ("UpTaskButton", "up", _("Move task up")),
   250                 ("DownTaskButton", "down", _("Move task down"))]:
   250                 ("DownTaskButton", "down", _("Move task down"))]:
   251             button = wx.lib.buttons.GenBitmapButton(self.Editor,
   251             button = wx.lib.buttons.GenBitmapButton(self.Editor,
   252                   bitmap=GetBitmap(bitmap), size=wx.Size(28, 28), style=wx.NO_BORDER)
   252                                                     bitmap=GetBitmap(bitmap),
       
   253                                                     size=wx.Size(28, 28),
       
   254                                                     style=wx.NO_BORDER)
   253             button.SetToolTipString(help)
   255             button.SetToolTipString(help)
   254             setattr(self, name, button)
   256             setattr(self, name, button)
   255             tasks_buttons_sizer.AddWindow(button)
   257             tasks_buttons_sizer.AddWindow(button)
   256 
   258 
   257         self.TasksGrid = CustomGrid(self.Editor, style=wx.VSCROLL)
   259         self.TasksGrid = CustomGrid(self.Editor, style=wx.VSCROLL)
   260 
   262 
   261         instances_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5)
   263         instances_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5)
   262         instances_sizer.AddGrowableCol(0)
   264         instances_sizer.AddGrowableCol(0)
   263         instances_sizer.AddGrowableRow(1)
   265         instances_sizer.AddGrowableRow(1)
   264         main_sizer.AddSizer(instances_sizer, border=5,
   266         main_sizer.AddSizer(instances_sizer, border=5,
   265               flag=wx.GROW | wx.BOTTOM | wx.LEFT | wx.RIGHT)
   267                             flag=wx.GROW | wx.BOTTOM | wx.LEFT | wx.RIGHT)
   266 
   268 
   267         instances_buttons_sizer = wx.FlexGridSizer(cols=5, hgap=5, rows=1, vgap=0)
   269         instances_buttons_sizer = wx.FlexGridSizer(cols=5, hgap=5, rows=1, vgap=0)
   268         instances_buttons_sizer.AddGrowableCol(0)
   270         instances_buttons_sizer.AddGrowableCol(0)
   269         instances_buttons_sizer.AddGrowableRow(0)
   271         instances_buttons_sizer.AddGrowableRow(0)
   270         instances_sizer.AddSizer(instances_buttons_sizer, flag=wx.GROW)
   272         instances_sizer.AddSizer(instances_buttons_sizer, flag=wx.GROW)
   275         for name, bitmap, help in [
   277         for name, bitmap, help in [
   276                 ("AddInstanceButton", "add_element", _("Add instance")),
   278                 ("AddInstanceButton", "add_element", _("Add instance")),
   277                 ("DeleteInstanceButton", "remove_element", _("Remove instance")),
   279                 ("DeleteInstanceButton", "remove_element", _("Remove instance")),
   278                 ("UpInstanceButton", "up", _("Move instance up")),
   280                 ("UpInstanceButton", "up", _("Move instance up")),
   279                 ("DownInstanceButton", "down", _("Move instance down"))]:
   281                 ("DownInstanceButton", "down", _("Move instance down"))]:
   280             button = wx.lib.buttons.GenBitmapButton(self.Editor,
   282             button = wx.lib.buttons.GenBitmapButton(
   281                   bitmap=GetBitmap(bitmap), size=wx.Size(28, 28), style=wx.NO_BORDER)
   283                 self.Editor, bitmap=GetBitmap(bitmap),
       
   284                 size=wx.Size(28, 28), style=wx.NO_BORDER)
   282             button.SetToolTipString(help)
   285             button.SetToolTipString(help)
   283             setattr(self, name, button)
   286             setattr(self, name, button)
   284             instances_buttons_sizer.AddWindow(button)
   287             instances_buttons_sizer.AddWindow(button)
   285 
   288 
   286         self.InstancesGrid = CustomGrid(self.Editor, style=wx.VSCROLL)
   289         self.InstancesGrid = CustomGrid(self.Editor, style=wx.VSCROLL)
   287         self.InstancesGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGE,
   290         self.InstancesGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGE, self.OnInstancesGridCellChange)
   288               self.OnInstancesGridCellChange)
       
   289         instances_sizer.AddWindow(self.InstancesGrid, flag=wx.GROW)
   291         instances_sizer.AddWindow(self.InstancesGrid, flag=wx.GROW)
   290 
   292 
   291         self.Editor.SetSizer(main_sizer)
   293         self.Editor.SetSizer(main_sizer)
   292 
   294 
   293     def __init__(self, parent, tagname, window, controler):
   295     def __init__(self, parent, tagname, window, controler):
   368         def _RefreshInstanceButtons():
   370         def _RefreshInstanceButtons():
   369             if self:
   371             if self:
   370                 rows = self.InstancesTable.GetNumberRows()
   372                 rows = self.InstancesTable.GetNumberRows()
   371                 row = self.InstancesGrid.GetGridCursorRow()
   373                 row = self.InstancesGrid.GetGridCursorRow()
   372                 self.DeleteInstanceButton.Enable(rows > 0)
   374                 self.DeleteInstanceButton.Enable(rows > 0)
   373                 self.UpInstanceButton.Enable(row > 0 and
   375                 self.UpInstanceButton.Enable(
       
   376                     row > 0 and
   374                     self.InstancesTable.GetValueByName(row, "Task") == self.InstancesTable.GetValueByName(row - 1, "Task"))
   377                     self.InstancesTable.GetValueByName(row, "Task") == self.InstancesTable.GetValueByName(row - 1, "Task"))
   375                 self.DownInstanceButton.Enable(0 <= row < rows - 1 and
   378                 self.DownInstanceButton.Enable(
       
   379                     0 <= row < rows - 1 and
   376                     self.InstancesTable.GetValueByName(row, "Task") == self.InstancesTable.GetValueByName(row + 1, "Task"))
   380                     self.InstancesTable.GetValueByName(row, "Task") == self.InstancesTable.GetValueByName(row + 1, "Task"))
   377         setattr(self.InstancesGrid, "RefreshButtons", _RefreshInstanceButtons)
   381         setattr(self.InstancesGrid, "RefreshButtons", _RefreshInstanceButtons)
   378 
   382 
   379         self.InstancesGrid.SetRowLabelSize(0)
   383         self.InstancesGrid.SetRowLabelSize(0)
   380         self.InstancesTable.ResetView(self.InstancesGrid)
   384         self.InstancesTable.ResetView(self.InstancesGrid)