Configtool: introduce a function for registering a page.

No functional and purely internal change, this should make adding
a page easier.
This commit is contained in:
Ruslan Popov 2015-09-23 15:59:35 +03:00 committed by Markus Hitter
parent fce7337e01
commit 071cb9067b
2 changed files with 33 additions and 71 deletions

View File

@ -56,55 +56,29 @@ class BoardPanel(wx.Panel):
self.pageModified = [] self.pageModified = []
self.pageValid = [] self.pageValid = []
self.pgCpu = CpuPage(self, self.nb, len(self.pages), self.settings.font) self.pgCpu = self.registerPage(CpuPage, "CPU")
text = "CPU" self.pgPins = self.registerPage(PinoutsPage, "Pinouts")
self.nb.AddPage(self.pgCpu, text) self.pgHeaters = self.registerPage(HeatersPage, "Heaters")
self.pages.append(self.pgCpu) self.pgSensors = self.registerPage(SensorsPage, "Temperature Sensors",
self.titles.append(text) heatersPage = self.pgHeaters)
self.pageModified.append(False) self.pgCommunications = self.registerPage(CommunicationsPage,
self.pageValid.append(True) "Communications")
self.pgPins = PinoutsPage(self, self.nb, len(self.pages),
self.settings.font)
text = "Pinouts"
self.nb.AddPage(self.pgPins, text)
self.pages.append(self.pgPins)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
self.pgHeaters = HeatersPage(self, self.nb, len(self.pages),
self.settings.font)
text = "Heaters"
self.nb.AddPage(self.pgHeaters, text)
self.pages.append(self.pgHeaters)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
self.pgSensors = SensorsPage(self, self.nb, len(self.pages), self.pgHeaters,
self.settings.font)
text = "Temperature Sensors"
self.nb.AddPage(self.pgSensors, text)
self.pages.append(self.pgSensors)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
self.pgCommunications = CommunicationsPage(self, self.nb, len(self.pages),
self.settings.font)
text = "Communications"
self.nb.AddPage(self.pgCommunications, text)
self.pages.append(self.pgCommunications)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
sz.Add(self.nb, 1, wx.EXPAND + wx.ALL, 5) sz.Add(self.nb, 1, wx.EXPAND + wx.ALL, 5)
self.SetSizer(sz) self.SetSizer(sz)
self.Fit() self.Fit()
def registerPage(self, klass, label, *args, **kwargs):
page = klass(self, self.nb, len(self.pages), *args,
font = self.settings.font, **kwargs)
self.nb.AddPage(page, label)
self.pages.append(page)
self.titles.append(label)
self.pageModified.append(False)
self.pageValid.append(True)
return page
def getCPUInfo(self): def getCPUInfo(self):
vF_CPU = None vF_CPU = None
if 'F_CPU' in self.cfgValues.keys(): if 'F_CPU' in self.cfgValues.keys():
@ -535,7 +509,7 @@ class BoardPanel(wx.Panel):
if not os.path.basename(path).startswith("board."): if not os.path.basename(path).startswith("board."):
dlg = wx.MessageDialog(self, "Illegal file name: %s.\n" dlg = wx.MessageDialog(self, "Illegal file name: %s.\n"
"File name must begin with \"board.\"" % path, "File name must begin with \"board.\"" % path,
"Illegal file name", wx.OK + wx.ICON_ERROR) "Illegal file name", wx.OK + wx.ICON_ERROR)
dlg.ShowModal() dlg.ShowModal()
dlg.Destroy() dlg.Destroy()
@ -567,11 +541,11 @@ class BoardPanel(wx.Panel):
skipToSensorEnd = False skipToSensorEnd = False
skipToHeaterEnd = False skipToHeaterEnd = False
tempTables = {}
candThermPinsWritten = False candThermPinsWritten = False
candHeatPinsWritten = False candHeatPinsWritten = False
candProcessorsWritten = False candProcessorsWritten = False
candCPUClocksWritten = False candCPUClocksWritten = False
for ln in self.cfgBuffer: for ln in self.cfgBuffer:
m = reStartSensors.match(ln) m = reStartSensors.match(ln)
if m: if m:

View File

@ -45,38 +45,26 @@ class PrinterPanel(wx.Panel):
self.pageModified = [] self.pageModified = []
self.pageValid = [] self.pageValid = []
self.pgMech = MechanicalPage(self, self.nb, len(self.pages), self.pgMech = self.registerPage(MechanicalPage, "Mechanical")
self.settings.font) self.pgAcc = self.registerPage(AccelerationPage, "Acceleration")
text = "Mechanical" self.pgMiscellaneous = self.registerPage(MiscellaneousPage,
self.nb.AddPage(self.pgMech, text) "Miscellaneous")
self.pages.append(self.pgMech)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
self.pgAcc = AccelerationPage(self, self.nb, len(self.pages),
self.settings.font)
text = "Acceleration"
self.nb.AddPage(self.pgAcc, text)
self.pages.append(self.pgAcc)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
self.pgMiscellaneous = MiscellaneousPage(self, self.nb, len(self.pages),
self.settings.font)
text = "Miscellaneous"
self.nb.AddPage(self.pgMiscellaneous, text)
self.pages.append(self.pgMiscellaneous)
self.titles.append(text)
self.pageModified.append(False)
self.pageValid.append(True)
sz.Add(self.nb, 1, wx.EXPAND + wx.ALL, 5) sz.Add(self.nb, 1, wx.EXPAND + wx.ALL, 5)
self.SetSizer(sz) self.SetSizer(sz)
self.Fit() self.Fit()
def registerPage(self, klass, label, *args, **kwargs):
page = klass(self, self.nb, len(self.pages), *args,
font = self.settings.font, **kwargs)
self.nb.AddPage(page, label)
self.pages.append(page)
self.titles.append(label)
self.pageModified.append(False)
self.pageValid.append(True)
return page
def getFileName(self): def getFileName(self):
return self.configFile return self.configFile