toolbarUtil.NormalButton(self.toolbar, self.OnQuit, 'exit.png', 'Close project planner')\r
\r
self.toolbar.Realize()\r
+\r
+ self.toolbar2 = toolbarUtil.Toolbar(self)\r
+ toolbarUtil.NormalButton(self.toolbar2, self.OnAddModel, 'object-add.png', 'Add model')\r
+ toolbarUtil.NormalButton(self.toolbar2, self.OnRemModel, 'object-remove.png', 'Remove model')\r
+ toolbarUtil.NormalButton(self.toolbar2, self.OnMoveUp, 'move-up.png', 'Move model up in print list')\r
+ toolbarUtil.NormalButton(self.toolbar2, self.OnMoveDown, 'move-down.png', 'Move model down in print list')\r
+ self.toolbar2.Realize()\r
\r
sizer = wx.GridBagSizer(2,2)\r
self.SetSizer(sizer)\r
self.sliceButton = wx.Button(self, -1, "Slice")\r
self.autoPlaceButton = wx.Button(self, -1, "Auto Place")\r
\r
- sizer.Add(self.toolbar, (0,0), span=(1,3), flag=wx.EXPAND)\r
+ sizer.Add(self.toolbar, (0,0), span=(1,1), flag=wx.EXPAND)\r
+ sizer.Add(self.toolbar2, (0,1), span=(1,2), flag=wx.EXPAND)\r
sizer.Add(self.preview, (1,0), span=(4,1), flag=wx.EXPAND)\r
sizer.Add(self.listbox, (1,1), span=(1,2), flag=wx.EXPAND)\r
sizer.Add(self.addButton, (2,1), span=(1,1))\r
item.swapYZ = cp.get(section, 'swapYZ') == 'True'\r
if cp.has_option(section, 'extruder'):\r
item.extuder = int(cp.get(section, 'extruder'))-1\r
+ self.updateModelTransform(item)\r
i += 1\r
\r
self.list.append(item)\r
elif len(self.list) > 0:\r
self.listbox.SetSelection(len(self.list) - 1)\r
self.selection = None\r
- self.OnListSelect(None)\r
self.preview.Refresh()\r
\r
+ def OnMoveUp(self, e):\r
+ if self.selection == None:\r
+ return\r
+ i = self.listbox.GetSelection()\r
+ if i == 0:\r
+ return\r
+ self.list.remove(self.selection)\r
+ self.list.insert(i-1, self.selection)\r
+ self._updateListbox()\r
+ self.preview.Refresh()\r
+\r
+ def OnMoveDown(self, e):\r
+ if self.selection == None:\r
+ return\r
+ i = self.listbox.GetSelection()\r
+ if i == len(self.list) - 1:\r
+ return\r
+ self.list.remove(self.selection)\r
+ self.list.insert(i+1, self.selection)\r
+ self._updateListbox()\r
+ self.preview.Refresh()\r
+ \r
+ def _updateListbox(self):\r
+ self.listbox.Clear()\r
+ for item in self.list:\r
+ self.listbox.AppendAndEnsureVisible(os.path.split(item.filename)[1])\r
+ self.listbox.SetSelection(self.list.index(self.selection))\r
+\r
def OnAutoPlace(self, e):\r
bestAllowedSize = int(self.machineSize.y)\r
bestArea = self._doAutoPlace(bestAllowedSize)\r
super(NormalButton, self).__init__(parent, id, self.bitmap, size=size)
self.helpText = helpText
+ self.callback = callback
self.SetBezelWidth(1)
self.SetUseFocusIndicator(False)
self.Bind(wx.EVT_ENTER_WINDOW, self.OnMouseEnter)
self.Bind(wx.EVT_LEAVE_WINDOW, self.OnMouseLeave)
- self.Bind(wx.EVT_BUTTON, callback)
+ self.Bind(wx.EVT_BUTTON, self.OnButton)
parent.AddControl(self)
+ def OnButton(self, event):
+ self.GetParent().OnPopupHide(event)
+ self.callback(event)
+
def OnMouseEnter(self, event):
self.GetParent().OnPopupDisplay(event)
event.Skip()