def __init__(self): wx.Frame.__init__(self, None, -1, 'PyBrew', size=(550, 350)) self.SetBackgroundColour(wx.NamedColor("WHITE")) try: self.bc = BrewController() except Exception as e: wx.MessageBox(str(e), 'Fatal error') sys.exit(1) self.menubar = wx.MenuBar() i1 = self.addMenuItem(1, 'Quit', 'Quit application', self.OnQuit) self.menubar.Append(i1, '&File') i2 = self.addMenuItem(2, 'Set temp', 'Set regulator temp', self.SetTemp) self.menubar.Append(i2, '&Temp') self.SetMenuBar(self.menubar) sizer = wx.BoxSizer(wx.VERTICAL) self.figure = Figure() if not hasattr(self, 'subplot'): self.axes = self.figure.add_subplot(111) self.canvas = FigureCanvas(self, -1, self.figure) sizer.Add(self.canvas, 1, wx.LEFT | wx.TOP | wx.GROW) button_sizer = wx.BoxSizer(wx.HORIZONTAL) buttons = self.bc.VALVES.keys() buttons.sort() for k in buttons: valve_button = wx.ToggleButton(self, -1, label=self.bc.VALVES[k], name=k) valve_button.Bind(wx.EVT_TOGGLEBUTTON, self.OnValve) button_sizer.Add(valve_button) sizer.Add(button_sizer) self.SetSizer(sizer) self.Fit() self.axes.axis([0, 100, -1, 100]) self.add_timer()