16 extern unsigned long cmap[16];
36 Widget rowcol,rowcol3,pbutton,
rowcol1,sep;
42 double testdist,maxdist;
45 Dimension width,height;
46 signed long XSIZE,YSIZE;
51 char *st[10],buf[100],muf[10];
53 int time_pos,naflag,m;
65 XtSetArg(args[0],XtNwidth,&width);
66 XtSetArg(args[1],XtNheight,&height);
69 XSIZE=(long)width*10L;
70 YSIZE=(long)height*10L;
72 xrat=(float)XSIZE/(
float)12800;
73 yrat=(float)YSIZE/(
float)9600;
92 lint1=(long)
npoint[0]*(
long)MY;
93 lint2=(long)
npoint[1]*(
long)MY;
108 win_x=((x*MY-xcen)/
zoom + lint1)/mult;
109 win_y=((y*MY-ycen)/
zoom + lint2)/mult;
123 x=(((win_x*mult)-lint1)*
zoom+xcen)/MY;
124 y=(((win_y*mult)-lint2)*
zoom+ycen)/MY;
140 r=
dval.
a * cos(lat*conv)/(1+sin(lat*conv))
143 s=
dval.
a * cos(lat*conv)/(1+sin(lat*conv))
146 testdist= pow((
double)(win_x-r),2) + pow((
double)(win_y-
s),2);
147 testdist= pow(testdist,.5);
149 if(testdist < maxdist) {
167 help_string=XmStringCreateLocalized(
"graph");
170 XtSetArg(args[argcount],XmNdeleteResponse,XmDO_NOTHING);argcount++;
171 XtSetArg(args[argcount],XmNautoUnmanage,False);argcount++;
172 XtSetArg(args[argcount],XmNwidth, 300);argcount++;
173 XtSetArg(args[argcount],XmNheight,350);argcount++;
174 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
175 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
177 XtSetArg(args[argcount],XmNhelpLabelString,help_string);argcount++;
185 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
186 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
187 XtSetArg(args[argcount],XmNorientation,XmVERTICAL);argcount++;
188 rowcol=XmCreateRowColumn(
edit_dialog,
"Edit Stations",args,argcount);
193 t=XmStringCreateLocalized(buf);
195 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
196 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
197 XtSetArg(args[argcount],XmNlabelString,
t);argcount++;
198 pbutton=XmCreateLabel(rowcol,
"Label",args,argcount);
199 XtManageChild(pbutton);
203 t=XmStringCreateLocalized(buf);
205 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
206 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
207 XtSetArg(args[argcount],XmNlabelString,
t);argcount++;
208 pbutton=XmCreateLabel(rowcol,
"Label",args,argcount);
209 XtManageChild(pbutton);
218 XtSetArg(args[argcount],XmNvalue,muf);argcount++;
219 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
220 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
221 textz=XmCreateTextField(rowcol,
"Point QPF",args,argcount);
222 XtManageChild(
textz);
224 t=XmStringCreateLocalized(
"Station quality");
227 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
228 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
229 XtSetArg(args[argcount],XmNlabelString,
t);argcount++;
230 pbutton=XmCreateLabel(rowcol,
"Label",args,argcount);
231 XtManageChild(pbutton);
242 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
243 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
244 XtSetArg(args[argcount],XmNpacking,XmPACK_COLUMN); argcount++;
245 XtSetArg(args[argcount],XmNnumColumns,2);argcount++;
246 XtSetArg(args[argcount],XmNorientation,XmVERTICAL);argcount++;
247 rowcol1=XmCreateRadioBox(rowcol,
"Edit Stations",args,argcount);
252 st[1]=
"Reset to Original";
257 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
258 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
259 XtSetArg(args[argcount],XmNselectColor,
cmap[4]);argcount++;
262 XtSetArg(args[argcount],XmNset,True);
265 XtSetArg(args[argcount],XmNset,False);
269 pbutton=XmCreateToggleButton(
rowcol1,st[i],args,argcount);
273 XtManageChild(pbutton);
288 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
289 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
290 XtSetArg(args[argcount],XmNselectColor,
cmap[4]);argcount++;
299 XtSetArg(args[argcount],XmNset,True);
302 XtSetArg(args[argcount],XmNset,True);
305 XtSetArg(args[argcount],XmNset,True);
308 XtSetArg(args[argcount],XmNset,False);
312 pbutton=XmCreateToggleButton(
rowcol1,st[i],args,argcount);
315 XtManageChild(pbutton);
318 XtSetSensitive(pbutton,False);
336 sep=XmCreateSeparator(rowcol,
"swp",NULL,0);
342 t=XmStringCreateLocalized(
"Station Location");
344 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
345 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
346 XtSetArg(args[argcount],XmNlabelString,
t);argcount++;
347 pbutton=XmCreateLabel(rowcol,
"Label",args,argcount);
348 XtManageChild(pbutton);
352 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
353 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
354 XtSetArg(args[argcount],XmNpacking,XmPACK_COLUMN); argcount++;
355 XtSetArg(args[argcount],XmNnumColumns,2);argcount++;
356 XtSetArg(args[argcount],XmNorientation,XmVERTICAL);argcount++;
357 rowcol3=XmCreateRadioBox(rowcol,
"Edit Stations",args,argcount);
367 XtSetArg(args[argcount],XmNbackground,
mmap[1]);argcount++;
368 XtSetArg(args[argcount],XmNforeground,
mmap[0]);argcount++;
369 XtSetArg(args[argcount],XmNselectColor,
cmap[4]);argcount++;
372 XtSetArg(args[argcount],XmNset,True);
375 XtSetArg(args[argcount],XmNset,False);
379 pbutton=XmCreateToggleButton(rowcol3,st[i],args,argcount);
382 XtManageChild(pbutton);
387 XtManageChild(rowcol3);
388 XtManageChild(rowcol);
405 else if((
int)data==2) {
412 else if((
int)data==1) {
419 else if((
int)data==3) {
489 XtSetArg(args[argcount],XmNvalue,&cstr);argcount++;
490 XtGetValues(
textz,args,argcount);
551 XtSetArg(args[0],XmNmenuHistory,
diswidget[k]);
590 else if((
int)data==1)
593 else if((
int)data==2)
char zstation_list_custom_file[1000]
struct station zstation[500]
void kill_widget(Widget widget, XtPointer client_data, XtPointer call_data)
void change_zstation_quality(Widget w, XtPointer data, XtPointer call_data)
void change_zstation_location(Widget w, XtPointer data, XtPointer call_data)
void change_zcustom_file(Widget w, XtPointer data, XtPointer call_data)
void reset_zstation_quality(Widget w, XtPointer data, XtPointer call_data)
void edit_zstations(int win_x, int win_y, unsigned int win_button)