| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | #------------------------------------------------------ options | 
					
						
							|  |  |  | from Tkinter import * | 
					
						
							|  |  |  | import Pmw | 
					
						
							|  |  |  | import g | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def done(): | 
					
						
							|  |  |  |     root.withdraw() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | root=Toplevel() | 
					
						
							|  |  |  | root.withdraw() | 
					
						
							|  |  |  | root.protocol('WM_DELETE_WINDOW',done) | 
					
						
							|  |  |  | if g.Win32: root.iconbitmap("wsjt.ico") | 
					
						
							|  |  |  | root.title("Options") | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def options2(t): | 
					
						
							|  |  |  |     root.geometry(t) | 
					
						
							|  |  |  |     root.deiconify() | 
					
						
							|  |  |  |     root.focus_set() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #-------------------------------------------------------- Create GUI widgets | 
					
						
							|  |  |  | g1=Pmw.Group(root,tag_text="Station parameters") | 
					
						
							|  |  |  | MyCall=StringVar() | 
					
						
							|  |  |  | MyGrid=StringVar() | 
					
						
							|  |  |  | #RxDelay=StringVar() | 
					
						
							|  |  |  | #TxDelay=StringVar() | 
					
						
							|  |  |  | IDinterval=IntVar() | 
					
						
							|  |  |  | ComPort=IntVar() | 
					
						
							| 
									
										
										
										
											2006-07-05 03:49:02 +00:00
										 |  |  | PttPort=StringVar() | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | ndevin=IntVar() | 
					
						
							|  |  |  | ndevout=IntVar() | 
					
						
							| 
									
										
										
										
											2006-07-05 03:49:02 +00:00
										 |  |  | DevinName=StringVar() | 
					
						
							|  |  |  | DevoutName=StringVar() | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | samfacin=DoubleVar() | 
					
						
							|  |  |  | samfacout=DoubleVar() | 
					
						
							|  |  |  | Template1=StringVar() | 
					
						
							|  |  |  | Template2=StringVar() | 
					
						
							|  |  |  | Template3=StringVar() | 
					
						
							|  |  |  | Template4=StringVar() | 
					
						
							|  |  |  | Template5=StringVar() | 
					
						
							|  |  |  | Template6=StringVar() | 
					
						
							|  |  |  | addpfx=StringVar() | 
					
						
							|  |  |  | auxra=StringVar() | 
					
						
							|  |  |  | auxdec=StringVar() | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  | nkeep=IntVar() | 
					
						
							|  |  |  | dphi=IntVar() | 
					
						
							|  |  |  | fa=IntVar() | 
					
						
							|  |  |  | fb=IntVar() | 
					
						
							|  |  |  | fcal=IntVar() | 
					
						
							| 
									
										
										
										
											2007-07-11 16:38:56 +00:00
										 |  |  | ncsmin=IntVar() | 
					
						
							| 
									
										
										
										
											2007-07-12 20:45:14 +00:00
										 |  |  | nt1=IntVar() | 
					
						
							|  |  |  | nt2=IntVar() | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  | savedir=StringVar() | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | mycall=Pmw.EntryField(g1.interior(),labelpos=W,label_text='My Call:', | 
					
						
							|  |  |  |         value='K1JT',entry_textvariable=MyCall,entry_width=12) | 
					
						
							|  |  |  | mygrid=Pmw.EntryField(g1.interior(),labelpos=W,label_text='Grid Locator:', | 
					
						
							|  |  |  |         value='FN20qi',entry_textvariable=MyGrid,entry_width=12) | 
					
						
							|  |  |  | ##rxdelay=Pmw.EntryField(g1.interior(),labelpos=W,label_text='Rx Delay (s):', | 
					
						
							|  |  |  | ##        value='0.2',entry_textvariable=RxDelay) | 
					
						
							|  |  |  | ##txdelay=Pmw.EntryField(g1.interior(),labelpos=W,label_text='Tx Delay (s):', | 
					
						
							|  |  |  | ##        value='0.2',entry_textvariable=TxDelay) | 
					
						
							|  |  |  | idinterval=Pmw.EntryField(g1.interior(),labelpos=W,label_text='ID Interval (m):', | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  |         value=10,validate={'validator':'numeric','min':0,'max':60}, \ | 
					
						
							|  |  |  |         entry_textvariable=IDinterval,entry_width=12) | 
					
						
							| 
									
										
										
										
											2006-07-05 03:49:02 +00:00
										 |  |  | comport=Pmw.EntryField(g1.interior(),labelpos=W,label_text='PTT Port:', | 
					
						
							| 
									
										
										
										
											2007-01-03 18:46:04 +00:00
										 |  |  |         value='/dev/ttyS0',entry_textvariable=PttPort,entry_width=12) | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | audioout=Pmw.EntryField(g1.interior(),labelpos=W,label_text='Audio Out:', | 
					
						
							| 
									
										
										
										
											2006-07-05 03:49:02 +00:00
										 |  |  |         value='0',entry_textvariable=DevoutName,entry_width=12) | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | rateout=Pmw.EntryField(g1.interior(),labelpos=W,label_text='Rate Out:', | 
					
						
							|  |  |  |         value=1.0000,entry_textvariable=samfacout,entry_width=12) | 
					
						
							| 
									
										
										
										
											2007-07-05 17:54:18 +00:00
										 |  |  | meas_rateout=Pmw.EntryField(g1.interior(),labelpos=W,label_text='Measured:', | 
					
						
							| 
									
										
										
										
											2007-07-02 19:55:06 +00:00
										 |  |  |         value=1.0000,entry_width=12) | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | #widgets = (mycall, mygrid, rxdelay,txdelay,idinterval,comport,audioin,audioout) | 
					
						
							| 
									
										
										
										
											2007-07-02 19:55:06 +00:00
										 |  |  | widgets = (mycall, mygrid,idinterval,comport,audioout,rateout,meas_rateout) | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | for widget in widgets: | 
					
						
							|  |  |  |     widget.pack(fill=X,expand=1,padx=10,pady=2) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Pmw.alignlabels(widgets) | 
					
						
							|  |  |  | mycall.component('entry').focus_set() | 
					
						
							|  |  |  | f1=Frame(g1.interior(),width=100,height=20) | 
					
						
							|  |  |  | mileskm=IntVar() | 
					
						
							|  |  |  | Label(f1,text='Distance unit:').pack(side=LEFT) | 
					
						
							|  |  |  | rb5=Radiobutton(f1,text='mi',value=0,variable=mileskm) | 
					
						
							|  |  |  | rb6=Radiobutton(f1,text='km',value=1,variable=mileskm) | 
					
						
							|  |  |  | rb5.pack(anchor=W,side=LEFT,padx=2,pady=2) | 
					
						
							|  |  |  | rb6.pack(anchor=W,side=LEFT,padx=2,pady=2) | 
					
						
							|  |  |  | f1.pack() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #g3=Pmw.Group(root) | 
					
						
							|  |  |  | g3=Pmw.Group(root,tag_text="Miscellaneous") | 
					
						
							|  |  |  | temp_prefix=Pmw.EntryField(g3.interior(),labelpos=W,label_text='DXCC prefix:', | 
					
						
							|  |  |  |     entry_width=9,entry_textvariable=addpfx) | 
					
						
							|  |  |  | aux_ra=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Source RA:', | 
					
						
							|  |  |  |     entry_width=9,entry_textvariable=auxra) | 
					
						
							|  |  |  | aux_dec=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Source DEC:', | 
					
						
							|  |  |  |     entry_width=9,entry_textvariable=auxdec) | 
					
						
							| 
									
										
										
										
											2007-07-10 15:02:56 +00:00
										 |  |  | nkeep_entry=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Timeout (min):', | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  |     entry_width=9,value=20,entry_textvariable=nkeep) | 
					
						
							|  |  |  | dphi_entry=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Dphi (deg):', | 
					
						
							|  |  |  |     entry_width=9,entry_textvariable=dphi) | 
					
						
							| 
									
										
										
										
											2007-07-10 15:02:56 +00:00
										 |  |  | fa_entry=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Fmin (kHz):', | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  |     entry_width=9,value=100,entry_textvariable=fa) | 
					
						
							| 
									
										
										
										
											2007-07-10 15:02:56 +00:00
										 |  |  | fb_entry=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Fmax (kHz):', | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  |     entry_width=9,value=160,entry_textvariable=fb) | 
					
						
							| 
									
										
										
										
											2007-07-10 15:02:56 +00:00
										 |  |  | fcal_entry=Pmw.EntryField(g3.interior(),labelpos=W,label_text='Fcal (Hz):', | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  |     entry_width=9,entry_textvariable=fcal) | 
					
						
							| 
									
										
										
										
											2007-07-11 16:38:56 +00:00
										 |  |  | min_callsign_entry=Pmw.EntryField(g3.interior(),labelpos=W, \ | 
					
						
							|  |  |  |     label_text='CSmin:',entry_width=9,value=4,entry_textvariable=ncsmin) | 
					
						
							| 
									
										
										
										
											2007-07-12 20:45:14 +00:00
										 |  |  | nt1_entry=Pmw.EntryField(g3.interior(),labelpos=W, \ | 
					
						
							|  |  |  |     label_text='Rx t1:',entry_width=9,value=48,entry_textvariable=nt1) | 
					
						
							|  |  |  | nt2_entry=Pmw.EntryField(g3.interior(),labelpos=W, \ | 
					
						
							|  |  |  |     label_text='Rx t2:',entry_width=9,value=52,entry_textvariable=nt2) | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  | savedir_entry=Pmw.EntryField(g3.interior(),labelpos=W,label_text='SaveDir:', | 
					
						
							| 
									
										
										
										
											2007-07-10 15:02:56 +00:00
										 |  |  |     entry_width=23,value=g.appdir+'\save',entry_textvariable=savedir) | 
					
						
							| 
									
										
										
										
											2007-07-09 16:14:00 +00:00
										 |  |  | widgets = (temp_prefix,aux_ra,aux_dec,nkeep_entry,dphi_entry, \ | 
					
						
							| 
									
										
										
										
											2007-07-12 20:45:14 +00:00
										 |  |  |            fa_entry,fb_entry,fcal_entry,min_callsign_entry, \ | 
					
						
							|  |  |  |            nt1_entry,nt2_entry,savedir_entry,) | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | for widget in widgets: | 
					
						
							| 
									
										
										
										
											2007-07-10 15:02:56 +00:00
										 |  |  |     widget.pack(padx=2,pady=2) | 
					
						
							| 
									
										
										
										
											2005-12-22 16:40:53 +00:00
										 |  |  | Pmw.alignlabels(widgets) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | g1.pack(side=LEFT,fill=BOTH,expand=1,padx=6,pady=6) | 
					
						
							|  |  |  | g3.pack(side=LEFT,fill=BOTH,expand=1,padx=6,pady=6) | 
					
						
							|  |  |  | 
 |