def __init__(self, frame): CuteDialog.__init__(self, frame, title="Creating a root state") self.frame = frame self.simpack = frame.gui_project.simpack hbox1=wx.BoxSizer(wx.HORIZONTAL) self.x_title = x_title = wx.StaticText(self, -1, "Width: ") self.x_textctrl = x_textctrl = wx.TextCtrl(self, -1, "45") self.y_title = y_title = wx.StaticText(self, -1, "Height: ") self.y_textctrl = y_textctrl = wx.TextCtrl(self, -1, "25") hbox1.Add(x_title, 0, wx.ALIGN_CENTER | wx.EXPAND | wx.ALL, 5) hbox1.Add(x_textctrl, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.RIGHT, 40) hbox1.Add(y_title, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.RIGHT, 10) hbox1.Add(y_textctrl, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.RIGHT, 5) hbox2 = wx.BoxSizer(wx.HORIZONTAL) self.empty = empty = wx.RadioButton(self, -1, 'All empty', style=wx.RB_GROUP) self.full = full = wx.RadioButton(self, -1, 'All full') self.random = random = wx.RadioButton(self, -1, 'Random') random.SetValue(True) hbox2.Add(empty, 0, wx.ALIGN_CENTER | wx.ALL, 5) hbox2.Add(full, 0, wx.ALIGN_CENTER | wx.ALL, 5) hbox2.Add(random, 0, wx.ALIGN_CENTER | wx.ALL, 5) vbox = wx.BoxSizer(wx.VERTICAL) last_hbox = wx.BoxSizer(wx.HORIZONTAL) ok = wx.Button(self, -1, 'Ok', size=(70, 30)) ok.SetDefault() self.Bind(wx.EVT_BUTTON, self.on_ok, id=ok.GetId()) cancel = wx.Button(self, -1, 'Cancel', size=(70, 30)) self.Bind(wx.EVT_BUTTON, self.on_cancel, id=cancel.GetId()) last_hbox.Add(ok, 0) last_hbox.Add(cancel, 0, wx.LEFT, 5) vbox.Add(hbox1, 0, wx.ALIGN_CENTER | wx.TOP | wx.BOTTOM, 10) vbox.Add(hbox2, 0, wx.ALIGN_CENTER | wx.TOP | wx.BOTTOM, 10) vbox.Add(last_hbox, 1, wx.ALIGN_CENTER | wx.BOTTOM, 10) self.SetSizer(vbox) vbox.Fit(self) ok.SetFocus()
def __init__(self, frame): CuteDialog.__init__(self, frame, title='Creating a root state') self.frame = frame self.simpack = frame.gui_project.simpack State = self.simpack.State vbox = wx.BoxSizer(wx.VERTICAL) self.messy_check_box = messy_check_box = wx.CheckBox(self, -1, 'Messy') tool_tip_string = '''Make a messy chaotic state, useful for \ test-driving the simpack.''' messy_check_box.SetValue(True) if State.create_root is None or State.create_messy_root is None: messy_check_box.Disable() if State.create_messy_root is None: messy_check_box.SetValue(False) tool_tip_string += ''' Not available because the simpack \ doesn't define `create_messy_root`.''' else: tool_tip_string += ''' Can't be canceled because the simpack \ doesn't define `create_root`.''' messy_check_box.SetToolTipString(tool_tip_string) vbox.Add(messy_check_box, 0, wx.ALL, 10) # todo: add slick way to add args/kwargs last_hbox = wx.StdDialogButtonSizer() ok = wx.Button(self, wx.ID_OK, 'Ok', size=(70, 30)) ok.SetDefault() last_hbox.SetAffirmativeButton(ok) self.Bind(wx.EVT_BUTTON, self.on_ok, id=ok.GetId()) cancel = wx.Button(self, wx.ID_CANCEL, 'Cancel', size=(70, 30)) self.Bind(wx.EVT_BUTTON, self.on_cancel, id=cancel.GetId()) last_hbox.AddButton(ok) last_hbox.AddButton(cancel) last_hbox.Realize() vbox.Add(last_hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) self.SetSizer(vbox) vbox.Fit(self) ok.SetFocus()