def __init__(self, parent, chrt, options, pds, title): super(PrimDirsListFrame, self).__init__(parent, -1, title, wx.DefaultPosition, size=wx.Size(640, 400)) self.parent = parent self.chart = chrt self.pdrange = pds.pdrange self.direction = pds.direction self.horoscope = None # for time-stepping #Navigating toolbar self.tb = self.CreateToolBar(wx.TB_HORIZONTAL|wx.NO_BORDER|wx.TB_FLAT) tsize = (24, 24) tostart_bmp = wx.ArtProvider.GetBitmap(wx.ART_GO_UP, wx.ART_TOOLBAR, tsize) back_bmp = wx.ArtProvider.GetBitmap(wx.ART_GO_BACK, wx.ART_TOOLBAR, tsize) forward_bmp = wx.ArtProvider.GetBitmap(wx.ART_GO_FORWARD, wx.ART_TOOLBAR, tsize) toend_bmp= wx.ArtProvider.GetBitmap(wx.ART_GO_DOWN, wx.ART_TOOLBAR, tsize) self.tb.SetToolBitmapSize(tsize) self.ID_Start = 10 self.tb.AddLabelTool(10, "Start", tostart_bmp, shortHelp=mtexts.txts["Start"], longHelp=mtexts.txts["ToFirstPage"]) self.Bind(wx.EVT_TOOL, self.OnStart, id=self.ID_Start) self.ID_Back = 20 self.tb.AddLabelTool(20, "Back", back_bmp, shortHelp=mtexts.txts["Back"], longHelp=mtexts.txts["ToBackPage"]) self.Bind(wx.EVT_TOOL, self.OnBack, id=self.ID_Back) self.ID_Forward = 30 self.tb.AddLabelTool(30, "Forward", forward_bmp, shortHelp=mtexts.txts["Forward"], longHelp=mtexts.txts["ToForwardPage"]) self.Bind(wx.EVT_TOOL, self.OnForward, id=self.ID_Forward) self.ID_End = 40 self.tb.AddLabelTool(40, "End", toend_bmp, shortHelp=mtexts.txts["End"], longHelp=mtexts.txts["ToLastPage"]) self.Bind(wx.EVT_TOOL, self.OnEnd, id=self.ID_End) self.tb.AddSeparator() # self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) # txt = str(chrt.time.origyear)+'.'+str(chrt.time.origmonth).zfill(2)+'.'+str(chrt.time.origday).zfill(2)+'. '+str(chrt.time.hour).zfill(2)+':'+str(chrt.time.minute).zfill(2)+':'+str(chrt.time.second).zfill(2) # self.tb.AddControl(wx.StaticText(self.tb, -1, txt)) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) #Range rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 #year self.year = wx.TextCtrl(self.tb, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50, -1), style=wx.TE_READONLY) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) self.year.SetValue(str(chrt.time.origyear)) self.tb.AddControl(self.year) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) #month self.month = wx.TextCtrl(self.tb, -1, '', validator=intvalidator.IntValidator(1, 12), size=(30, -1), style=wx.TE_READONLY) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) self.month.SetValue(str(chrt.time.origmonth).zfill(2)) self.tb.AddControl(self.month) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) #day self.day = wx.TextCtrl(self.tb, -1, '', validator=intvalidator.IntValidator(1, 31), size=(30, -1), style=wx.TE_READONLY) self.day.SetHelpText(mtexts.txts['HelpDay']) self.day.SetMaxLength(2) self.day.SetValue(str(chrt.time.origday).zfill(2)) self.tb.AddControl(self.day) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) #hour self.hour = wx.TextCtrl(self.tb, -1, '', validator=intvalidator.IntValidator(0, 23), size=(30, -1), style=wx.TE_READONLY) self.hour.SetHelpText(mtexts.txts['HelpHour']) self.hour.SetMaxLength(2) self.hour.SetValue(str(chrt.time.hour)) self.tb.AddControl(self.hour) self.tb.AddControl(wx.StaticText(self.tb, -1, ':')) #minute self.minute = wx.TextCtrl(self.tb, -1, '', validator=intvalidator.IntValidator(0, 59), size=(30, -1), style=wx.TE_READONLY) self.minute.SetHelpText(mtexts.txts['HelpMin']) self.minute.SetMaxLength(2) self.minute.SetValue(str(chrt.time.minute).zfill(2)) self.tb.AddControl(self.minute) self.tb.AddControl(wx.StaticText(self.tb, -1, ':')) #second self.sec = wx.TextCtrl(self.tb, -1, '', validator=intvalidator.IntValidator(0, 59), size=(30, -1), style=wx.TE_READONLY) self.sec.SetHelpText(mtexts.txts['HelpMin']) self.sec.SetMaxLength(2) self.sec.SetValue(str(chrt.time.second).zfill(2)) self.tb.AddControl(self.sec) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) #Rectification self.tb.AddControl(wx.StaticText(self.tb, -1, mtexts.txts['Rectification'])) self.tb.AddControl(wx.StaticText(self.tb, -1, ': ')) self.recttypes = ('1s', '5s', '10s', '1m', '5m', '10m') self.rectcb = wx.ComboBox(self.tb, -1, self.recttypes[0], size=(70, -1), choices=self.recttypes, style=wx.CB_DROPDOWN|wx.CB_READONLY) self.rectcb.SetSelection(0) self.tb.AddControl(self.rectcb) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) self.btnIncr = wx.Button(self.tb, -1, '+', size=(40, 30)) self.tb.AddControl(self.btnIncr) self.btnDecr = wx.Button(self.tb, -1, '-', size=(40, 30)) self.tb.AddControl(self.btnDecr) self.tb.AddControl(wx.StaticText(self.tb, -1, ' ')) self.btnCalc = wx.Button(self.tb, -1, mtexts.txts['Calculate'], size=(-1, 30)) self.tb.AddControl(self.btnCalc) self.Bind(wx.EVT_BUTTON, self.onIncr, id=self.btnIncr.GetId()) self.Bind(wx.EVT_BUTTON, self.onDecr, id=self.btnDecr.GetId()) self.Bind(wx.EVT_BUTTON, self.onCalc, id=self.btnCalc.GetId()) self.tb.Realize() self.initTB(chrt, options, pds, parent) self.SetMinSize((200, 200)) self.Bind(EVT_PDREADY, self.OnPDReady)
def __init__(self, parent, title, langid): self.langid = langid # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. pre = wx.PreDialog() pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) pre.Create(parent, -1, title, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) #Time rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.stime =wx.StaticBox(self, label='') timesizer = wx.StaticBoxSizer(self.stime, wx.VERTICAL) vsizer = wx.BoxSizer(wx.VERTICAL) self.timeckb = wx.CheckBox(self, -1, mtexts.txts['BC']) vsizer.Add(self.timeckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.RIGHT|wx.TOP, 5) fgsizer = wx.FlexGridSizer(2, 3) vvsizer = wx.BoxSizer(wx.VERTICAL) self.yearlabel = wx.StaticText(self, -1, mtexts.txts['Year']+':') vvsizer.Add(self.yearlabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50,-1)) vvsizer.Add(self.year, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.monthlabel = wx.StaticText(self, -1, mtexts.txts['Month']+':') vvsizer.Add(self.monthlabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.month = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50,-1)) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) vvsizer.Add(self.month, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.daylabel = wx.StaticText(self, -1, mtexts.txts['Day']+':') vvsizer.Add(self.daylabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.day = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 31), size=(50,-1)) self.day.SetHelpText(mtexts.txts['HelpDay']) self.day.SetMaxLength(2) vvsizer.Add(self.day, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.hourlabel = wx.StaticText(self, -1, mtexts.txts['Hour']+':') vvsizer.Add(self.hourlabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.hour = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 23), size=(50,-1)) self.hour.SetHelpText(mtexts.txts['HelpHour']) self.hour.SetMaxLength(2) vvsizer.Add(self.hour, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.minlabel = wx.StaticText(self, -1, mtexts.txts['Min']+':') vvsizer.Add(self.minlabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.minute = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50,-1)) self.minute.SetHelpText(mtexts.txts['HelpMin']) self.minute.SetMaxLength(2) vvsizer.Add(self.minute, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.seclabel = wx.StaticText(self, -1, mtexts.txts['Sec']+':') vvsizer.Add(self.seclabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.sec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50,-1)) self.sec.SetHelpText(mtexts.txts['HelpMin']) self.sec.SetMaxLength(2) vvsizer.Add(self.sec, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsizer.Add(fgsizer, 0, wx.ALIGN_LEFT|wx.ALL, 0) timesizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 0) vvsubsizer = wx.BoxSizer(wx.VERTICAL) vvsubsizer.Add(timesizer, 0, wx.GROW|wx.ALIGN_LEFT|wx.RIGHT, 5)### #Place fgsizer = wx.FlexGridSizer(2, 4) vsizer = wx.BoxSizer(wx.VERTICAL) self.splace =wx.StaticBox(self, label='') placesizer = wx.StaticBoxSizer(self.splace, wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Long']+':') fgsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.LEFT, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Deg']+':') vvsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) self.londeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 180), size=(40,-1)) self.londeg.SetHelpText(mtexts.txts['HelpLonDeg']) self.londeg.SetMaxLength(3) vvsizer.Add(self.londeg, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Min']+':') vvsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) self.lonmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40, -1)) self.lonmin.SetHelpText(mtexts.txts['HelpMin']) self.lonmin.SetMaxLength(2) vvsizer.Add(self.lonmin, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.placerbE = wx.RadioButton(self, -1, mtexts.txts['E'], style=wx.RB_GROUP) vvsizer.Add(self.placerbE, 0, wx.ALIGN_LEFT|wx.TOP|wx.RIGHT|wx.LEFT, 2) self.placerbW = wx.RadioButton(self, -1, mtexts.txts['W']) vvsizer.Add(self.placerbW, 0, wx.ALIGN_LEFT|wx.TOP|wx.RIGHT|wx.LEFT, 2) fgsizer.Add(vvsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5) # fgsizer.AddGrowableCol(4, 0) label = wx.StaticText(self, -1, mtexts.txts['Lat']+':') fgsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Deg']+':') vvsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) self.latdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 90), size=(40,-1)) self.latdeg.SetHelpText(mtexts.txts['HelpLatDeg']) self.latdeg.SetMaxLength(2) vvsizer.Add(self.latdeg, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Min']+':') vvsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) self.latmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40, -1)) self.latmin.SetHelpText(mtexts.txts['HelpMin']) self.latmin.SetMaxLength(2) vvsizer.Add(self.latmin, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.placerbN = wx.RadioButton(self, -1, mtexts.txts['N'], style=wx.RB_GROUP) vvsizer.Add(self.placerbN, 0, wx.ALIGN_LEFT|wx.TOP|wx.RIGHT|wx.LEFT, 2) self.placerbS = wx.RadioButton(self, -1, mtexts.txts['S']) vvsizer.Add(self.placerbS, 0, wx.ALIGN_LEFT|wx.TOP|wx.RIGHT|wx.LEFT, 2) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsizer.Add(fgsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) ID_PlaceButton = wx.NewId() placebtn = wx.Button(self, ID_PlaceButton, mtexts.txts['Place']+':', size=(100, -1)) vsizer.Add(placebtn, 0, wx.ALIGN_LEFT|wx.TOP|wx.LEFT|wx.RIGHT, 5) self.birthplace = wx.TextCtrl(self, -1, '', size=(170,-1)) self.birthplace.SetHelpText(mtexts.txts['HelpPlace']) self.birthplace.SetMaxLength(20) vsizer.Add(self.birthplace, 0, wx.ALIGN_LEFT|wx.ALL, 5) placesizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 0) vvsubsizer.Add(placesizer, 0, wx.ALIGN_LEFT|wx.RIGHT, 5) mhsizer.Add(vvsubsizer, 0, wx.ALIGN_LEFT|wx.ALL, 0) #Zone self.szone =wx.StaticBox(self, label='') zonesizer = wx.StaticBoxSizer(self.szone, wx.VERTICAL) self.calcb = wx.ComboBox(self, -1, mtexts.calList[0], size=(100, -1), choices=mtexts.calList, style=wx.CB_DROPDOWN|wx.CB_READONLY) zonesizer.Add(self.calcb, 0, wx.GROW|wx.ALIGN_LEFT|wx.ALL, 5) self.zonecb = wx.ComboBox(self, -1, mtexts.zoneList[0], size=(100, -1), choices=mtexts.zoneList, style=wx.CB_DROPDOWN|wx.CB_READONLY) zonesizer.Add(self.zonecb, 0, wx.GROW|wx.ALIGN_LEFT|wx.ALL, 5) # self.zonecb.SetHelpText(mtexts.txts['zone-time') hhsizer = wx.BoxSizer(wx.HORIZONTAL) self.gmtlabel = wx.StaticText(self, -1, mtexts.txts['GMT']) hhsizer.Add(self.gmtlabel, 0, wx.ALIGN_CENTER_VERTICAL|wx.LEFT, 5) self.pluscb = wx.ComboBox(self, -1, TimeSpaceDlg.PLUSCHOICES[0], size=(50, -1), choices=TimeSpaceDlg.PLUSCHOICES, style=wx.CB_DROPDOWN|wx.CB_READONLY) hhsizer.Add(self.pluscb, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) zonesizer.Add(hhsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) fgsizer = wx.FlexGridSizer(1, 2) vvsizer = wx.BoxSizer(wx.VERTICAL) self.zhourlabel = wx.StaticText(self, -1, mtexts.txts['Hour']+':') vvsizer.Add(self.zhourlabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) self.zhour = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 12), size=(50,-1)) self.zhour.SetHelpText(mtexts.txts['HelpZoneHour']) self.zhour.SetMaxLength(2) vvsizer.Add(self.zhour, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vvsizer = wx.BoxSizer(wx.VERTICAL) self.zminutelabel = wx.StaticText(self, -1, mtexts.txts['Min']+':') vvsizer.Add(self.zminutelabel, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) self.zminute = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50,-1)) self.zminute.SetHelpText(mtexts.txts['HelpMin']) self.zminute.SetMaxLength(2) vvsizer.Add(self.zminute, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 5) fgsizer.Add(vvsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) zonesizer.Add(fgsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) self.daylightckb = wx.CheckBox(self, -1, mtexts.txts['Daylight']) zonesizer.Add(self.daylightckb, 0, wx.ALIGN_LEFT|wx.ALL, 5) self.daylightckb.SetHelpText(mtexts.txts['HelpDaylight']) mhsizer.Add(zonesizer, 0, wx.GROW|wx.ALIGN_LEFT|wx.ALL, 0) mvsizer.Add(mhsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnsizer.AddButton(btnOk) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btn = wx.Button(self, wx.ID_CANCEL, mtexts.txts['Cancel']) btnsizer.AddButton(btn) btn.SetHelpText(mtexts.txts['HelpCancel']) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW|wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) self.Bind(wx.EVT_BUTTON, self.onOK, id=wx.ID_OK) self.Bind(wx.EVT_BUTTON, self.onPlaceButton, id=ID_PlaceButton) self.Bind(wx.EVT_COMBOBOX, self.onZone, id=self.zonecb.GetId()) btnOk.SetFocus()
def __init__(self, parent, time): super(TransitMonthDlg, self).__init__() # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. #pre = wx.Dialog() #pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) #pre.Create(parent, -1, mtexts.txts['Transit'].capitalize(), pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) wx.Dialog.__init__(self) self.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) self.Create(parent, -1, mtexts.txts['Transit'].capitalize(), pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. #self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #Time rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.stime =wx.StaticBox(self, label='') timesizer = wx.StaticBoxSizer(self.stime, wx.VERTICAL) vsizer = wx.BoxSizer(wx.VERTICAL) fgsizer = wx.FlexGridSizer(1, gap=wx.Size(0,0)) label = wx.StaticText(self, -1, mtexts.txts['Year']+':') vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50,-1)) vsizer.Add(self.year, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) vsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Month']+':') vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.month = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50,-1)) vsizer.Add(self.month, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) timesizer.Add(fgsizer, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, 5) mvsizer.Add(timesizer, 0, wx.GROW|wx.ALIGN_LEFT|wx.LEFT|wx.RIGHT, 5) #Initialize self.year.SetValue(str(time.year)) self.month.SetValue(str(time.month)) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnsizer.AddButton(btnOk) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btn = wx.Button(self, wx.ID_CANCEL, mtexts.txts['Cancel']) btnsizer.AddButton(btn) btn.SetHelpText(mtexts.txts['HelpCancel']) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW|wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) btnOk.SetFocus() self.Bind(wx.EVT_BUTTON, self.onOK, id=wx.ID_OK)
def __init__(self, parent): super(GraphEphemDlg, self).__init__() # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. #pre = wx.Dialog() #pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) #pre.Create(parent, -1, mtexts.txts['Ephemeris'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) wx.Dialog.__init__(self) self.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) self.Create(parent, -1, mtexts.txts['Ephemeris'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. #self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) #Time rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.syear = wx.StaticBox(self, label=mtexts.txts['Year']) yearsizer = wx.StaticBoxSizer(self.syear, wx.VERTICAL) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50, -1)) yearsizer.Add(self.year, 0, wx.GROW | wx.ALIGN_CENTER | wx.ALL, 5) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) mhsizer.Add(yearsizer, 1, wx.GROW | wx.ALIGN_CENTER | wx.ALL, 5) mvsizer.Add(mhsizer, 0, wx.GROW | wx.ALIGN_CENTER | wx.ALL, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnsizer.AddButton(btnOk) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btn = wx.Button(self, wx.ID_CANCEL, mtexts.txts['Cancel']) btnsizer.AddButton(btn) btn.SetHelpText(mtexts.txts['HelpCancel']) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW | wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) btnOk.SetFocus() now = datetime.datetime.now() self.year.SetValue(str(now.year))
def __init__(self, parent): # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. pre = wx.PreDialog() pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) pre.Create(parent, -1, mtexts.txts['SunTransits'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) #Target self.starget =wx.StaticBox(self, label='') targetsizer = wx.StaticBoxSizer(self.starget, wx.VERTICAL) self.ascrb = wx.RadioButton(self, -1, mtexts.txts['Ascendant'], style=wx.RB_GROUP) targetsizer.Add(self.ascrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.mcrb = wx.RadioButton(self, -1, mtexts.txts['MediumCoeli']) targetsizer.Add(self.mcrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.sunrb = wx.RadioButton(self, -1, mtexts.txts['Sun']) targetsizer.Add(self.sunrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.moonrb = wx.RadioButton(self, -1, mtexts.txts['Moon']) targetsizer.Add(self.moonrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.mercuryrb = wx.RadioButton(self, -1, mtexts.txts['Mercury']) targetsizer.Add(self.mercuryrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.venusrb = wx.RadioButton(self, -1, mtexts.txts['Venus']) targetsizer.Add(self.venusrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.marsrb = wx.RadioButton(self, -1, mtexts.txts['Mars']) targetsizer.Add(self.marsrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.jupiterrb = wx.RadioButton(self, -1, mtexts.txts['Jupiter']) targetsizer.Add(self.jupiterrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.saturnrb = wx.RadioButton(self, -1, mtexts.txts['Saturn']) targetsizer.Add(self.saturnrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.uranusrb = wx.RadioButton(self, -1, mtexts.txts['Uranus']) targetsizer.Add(self.uranusrb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.neptunerb = wx.RadioButton(self, -1, mtexts.txts['Neptune']) targetsizer.Add(self.neptunerb, 0, wx.ALIGN_LEFT|wx.ALL, 2) self.plutorb = wx.RadioButton(self, -1, mtexts.txts['Pluto']) targetsizer.Add(self.plutorb, 0, wx.ALIGN_LEFT|wx.ALL, 2) mhsizer.Add(targetsizer, 0, wx.ALIGN_LEFT|wx.LEFT, 0) #Time rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.stime =wx.StaticBox(self, label='') timesizer = wx.StaticBoxSizer(self.stime, wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['StartingDate']) vsubsizer = wx.BoxSizer(wx.VERTICAL) vsubsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer = wx.FlexGridSizer(2, 3) label = wx.StaticText(self, -1, mtexts.txts['Year']+':') vsizer = wx.BoxSizer(wx.VERTICAL) vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50,-1)) vsizer.Add(self.year, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Month']+':') vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.month = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50,-1)) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) vsizer.Add(self.month, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Day']+':') vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.day = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 31), size=(50,-1)) self.day.SetHelpText(mtexts.txts['HelpDay']) self.day.SetMaxLength(2) vsizer.Add(self.day, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsubsizer.Add(fgsizer, 0, wx.ALIGN_CENTER_HORIZONTAL) timesizer.Add(vsubsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5) mhsizer.Add(timesizer, 0, wx.GROW|wx.ALIGN_LEFT|wx.LEFT, 5) mvsizer.Add(mhsizer, 0, wx.ALIGN_LEFT|wx.LEFT|wx.RIGHT, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnsizer.AddButton(btnOk) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btn = wx.Button(self, wx.ID_CANCEL, mtexts.txts['Cancel']) btnsizer.AddButton(btn) btn.SetHelpText(mtexts.txts['HelpCancel']) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW|wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) btnOk.SetFocus()
def find(self): rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 y = 1973 #year doesn't matter m = 3 d = 21 for i in range( int(self.ftdata[astrology.SE_SUN][ findtimedlg.FindTimeDlg.LON])): y, m, d = util.incrDay(y, m, d) #Because the Sun's velocity is not exactly one degree per day. It is variable. The targetdate (from Sun's long) won't exactly be in the middle of the range tim = chart.event.DateTime(y, m, d, 0, 0, 0, self.bc, chart.event.DateTime.GREGORIAN, chart.event.DateTime.GREENWICH, True, 0, 0, False, None, False) tmpSun = planets.Planet(tim.jd, astrology.SE_SUN, self.flags) lonSun = tmpSun.data[planets.Planet.LONG] lontofind = self.ftdata[astrology.SE_SUN][findtimedlg.FindTimeDlg.LON] if lonSun > FindTime.CIRCLE - FindTime.OFFSET and lontofind < FindTime.OFFSET: lontofind += FindTime.CIRCLE if lontofind > FindTime.CIRCLE - FindTime.OFFSET and lonSun < FindTime.OFFSET: lonSun += FindTime.CIRCLE diff = int(math.fabs(int(lonSun) - int(lontofind))) if int(self.ftdata[astrology.SE_SUN][ findtimedlg.FindTimeDlg.LON]) < int(lonSun): for i in range(diff): y, m, d = util.decrDay(y, m, d) else: for i in range(diff): y, m, d = util.incrDay(y, m, d) ybeg, mbeg, dbeg = y, m, d yend, mend, dend = y, m, d DATEOFFS = 7 #adjust range for i in range(DATEOFFS): ybeg, mbeg, dbeg = util.decrDay(ybeg, mbeg, dbeg) yend, mend, dend = util.incrDay(yend, mend, dend) tfnd = (1, 1, 1, 1.0, 1.0) y = 1 m = mbeg d = dbeg while (y < rnge): if self.abort.abort: return fnd = self.day( y, m, d, astrology.SE_SUN, self.ftdata[astrology.SE_SUN][findtimedlg.FindTimeDlg.LON]) if fnd != None: found = True #The order of the search is chaldean (i.e. acc. to speed) for i in range(FindTime.TRADPL_NUM): j = self.mapChaldeanToModern(i) if j != 3: #SUN tfnd = self.day( y, m, d, j, self.ftdata[j][findtimedlg.FindTimeDlg.LON]) if tfnd == None: found = False break if found: #update wnd evt = findtimedlg.FTDataReadyEvent(attr1=tfnd) wx.PostEvent(self.win, evt) yt = y if m == mend and d == dend: y += 1 m = mbeg d = dbeg else: y, m, d = util.incrDay(y, m, d) if yt != y and yt % 50 == 0: evt = findtimedlg.FTYearEvent(attr1=yt) wx.PostEvent(self.win, evt)
def __init__(self, parent, chrt, y, m, d, t, direct, arc, opts, terrestrial): self.parent = parent self.chart = chrt self.y = y self.m = m self.d = d self.t = t self.direct = direct self.arc = arc self.options = opts self.terrestrial = terrestrial # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. pre = wx.Dialog() pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) pre.Create(parent, -1, mtexts.txts['PDsInChart'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) #Date rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.sdate = wx.StaticBox(self, label='') datesizer = wx.StaticBoxSizer(self.sdate, wx.VERTICAL) self.daterb = wx.RadioButton(self, -1, '', style=wx.RB_GROUP) datesizer.Add(self.daterb, 0, wx.GROW | wx.ALIGN_LEFT | wx.ALL, 5) ### vsizer = wx.BoxSizer(wx.VERTICAL) # self.dateckb = wx.CheckBox(self, -1, mtexts.txts['BC']) # vsizer.Add(self.dateckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.RIGHT|wx.TOP, 5) fgsizer = wx.FlexGridSizer(2, gap=wx.Size(0, 0)) self.yeartxt = wx.StaticText(self, -1, mtexts.txts['Year'] + ':') vsizer.Add(self.yeartxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50, -1)) vsizer.Add(self.year, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) self.year.SetValue(str(self.y)) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.monthtxt = wx.StaticText(self, -1, mtexts.txts['Month'] + ':') vsizer.Add(self.monthtxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.month = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50, -1)) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) self.month.SetValue(str(self.m)) vsizer.Add(self.month, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.daytxt = wx.StaticText(self, -1, mtexts.txts['Day'] + ':') vsizer.Add(self.daytxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.day = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 31), size=(50, -1)) self.day.SetHelpText(mtexts.txts['HelpDay']) self.day.SetMaxLength(2) self.day.SetValue(str(self.d)) vsizer.Add(self.day, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) #time ho, mi, se = util.decToDeg(self.t) vsizer = wx.BoxSizer(wx.VERTICAL) self.hourtxt = wx.StaticText(self, -1, mtexts.txts['Hour'] + ':') vsizer.Add(self.hourtxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.hour = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 23), size=(50, -1)) self.hour.SetHelpText(mtexts.txts['HelpHour']) vsizer.Add(self.hour, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.hour.SetMaxLength(2) self.hour.SetValue(str(ho)) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.minutetxt = wx.StaticText(self, -1, mtexts.txts['Min'] + ':') vsizer.Add(self.minutetxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.minute = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50, -1)) self.minute.SetHelpText(mtexts.txts['HelpMin']) self.minute.SetMaxLength(2) self.minute.SetValue(str(mi)) vsizer.Add(self.minute, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.secondtxt = wx.StaticText(self, -1, mtexts.txts['Sec'] + ':') vsizer.Add(self.secondtxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.second = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50, -1)) self.second.SetHelpText(mtexts.txts['HelpMin']) self.second.SetMaxLength(2) self.second.SetValue(str(se)) vsizer.Add(self.second, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) datesizer.Add(fgsizer, 0, wx.GROW | wx.ALIGN_CENTER | wx.ALL, 5) ### #DA self.sda = wx.StaticBox(self, label='') dasizer = wx.StaticBoxSizer(self.sda, wx.VERTICAL) self.arcrb = wx.RadioButton(self, -1, '') dasizer.Add(self.arcrb, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) hsizer = wx.BoxSizer(wx.HORIZONTAL) self.datxt = wx.StaticText(self, -1, mtexts.txts['Arc'] + ':') hsizer.Add(self.datxt, 0, wx.ALIGN_CENTER | wx.LEFT, 0) self.da = wx.TextCtrl(self, -1, '', validator=floatvalidator.FloatValidator( 0.0, 100.0), size=(100, -1)) self.da.SetMaxLength(10) hsizer.Add(self.da, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) vsizer.Add(hsizer, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) dasizer.Add(vsizer, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.ALL, 5) self.da.SetValue(str(self.arc)) #Direction self.sdir = wx.StaticBox(self, label='') dirsizer = wx.StaticBoxSizer(self.sdir, wx.VERTICAL) vsizer = wx.BoxSizer(wx.VERTICAL) self.positiverb = wx.RadioButton(self, -1, mtexts.txts['Direct'], style=wx.RB_GROUP) self.negativerb = wx.RadioButton(self, -1, mtexts.txts['Converse']) vsizer.Add(self.positiverb, 0, wx.LEFT, 0) vsizer.Add(self.negativerb, 0, wx.LEFT, 0) if self.direct: self.positiverb.SetValue(True) else: self.negativerb.SetValue(True) dirsizer.Add(vsizer, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) #ShowBtn self.sshow = wx.StaticBox(self, label='') showsizer = wx.StaticBoxSizer(self.sshow, wx.VERTICAL) ID_SHOWBTN = wx.NewId() self.btnShow = wx.Button(self, ID_SHOWBTN, mtexts.txts['Show']) showsizer.Add(self.btnShow, 0, wx.ALIGN_CENTER | wx.ALL, 10) mvsizer.Add(datesizer, 0, wx.GROW | wx.ALIGN_LEFT | wx.LEFT | wx.RIGHT, 5) mvsizer.Add(dasizer, 0, wx.GROW | wx.ALIGN_LEFT | wx.LEFT | wx.RIGHT, 5) mvsizer.Add(dirsizer, 0, wx.GROW | wx.ALIGN_LEFT | wx.LEFT | wx.RIGHT, 5) mvsizer.Add(showsizer, 0, wx.GROW | wx.ALIGN_LEFT | wx.LEFT | wx.RIGHT, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btnsizer.AddButton(btnOk) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW | wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) self.Bind(wx.EVT_RADIOBUTTON, self.onDate, id=self.daterb.GetId()) self.Bind(wx.EVT_RADIOBUTTON, self.onArc, id=self.arcrb.GetId()) self.Bind(wx.EVT_BUTTON, self.onShowBtn, id=ID_SHOWBTN) self.enableDate(True) self.enableArc(False) # self.enablePosNeg(False) self.da.SetFocus()
def __init__(self, parent, radixjd, radixplace): self.radixjd = radixjd self.radixplace = radixplace # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. pre = wx.PreDialog() pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) pre.Create(parent, -1, mtexts.txts['Profections'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) #Date rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.sdate = wx.StaticBox(self, label='') datesizer = wx.StaticBoxSizer(self.sdate, wx.VERTICAL) vsizer = wx.BoxSizer(wx.VERTICAL) # self.dateckb = wx.CheckBox(self, -1, mtexts.txts['BC']) # vsizer.Add(self.dateckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.RIGHT|wx.TOP, 5) fgsizer = wx.FlexGridSizer(1, 3) self.yeartxt = wx.StaticText(self, -1, mtexts.txts['Year'] + ':') vsizer.Add(self.yeartxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50, -1)) vsizer.Add(self.year, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.monthtxt = wx.StaticText(self, -1, mtexts.txts['Month'] + ':') vsizer.Add(self.monthtxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.month = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50, -1)) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) vsizer.Add(self.month, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.daytxt = wx.StaticText(self, -1, mtexts.txts['Day'] + ':') vsizer.Add(self.daytxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.day = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 31), size=(50, -1)) self.day.SetHelpText(mtexts.txts['HelpDay']) self.day.SetMaxLength(2) vsizer.Add(self.day, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) datesizer.Add(fgsizer, 0, wx.GROW | wx.ALIGN_CENTER | wx.ALL, 5) ### #time self.stime = wx.StaticBox(self, label='') timesizer = wx.StaticBoxSizer(self.stime, wx.VERTICAL) fgsizer = wx.FlexGridSizer(1, 3) vsizer = wx.BoxSizer(wx.VERTICAL) self.hourtxt = wx.StaticText(self, -1, mtexts.txts['Hour'] + ':') vsizer.Add(self.hourtxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.hour = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 23), size=(50, -1)) self.hour.SetHelpText(mtexts.txts['HelpHour']) vsizer.Add(self.hour, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.hour.SetMaxLength(2) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.minutetxt = wx.StaticText(self, -1, mtexts.txts['Min'] + ':') vsizer.Add(self.minutetxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.minute = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50, -1)) self.minute.SetHelpText(mtexts.txts['HelpMin']) self.minute.SetMaxLength(2) vsizer.Add(self.minute, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) self.secondtxt = wx.StaticText(self, -1, mtexts.txts['Sec'] + ':') vsizer.Add(self.secondtxt, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) self.second = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50, -1)) self.second.SetHelpText(mtexts.txts['HelpMin']) self.second.SetMaxLength(2) vsizer.Add(self.second, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT | wx.ALL, 5) timesizer.Add(fgsizer, 0, wx.GROW | wx.ALIGN_CENTER | wx.ALL, 5) ### mvsizer.Add(datesizer, 0, wx.GROW | wx.ALIGN_LEFT | wx.LEFT | wx.RIGHT, 5) mvsizer.Add(timesizer, 0, wx.GROW | wx.ALIGN_LEFT | wx.LEFT | wx.RIGHT, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btnsizer.AddButton(btnOk) btn = wx.Button(self, wx.ID_CANCEL, mtexts.txts['Cancel']) btn.SetHelpText(mtexts.txts['HelpCancel']) btnsizer.AddButton(btn) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW | wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) self.Bind(wx.EVT_BUTTON, self.onOK, id=wx.ID_OK) self.year.SetFocus()
def __init__(self, parent): # Instead of calling wx.Dialog.__init__ we precreate the dialog # so we can set an extra style that must be set before # creation, and then we create the GUI object using the Create # method. pre = wx.PreDialog() pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) pre.Create(parent, -1, mtexts.txts['Revolutions'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) # This next step is the most important, it turns this Python # object into the real wrapper of the dialog (instead of pre) # as far as the wxPython extension is concerned. self.PostCreate(pre) #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) #Type stype =wx.StaticBox(self, label='') typesizer = wx.StaticBoxSizer(stype, wx.VERTICAL) self.typecb = wx.ComboBox(self, -1, mtexts.revtypeList[0], size=(100, -1), choices=mtexts.revtypeList, style=wx.CB_DROPDOWN|wx.CB_READONLY) typesizer.Add(self.typecb, 0, wx.ALIGN_CENTER|wx.TOP, 20) mhsizer.Add(typesizer, 0, wx.GROW|wx.ALIGN_CENTER) #Time rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 self.stime =wx.StaticBox(self, label='') timesizer = wx.StaticBoxSizer(self.stime, wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['StartingDate']) vsubsizer = wx.BoxSizer(wx.VERTICAL) vsubsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer = wx.FlexGridSizer(2, 3) label = wx.StaticText(self, -1, mtexts.txts['Year']+':') vsizer = wx.BoxSizer(wx.VERTICAL) vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.year = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, rnge), size=(50,-1)) vsizer.Add(self.year, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) if checker.isExtended(): self.year.SetHelpText(mtexts.txts['HelpYear']) else: self.year.SetHelpText(mtexts.txts['HelpYear2']) self.year.SetMaxLength(4) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Month']+':') vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.month = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50,-1)) self.month.SetHelpText(mtexts.txts['HelpMonth']) self.month.SetMaxLength(2) vsizer.Add(self.month, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsizer = wx.BoxSizer(wx.VERTICAL) label = wx.StaticText(self, -1, mtexts.txts['Day']+':') vsizer.Add(label, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) self.day = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 31), size=(50,-1)) self.day.SetHelpText(mtexts.txts['HelpDay']) self.day.SetMaxLength(2) vsizer.Add(self.day, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.LEFT, 0) fgsizer.Add(vsizer, 0, wx.ALIGN_LEFT|wx.ALL, 5) vsubsizer.Add(fgsizer, 0, wx.ALIGN_CENTER_HORIZONTAL) timesizer.Add(vsubsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5) mhsizer.Add(timesizer, 0, wx.ALIGN_LEFT|wx.LEFT, 5) mvsizer.Add(mhsizer, 0, wx.ALIGN_LEFT|wx.LEFT|wx.RIGHT, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Ok']) btnsizer.AddButton(btnOk) btnOk.SetHelpText(mtexts.txts['HelpOk']) btnOk.SetDefault() btn = wx.Button(self, wx.ID_CANCEL, mtexts.txts['Cancel']) btnsizer.AddButton(btn) btn.SetHelpText(mtexts.txts['HelpCancel']) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW|wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) btnOk.SetFocus() self.Bind(wx.EVT_BUTTON, self.onOK, id=wx.ID_OK)
def __init__(self, parent): wx.Dialog.__init__(self, parent, -1, mtexts.txts['FindTime'], pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE) self.parent = parent #main vertical sizer mvsizer = wx.BoxSizer(wx.VERTICAL) #main horizontal sizer mhsizer = wx.BoxSizer(wx.HORIZONTAL) vsizer = wx.BoxSizer(wx.VERTICAL) #BC sbc = wx.StaticBox(self, label='') sbcsizer = wx.StaticBoxSizer(sbc, wx.VERTICAL) self.bcckb = wx.CheckBox(self, -1, mtexts.txts['BC']) sbcsizer.Add(self.bcckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) # self.bcckb.Enable(False) vsizer.Add(sbcsizer, 0, wx.GROW) #Planets splanets =wx.StaticBox(self, label='') splanetssizer = wx.StaticBoxSizer(splanets, wx.VERTICAL) gsizer = wx.GridSizer(7, 5) label = wx.StaticText(self, -1, mtexts.txts['Sun']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sundeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.sundeg.SetHelpText(mtexts.txts['HelpDeg']) self.sundeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.sundeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sunmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.sunmin.SetHelpText(mtexts.txts['HelpMin']) self.sunmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.sunmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sunmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.sunmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sunsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.sunsec.SetHelpText(mtexts.txts['HelpMin']) self.sunsec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.sunsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sunsectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.sunsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sunretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.sunretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.sunretr.Enable(False) label = wx.StaticText(self, -1, mtexts.txts['Moon']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moondeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.moondeg.SetHelpText(mtexts.txts['HelpDeg']) self.moondeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.moondeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moonmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.moonmin.SetHelpText(mtexts.txts['HelpMin']) self.moonmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.moonmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moonmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.moonmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moonsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.moonsec.SetHelpText(mtexts.txts['HelpMin']) self.moonsec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.moonsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moonsectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.moonsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moonretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.moonretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.moonretr.Enable(False) label = wx.StaticText(self, -1, mtexts.txts['Mercury']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mercurydeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.mercurydeg.SetHelpText(mtexts.txts['HelpDeg']) self.mercurydeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mercurydeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mercurymin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.mercurymin.SetHelpText(mtexts.txts['HelpMin']) self.mercurymin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mercurymin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mercurymintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.mercurymintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mercurysec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.mercurysec.SetHelpText(mtexts.txts['HelpMin']) self.mercurysec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mercurysec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mercurysectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.mercurysectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mercuryretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mercuryretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['Venus']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.venusdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.venusdeg.SetHelpText(mtexts.txts['HelpDeg']) self.venusdeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.venusdeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.venusmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.venusmin.SetHelpText(mtexts.txts['HelpMin']) self.venusmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.venusmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.venusmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.venusmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.venussec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.venussec.SetHelpText(mtexts.txts['HelpMin']) self.venussec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.venussec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.venussectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.venussectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.venusretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.venusretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['Mars']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.marsdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.marsdeg.SetHelpText(mtexts.txts['HelpDeg']) self.marsdeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.marsdeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.marsmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.marsmin.SetHelpText(mtexts.txts['HelpMin']) self.marsmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.marsmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.marsmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.marsmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.marssec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.marssec.SetHelpText(mtexts.txts['HelpMin']) self.marssec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.marssec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.marssectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.marssectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.marsretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.marsretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['Jupiter']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.jupiterdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.jupiterdeg.SetHelpText(mtexts.txts['HelpDeg']) self.jupiterdeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.jupiterdeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.jupitermin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.jupitermin.SetHelpText(mtexts.txts['HelpMin']) self.jupitermin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.jupitermin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.jupitermintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.jupitermintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.jupitersec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.jupitersec.SetHelpText(mtexts.txts['HelpMin']) self.jupitersec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.jupitersec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.jupitersectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.jupitersectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.jupiterretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.jupiterretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['Saturn']+':') gsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.saturndeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.saturndeg.SetHelpText(mtexts.txts['HelpDeg']) self.saturndeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.saturndeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) label = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(label, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.saturnmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.saturnmin.SetHelpText(mtexts.txts['HelpMin']) self.saturnmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.saturnmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.saturnmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.saturnmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.saturnsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.saturnsec.SetHelpText(mtexts.txts['HelpMin']) self.saturnsec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.saturnsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.saturnsectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.saturnsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.saturnretr = wx.CheckBox(self, -1, mtexts.txts['R']) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.saturnretr, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) splanetssizer.Add(gsizer, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) vsizer.Add(splanetssizer, 0) #Use suse = wx.StaticBox(self, label=mtexts.txts['Use']) susesizer = wx.StaticBoxSizer(suse, wx.VERTICAL) self.useminckb = wx.CheckBox(self, -1, mtexts.txts['Minute']) susesizer.Add(self.useminckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) self.usesecckb = wx.CheckBox(self, -1, mtexts.txts['Second']) susesizer.Add(self.usesecckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) self.useretrckb = wx.CheckBox(self, -1, mtexts.txts['Retrograde']) susesizer.Add(self.useretrckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) vsizer.Add(susesizer, 1, wx.GROW) mhsizer.Add(vsizer, 0, wx.GROW|wx.ALIGN_CENTER_HORIZONTAL, 0) #Angles vvvsizer = wx.BoxSizer(wx.VERTICAL) sangles = wx.StaticBox(self, label='') sanglessizer = wx.StaticBoxSizer(sangles, wx.VERTICAL) gsizer = wx.GridSizer(2, 4) self.asctxt = wx.StaticText(self, -1, mtexts.txts['Asc']+':') gsizer.Add(self.asctxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.ascdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.ascdeg.SetHelpText(mtexts.txts['HelpDeg']) self.ascdeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.ascdeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.ascdegtxt = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(self.ascdegtxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.ascmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.ascmin.SetHelpText(mtexts.txts['HelpMin']) self.ascmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.ascmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.ascmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.ascmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.ascsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.ascsec.SetHelpText(mtexts.txts['HelpMin']) self.ascsec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.ascsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.ascsectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.ascsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mctxt = wx.StaticText(self, -1, mtexts.txts['MC']+':') gsizer.Add(self.mctxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mcdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 359), size=(40,-1)) self.mcdeg.SetHelpText(mtexts.txts['HelpDeg']) self.mcdeg.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mcdeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mcdegtxt = wx.StaticText(self, -1, mtexts.txts['D2']) hsizer.Add(self.mcdegtxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mcmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.mcmin.SetHelpText(mtexts.txts['HelpMin']) self.mcmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mcmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mcmintxt = wx.StaticText(self, -1, mtexts.txts['M2']) hsizer.Add(self.mcmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mcsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.mcsec.SetHelpText(mtexts.txts['HelpMin']) self.mcsec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.mcsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.mcsectxt = wx.StaticText(self, -1, mtexts.txts['S2']) hsizer.Add(self.mcsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) sanglessizer.Add(gsizer, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) self.useascmcckb = wx.CheckBox(self, -1, mtexts.txts['Use']) sanglessizer.Add(self.useascmcckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) vvvsizer.Add(sanglessizer, 0, wx.GROW|wx.LEFT, 5) #Force date rnge = 3000 checker = rangechecker.RangeChecker() if checker.isExtended(): rnge = 5000 sforce = wx.StaticBox(self, label='') sforcesizer = wx.StaticBoxSizer(sforce, wx.VERTICAL) gsizer = wx.GridSizer(2, 3) self.fyear = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, rnge), size=(50,-1)) if checker.isExtended(): self.fyear.SetHelpText(mtexts.txts['HelpYear']) else: self.fyear.SetHelpText(mtexts.txts['HelpYear2']) self.fyear.SetMaxLength(4) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.fyear, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fyeartxt = wx.StaticText(self, -1, mtexts.txts['YE']) hsizer.Add(self.fyeartxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fmonth = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 12), size=(50,-1)) self.fmonth.SetHelpText(mtexts.txts['HelpMonth']) self.fmonth.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.fmonth, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fmonthtxt = wx.StaticText(self, -1, mtexts.txts['MO2']) hsizer.Add(self.fmonthtxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fday = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(1, 31), size=(50,-1)) self.fday.SetHelpText(mtexts.txts['HelpDay']) self.fday.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.fday, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fdaytxt = wx.StaticText(self, -1, mtexts.txts['DA']) hsizer.Add(self.fdaytxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fhour = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 23), size=(50,-1)) self.fhour.SetHelpText(mtexts.txts['HelpHour']) self.fhour.SetMaxLength(3) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.fhour, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fhourtxt = wx.StaticText(self, -1, mtexts.txts['HO']) hsizer.Add(self.fhourtxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50,-1)) self.fmin.SetHelpText(mtexts.txts['HelpMin']) self.fmin.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.fmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fmintxt = wx.StaticText(self, -1, mtexts.txts['MI']) hsizer.Add(self.fmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(50,-1)) self.fsec.SetHelpText(mtexts.txts['HelpMin']) self.fsec.SetMaxLength(2) hsizer = wx.BoxSizer(wx.HORIZONTAL)# hsizer.Add(self.fsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.fsectxt = wx.StaticText(self, -1, mtexts.txts['SE']) hsizer.Add(self.fsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) gsizer.Add(hsizer, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) sforcesizer.Add(gsizer, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) self.forceckb = wx.CheckBox(self, -1, mtexts.txts['ForceTheDate']) sforcesizer.Add(self.forceckb, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) vvvsizer.Add(sforcesizer, 0, wx.GROW|wx.LEFT, 5) #Approximation(Planets) sapprox = wx.StaticBox(self, label=mtexts.txts['ApproxPlanets']) sapproxsizer = wx.StaticBoxSizer(sapprox, wx.VERTICAL) self.useapproxckb = wx.CheckBox(self, -1, mtexts.txts['Use']) self.approxdeg = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 4), size=(30,-1)) self.approxdeg.SetHelpText(mtexts.txts['HelpApproxDeg']) self.approxdeg.SetMaxLength(1) self.approxmin = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.approxmin.SetHelpText(mtexts.txts['HelpMin']) self.approxmin.SetMaxLength(2) self.approxsec = wx.TextCtrl(self, -1, '', validator=intvalidator.IntValidator(0, 59), size=(40,-1)) self.approxsec.SetHelpText(mtexts.txts['HelpMin']) self.approxsec.SetMaxLength(2) hsizerDeg = wx.BoxSizer(wx.HORIZONTAL)# hsizerDeg.Add(self.approxdeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.approxdegtxt = wx.StaticText(self, -1, mtexts.txts['D']) hsizerDeg.Add(self.approxdegtxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerMin = wx.BoxSizer(wx.HORIZONTAL)# hsizerMin.Add(self.approxmin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.approxmintxt = wx.StaticText(self, -1, mtexts.txts['M']) hsizerMin.Add(self.approxmintxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerSec = wx.BoxSizer(wx.HORIZONTAL)# hsizerSec.Add(self.approxsec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) self.approxsectxt = wx.StaticText(self, -1, mtexts.txts['S']) hsizerSec.Add(self.approxsectxt, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerLon = wx.BoxSizer(wx.HORIZONTAL)# hsizerLon.Add(hsizerDeg, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerLon.Add(hsizerMin, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerLon.Add(hsizerSec, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerAppr = wx.BoxSizer(wx.HORIZONTAL)# hsizerAppr.Add(self.useapproxckb, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) hsizerAppr.Add(hsizerLon, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 2) sapproxsizer.Add(hsizerAppr, 0, wx.ALIGN_LEFT|wx.LEFT|wx.TOP, 5) vvvsizer.Add(sapproxsizer, 0, wx.GROW|wx.LEFT, 5) #List sreslist =wx.StaticBox(self, label='') reslistsizer = wx.StaticBoxSizer(sreslist, wx.VERTICAL) ID_ResList = wx.NewId() self.li = ResListCtrl(self, ID_ResList, size=(360,100), style=wx.LC_VRULES|wx.LC_REPORT|wx.LC_SINGLE_SEL) reslistsizer.Add(self.li, 1, wx.GROW|wx.ALL, 5) vvvsizer.Add(reslistsizer, 0, wx.GROW|wx.LEFT, 5) #Start and Show List_Start_ID = wx.NewId() self.btnStart = wx.Button(self, List_Start_ID, mtexts.txts['Start2']) List_Show_ID = wx.NewId() self.btnShow = wx.Button(self, List_Show_ID, mtexts.txts['Show']) self.btnShow.Enable(False) hbtnsizer = wx.BoxSizer(wx.HORIZONTAL) hbtnsizer.Add(self.btnStart, 1, wx.GROW|wx.ALIGN_CENTER_HORIZONTAL, 5) hbtnsizer.Add(self.btnShow, 1, wx.GROW|wx.ALIGN_CENTER_HORIZONTAL, 5) vvvsizer.Add(hbtnsizer, 0, wx.GROW|wx.ALIGN_CENTER_HORIZONTAL, 5) mhsizer.Add(vvvsizer, 0, wx.GROW|wx.ALIGN_CENTER_HORIZONTAL, 0) mvsizer.Add(mhsizer, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, 5) btnsizer = wx.StdDialogButtonSizer() if wx.Platform != '__WXMSW__': btn = wx.ContextHelpButton(self) btnsizer.AddButton(btn) btnOk = wx.Button(self, wx.ID_OK, mtexts.txts['Close']) btnOk.SetDefault() btnsizer.AddButton(btnOk) btnsizer.Realize() mvsizer.Add(btnsizer, 0, wx.GROW|wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, 10) self.SetSizer(mvsizer) mvsizer.Fit(self) self.Bind(wx.EVT_CHECKBOX, self.onUseMin, id=self.useminckb.GetId()) self.Bind(wx.EVT_CHECKBOX, self.onUseSec, id=self.usesecckb.GetId()) self.Bind(wx.EVT_CHECKBOX, self.onUseRetr, id=self.useretrckb.GetId()) self.Bind(wx.EVT_CHECKBOX, self.onUseAscMC, id=self.useascmcckb.GetId()) self.Bind(wx.EVT_CHECKBOX, self.onUseForce, id=self.forceckb.GetId()) self.Bind(wx.EVT_CHECKBOX, self.onUseApprox, id=self.useapproxckb.GetId()) self.useminckb.SetValue(True) self.usesecckb.SetValue(True) self.useretrckb.SetValue(True) self.useascmcckb.SetValue(False) self.enableAscMC(self.useascmcckb.GetValue()) self.enableForce(self.useascmcckb.GetValue()) self.useapproxckb.SetValue(False) self.approxdeg.Enable(False) self.approxdegtxt.Enable(False) self.approxmin.Enable(False) self.approxmintxt.Enable(False) self.approxsec.Enable(False) self.approxsectxt.Enable(False) self.Bind(wx.EVT_BUTTON, self.OnStart, id=self.btnStart.GetId()) self.Bind(wx.EVT_BUTTON, self.OnShow, id=self.btnShow.GetId()) self.Bind(wx.EVT_BUTTON, self.onOK, id=btnOk.GetId()) self.Bind(EVT_FTREADY, self.OnFTReady) self.Bind(EVT_FTDATAREADY, self.OnFTDataReady) self.Bind(EVT_FTYEAR, self.OnFTYear) btnOk.SetFocus() self.progtxt = mtexts.txts['BusyInfo2'] self.suffix = '' self.found = False self.ar = None