+ def reloadSettingPanels(self):
+ self.leftSizer.Detach(self.simpleSettingsPanel)
+ self.leftSizer.Detach(self.normalSettingsPanel)
+ self.simpleSettingsPanel.Destroy()
+ self.normalSettingsPanel.Destroy()
+ self.simpleSettingsPanel = simpleMode.simpleModePanel(self.leftPane, lambda : self.scene.sceneUpdated())
+ self.normalSettingsPanel = normalSettingsPanel(self.leftPane, lambda : self.scene.sceneUpdated())
+ self.leftSizer.Add(self.simpleSettingsPanel, 1)
+ self.leftSizer.Add(self.normalSettingsPanel, 1, wx.EXPAND)
+ self.updateSliceMode()
+ self.updateProfileToAllControls()
+
+ def updateMachineMenu(self):
+ #Remove all items so we can rebuild the menu. Inserting items seems to cause crashes, so this is the safest way.
+ for item in self.machineMenu.GetMenuItems():
+ self.machineMenu.RemoveItem(item)
+
+ #Add a menu item for each machine configuration.
+ for n in xrange(0, profile.getMachineCount()):
+ i = self.machineMenu.Append(n + 0x1000, profile.getMachineSetting('machine_name', n).title(), kind=wx.ITEM_RADIO)
+ if n == int(profile.getPreferenceFloat('active_machine')):
+ i.Check(True)
+ self.Bind(wx.EVT_MENU, lambda e: self.OnSelectMachine(e.GetId() - 0x1000), i)
+
+ self.machineMenu.AppendSeparator()
+
+ i = self.machineMenu.Append(-1, _("Machine settings..."))
+ self.Bind(wx.EVT_MENU, self.OnMachineSettings, i)
+
+ #Add tools for machines.
+ self.machineMenu.AppendSeparator()
+
+ self.defaultFirmwareInstallMenuItem = self.machineMenu.Append(-1, _("Install default firmware..."))
+ self.Bind(wx.EVT_MENU, self.OnDefaultMarlinFirmware, self.defaultFirmwareInstallMenuItem)
+
+ i = self.machineMenu.Append(-1, _("Install custom firmware..."))
+ self.Bind(wx.EVT_MENU, self.OnCustomFirmware, i)
+