home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-04-06 | 33.2 KB | 1,235 lines |
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 21 (of 32)."
- # Contents: starchart/sXawD.c.ab
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'starchart/sXawD.c.ab' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'starchart/sXawD.c.ab'\"
- else
- echo shar: Extracting \"'starchart/sXawD.c.ab'\" \(31373 characters\)
- sed "s/^X//" >'starchart/sXawD.c.ab' <<'END_OF_FILE'
- X LayersD.all_layer[i] = all_layer[i];
- X LayersD.numlayers = numlayers;
- X
- X current_dialog = LayersDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X layers_help();
- X}
- X
- X/* mapfiles widget
- X Set mapfiles array
- X*/
- Xvoid Map_files(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X char *dlog_name = "mapfiles";
- X void ftype_select();
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2, higher_widge;
- X Widget bottom_widge, apply_widge, dismiss_widge, cancel_widge;
- X int i;
- X char *cp;
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg( Label_arg[0], XtNborderWidth, 0);
- X XtSetArg( Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget("Specify data files and types to be used",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X higher_widge = twidge1;
- X for (i = 0; i < MAXMAPFILES; i++) {
- X Map_filesD.mapnum[i] = i;
- X strcpy(Map_filesD.mapfiles[i], mapfiles[i]);
- X Map_filesD.mapftypes[i] = mapftypes[i];
- X
- X Map_filesD.file_wid[i] =
- X twidge2 = Get_string("File:", twidge1, pform,
- X Map_filesD.mapfiles[i],
- X MAXPATHLEN, 300, 300);
- X twidge1 = twidge2;
- X
- X
- X XtSetArg(Label_arg[2], XtNfromHoriz, twidge1);
- X XtSetArg(Label_arg[3], XtNfromVert, higher_widge);
- X NLabel_args = 4;
- X
- X twidge2 =
- X XtCreateManagedWidget(" Type:",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X twidge1 = twidge2;
- X
- X callback[0].callback = ftype_select;
- X callback[0].closure = (caddr_t) ((int *) &(Map_filesD.mapnum[i]));
- X XtSetArg(Button_arg[0], XtNcallback, callback);
- X XtSetArg(Button_arg[1], XtNfromHoriz, twidge1);
- X XtSetArg(Button_arg[2], XtNfromVert, higher_widge);
- X
- X NButton_args = 3;
- X cp = filetype_strings[mapftypes[i]];
- X Map_filesD.ftype_wid[i] =
- X twidge2 =
- X XtCreateManagedWidget(cp,
- X commandWidgetClass, pform,
- X Button_arg, NButton_args);
- X twidge1 = twidge2;
- X higher_widge = twidge1;
- X }
- X
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X callback[0].callback = mapf_apply;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X NButton_args = 3;
- X apply_widge =
- X XtCreateManagedWidget( " Apply ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X bottom_widge = apply_widge;
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X callback[0].callback = do_cancel;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNfromHoriz, dismiss_widge);
- X cancel_widge =
- X XtCreateManagedWidget( "Cancel ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X
- X /* Save the current values */
- X /* names and types set above */
- X Map_filesD.nummapfiles = nummapfiles;
- X
- X current_dialog = Map_filesDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X dfiles_help();
- X}
- X
- X/* projection_mode widget
- X Set projection mode of chart to be
- X SANSONS, STEREOGR, GNOMONIC, ORTHOGR, or RECTANGULAR
- X*/
- Xvoid Projection_mode(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X char *dlog_name = "projection_mode";
- X void mode_select();
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2;
- X Widget bottom_widge, dismiss_widge, cancel_widge;
- X char *tcp;
- X
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg( Label_arg[0], XtNborderWidth, 0);
- X XtSetArg( Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget("Specify Projection mode (press button)",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X /* set mode */
- X callback[0].callback = mode_select;
- X callback[0].closure = (caddr_t) "projection_mode";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X
- X tcp = proj_mode_strings[all_proj_mode];
- X
- X twidge2 =
- X XtCreateManagedWidget(tcp,
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X
- X
- X
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X callback[0].callback = do_cancel;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNfromHoriz, dismiss_widge);
- X cancel_widge =
- X XtCreateManagedWidget( "Cancel ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X
- X /* Save the current values */
- X Projection_modeD.all_proj_mode = all_proj_mode;
- X
- X current_dialog = Projection_modeDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X pmode_help();
- X}
- X
- X/********** Dialog ***************/
- X/* Magnitude label dialog
- X set all_vmin, all_vmax (use_vmin)
- X nomaglbls
- X*/
- X
- Xvoid Magnitude_labels(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X void nomaglbls_toggle();
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X char *dlog_name = "maglbls";
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2;
- X Widget bottom_widge, apply_widge, dismiss_widge, cancel_widge;
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg( Label_arg[0], XtNborderWidth, 0);
- X XtSetArg( Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget("Specify star magnitude labeling",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X /* Get minimum */
- X Magnitude_labelsD.all_vmin_wid =
- X twidge2 = Get_float("Brightest: ", twidge1, pform, all_vmin,
- X Magnitude_labelsD.all_vmin_str,
- X sizeof(Magnitude_labelsD.all_vmin_str));
- X twidge1 = twidge2;
- X
- X /* Get maximum */
- X Magnitude_labelsD.all_vmax_wid =
- X twidge2 = Get_float("Faintest: ", twidge1, pform, all_vmax,
- X Magnitude_labelsD.all_vmax_str,
- X sizeof(Magnitude_labelsD.all_vmax_str));
- X twidge1 = twidge2;
- X
- X
- X /* Toggle nomaglabls */
- X callback[0].callback = nomaglbls_toggle;
- X callback[0].closure = (caddr_t) "nomablbls";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(nomaglbls ?
- X "Don't Label stars with their magnitudes":
- X "Label stars with their magnitudes ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X
- X
- X
- X
- X callback[0].callback = maglbl_apply;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X NButton_args = 3;
- X apply_widge =
- X XtCreateManagedWidget( " Apply ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X bottom_widge = apply_widge;
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X callback[0].callback = do_cancel;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNfromHoriz, dismiss_widge);
- X cancel_widge =
- X XtCreateManagedWidget( "Cancel ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X
- X /* Save the current values */
- X Magnitude_labelsD.all_vmin = all_vmin;
- X Magnitude_labelsD.all_vmax = all_vmax;
- X
- X current_dialog = Magnitude_labelsDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X maglabels_help();
- X}
- X
- X/********** Dialog ***************/
- X/* Grid dialog
- X set all_rstep, all_dstep, all_rstrt, all_dstrt,
- X no_ra_grid, no_dec_grid
- X*/
- X
- Xvoid Grid(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X void no_ra_grid_toggle();
- X void no_dec_grid_toggle();
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X char *dlog_name = "grid";
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2;
- X Widget bottom_widge, apply_widge, dismiss_widge, cancel_widge;
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg( Label_arg[0], XtNborderWidth, 0);
- X XtSetArg( Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget("Specify Grid",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X
- X if (all_rstep == 0) all_rstep = 15.0;
- X if (all_dstep == 0) all_dstep = 5.0;
- X /* Get ra_step */
- X GridD.all_rstep_wid =
- X twidge2 = Get_float("R.A. Step: ", twidge1, pform, dtof(all_rstep/15.0),
- X GridD.all_rstep_str,
- X sizeof(GridD.all_rstep_str));
- X twidge1 = twidge2;
- X
- X /* Get dec_step */
- X GridD.all_dstep_wid =
- X twidge2 = Get_float("Dec. Step: ", twidge1, pform, all_dstep,
- X GridD.all_dstep_str,
- X sizeof(GridD.all_dstep_str));
- X twidge1 = twidge2;
- X
- X
- X /* Get ra_strt */
- X GridD.all_rstrt_wid =
- X twidge2 = Get_float("R.A. Start: ", twidge1, pform, dtof(all_rstrt/15.0),
- X GridD.all_rstrt_str,
- X sizeof(GridD.all_rstrt_str));
- X twidge1 = twidge2;
- X
- X /* Get dec_strt */
- X GridD.all_dstrt_wid =
- X twidge2 = Get_float("Dec. Start: ", twidge1, pform, all_dstrt,
- X GridD.all_dstrt_str,
- X sizeof(GridD.all_dstrt_str));
- X twidge1 = twidge2;
- X
- X
- X
- X /* Toggle ra */
- X callback[0].callback = no_ra_grid_toggle;
- X callback[0].closure = (caddr_t) "no_ra_grid";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(no_ra_grid ?
- X " No R.A. grid":
- X "Show R.A. grid",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X /* Toggle dec */
- X callback[0].callback = no_dec_grid_toggle;
- X callback[0].closure = (caddr_t) "no_dec_grid";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(no_dec_grid ?
- X " No Dec. grid":
- X "Show Dec. grid",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X
- X
- X
- X
- X callback[0].callback = grid_apply;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X NButton_args = 3;
- X apply_widge =
- X XtCreateManagedWidget( " Apply ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X bottom_widge = apply_widge;
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X callback[0].callback = do_cancel;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNfromHoriz, dismiss_widge);
- X cancel_widge =
- X XtCreateManagedWidget( "Cancel ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X
- X /* Save the current values */
- X GridD.all_rstep = all_rstep;
- X GridD.all_dstep = all_dstep;
- X GridD.all_rstrt = all_rstrt;
- X GridD.all_dstrt = all_dstrt;
- X GridD.no_ra_grid = no_ra_grid;
- X GridD.no_dec_grid = no_dec_grid;
- X
- X current_dialog = GridDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X grid_help();
- X}
- X
- Xvoid Edit_mapwins(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X void e_mapwins_toggle();
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X char *dlog_name = "x parms";
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2;
- X Widget bottom_widge, dismiss_widge;
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg(Label_arg[0], XtNborderWidth, 0);
- X XtSetArg(Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget("Edit map window structure",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X XtSetArg(Label_arg[2], XtNhorizDistance, 4);
- X XtSetArg(Label_arg[3], XtNfromVert, twidge1);
- X NLabel_args = 4;
- X twidge2 =
- X XtCreateManagedWidget("(Editing will be performed",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X twidge1 = twidge2;
- X
- X XtSetArg(Label_arg[3], XtNfromVert, twidge1);
- X twidge2 =
- X XtCreateManagedWidget("when \"Draw Chart\" is selected)",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X twidge1 = twidge2;
- X
- X /* Toggle edit_mapwins */
- X callback[0].callback = e_mapwins_toggle;
- X callback[0].closure = (caddr_t) "edit mapwins";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(edit_mapwins ?
- X " Edit ":
- X "Don't Edit",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X
- X
- X
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X /* Save the current values */
- X current_dialog = Edit_mapwinsDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X emapwins_help();
- X}
- X
- X/********** Dialog ***************/
- X/*
- X Set X specific parameters
- X post_preview, post_landscape, use_backup, is_color
- X*/
- X
- Xvoid X_parms(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X void pp_select();
- X void use_back_toggle();
- X void is_color_toggle();
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X char *dlog_name = "x parms";
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2;
- X Widget bottom_widge, apply_widge, dismiss_widge, cancel_widge;
- X char *cp;
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg( Label_arg[0], XtNborderWidth, 0);
- X XtSetArg( Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget("X11 specific controls",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X /* Toggle post_preview */
- X if (fixed_size) {
- X cp = " Use Fixed window dimensions ";
- X pp_status = 3;
- X } else if (post_preview) {
- X if (post_landscape) {
- X cp = "Use PostScript landscape page ";
- X pp_status = 1;
- X } else {
- X cp = "Use PostScript page dimensions";
- X pp_status = 2;
- X };
- X } else {
- X cp = "Use flexible window dimensions";
- X pp_status = 0;
- X };
- X callback[0].callback = pp_select;
- X callback[0].closure = (caddr_t) "post preview";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(cp,
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X
- X X_parmsD.fixed_width_wid =
- X twidge2 =
- X Get_int("Fixed width: ",
- X twidge1, pform, fixed_width, X_parmsD.fixed_width_str,
- X sizeof(X_parmsD.fixed_width_str));
- X twidge1 = twidge2;
- X
- X X_parmsD.fixed_height_wid =
- X twidge2 =
- X Get_int("Fixed height:",
- X twidge1, pform, fixed_height, X_parmsD.fixed_height_str,
- X sizeof(X_parmsD.fixed_height_str));
- X twidge1 = twidge2;
- X
- X /* Toggle use_backup */
- X callback[0].callback = use_back_toggle;
- X callback[0].closure = (caddr_t) "use back";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(use_backup ?
- X "Use X Backing store":
- X "No X Backing store ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X
- X /* Toggle is_color */
- X callback[0].callback = is_color_toggle;
- X callback[0].closure = (caddr_t) "is color";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(is_color ?
- X "Color Display ":
- X "Monochrome Display ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X
- X
- X callback[0].callback = xparm_apply;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X NButton_args = 3;
- X apply_widge =
- X XtCreateManagedWidget( " Apply ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X bottom_widge = apply_widge;
- X
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X callback[0].callback = do_cancel;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNfromHoriz, dismiss_widge);
- X cancel_widge =
- X XtCreateManagedWidget( "Cancel ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X
- X /* Save the current values */
- X X_parmsD.post_preview = post_preview;
- X X_parmsD.post_landscape = post_landscape;
- X X_parmsD.use_backup = use_backup;
- X X_parmsD.is_color = is_color;
- X X_parmsD.fixed_size = fixed_size;
- X X_parmsD.fixed_width = fixed_width;
- X X_parmsD.fixed_height = fixed_height;
- X
- X current_dialog = X_parmsDialog;
- X XtPopup(pwidg, XtGrabNonexclusive);
- X xparms_help();
- X}
- X
- X
- X
- X/********** Dialog ***************/
- X/* Save / Load file
- X set read_mapwin_file, write_mapwin_file, mapwin_file
- X*/
- X
- Xvoid Save_Load_file(widget,closure,callData)
- X Widget widget;
- X caddr_t closure; /* Widget */
- X caddr_t callData;
- X{
- X Widget pshell, pwidg, pform;
- X static Arg shell_args[] = {
- X { XtNwidth, (XtArgVal) 100},
- X };
- X void saveload_select();
- X char *dlog_name = "saveload";
- X Arg Button_arg[10], Label_arg[10];
- X Cardinal NButton_args, NLabel_args;
- X static XtCallbackRec callback[2];
- X Widget twidge1, twidge2;
- X Widget bottom_widge, apply_widge, dismiss_widge;
- X
- X XtSetArg( Button_arg[0], XtNcallback, callback );
- X NButton_args = 1;
- X
- X /* Labels should be left justified, and not have borders */
- X XtSetArg( Label_arg[0], XtNborderWidth, 0);
- X XtSetArg( Label_arg[1], XtNjustify, XtJustifyLeft);
- X NLabel_args = 2;
- X
- X
- X /* Create shell and shell widget */
- X pshell = XtCreatePopupShell(dlog_name,
- X topLevelShellWidgetClass,
- X widget, shell_args, XtNumber(shell_args));
- X pwidg =
- X XtCreateManagedWidget(dlog_name, shellWidgetClass, pshell, NULL, 0);
- X
- X /* Create this dialog box */
- X pform =
- X XtCreateManagedWidget(dlog_name, formWidgetClass, pwidg, NULL, 0);
- X
- X
- X /* Create widgets in the box
- X Each has coordinates specified by either XtNfromHoriz and XtNfromVert
- X or XtNhorizDistance and XtNvertDistance
- X arg[1] sets horizontal position, arg[2] sets vertical
- X Each has a callback if appropriate
- X */
- X
- X
- X twidge1 =
- X XtCreateManagedWidget(
- X "Save or Load mapwin file, or write .starrc format file",
- X labelWidgetClass, pform,
- X Label_arg, NLabel_args);
- X
- X
- X
- X /* Get Mapwin file name */
- X twidge2 = Get_string("Mapwin file: ", twidge1, pform,
- X mapwin_file,
- X MAXPATHLEN, 0, 100);
- X twidge1 = twidge2;
- X
- X
- X if (read_mapwin_file)
- X save_load_state = READ_MAPWIN;
- X else if (write_mapwin_file)
- X save_load_state = WRITE_MAPWIN;
- X else
- X save_load_state = NO_MAPWIN;
- X
- X callback[0].callback = saveload_select;
- X callback[0].closure = (caddr_t) "saveload";
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, twidge1);
- X NButton_args = 3;
- X twidge2 =
- X XtCreateManagedWidget(save_load_str[save_load_state],
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X twidge1 = twidge2;
- X
- X /* Get .starrc file name */
- X twidge2 = Get_string("Write .starrc file:", twidge1, pform,
- X write_rcfile,
- X MAXPATHLEN, 0, 100);
- X twidge1 = twidge2;
- X
- X
- X bottom_widge = twidge1; /* The bottommost widget so far */
- X
- X
- X
- X callback[0].callback = save_load_apply;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, bottom_widge);
- X NButton_args = 3;
- X apply_widge =
- X XtCreateManagedWidget( " Apply ",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X callback[0].callback = do_dismiss;
- X callback[0].closure = (caddr_t)pwidg;
- X XtSetArg(Button_arg[1], XtNhorizDistance, 4);
- X XtSetArg(Button_arg[2], XtNfromVert, apply_widge);
- X dismiss_widge =
- X XtCreateManagedWidget( "Dismiss",
- X commandWidgetClass, pform, Button_arg, NButton_args);
- X
- X XtPopup(pwidg, XtGrabNonexclusive);
- X svld_help();
- X}
- X
- X
- X
- X/* Functions called by dialogs */
- X
- Xvoid invert_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X all_invert = !all_invert;
- X
- X XtSetArg( args[0], XtNlabel, all_invert ? " Inverted ": " Normal ");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid nomaglbls_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X nomaglbls = !nomaglbls;
- X
- X XtSetArg( args[0], XtNlabel,nomaglbls ?
- X "Don't Label stars with their magnitudes":
- X "Label stars with their magnitudes ");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid no_ra_grid_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X no_ra_grid = !no_ra_grid;
- X
- X XtSetArg( args[0], XtNlabel, no_ra_grid ? " No R.A. grid":"Show R.A. grid");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- Xvoid no_dec_grid_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X no_dec_grid = !no_dec_grid;
- X
- X XtSetArg( args[0], XtNlabel, no_dec_grid ?
- X " No Dec. grid":"Show Dec. grid");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid type_select(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X if (chart_type == THREEPART) {
- X XtSetArg( args[0], XtNlabel, "Full Page ");
- X chart_type = FULLPAGE;
- X } else {
- X XtSetArg( args[0], XtNlabel, "Main Map plus Thumbnail");
- X chart_type = THREEPART;
- X }
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid mode_select(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X char *cp;
- X
- X all_proj_mode++;
- X all_proj_mode %= (MAXPMODE+1);
- X if (all_proj_mode == 0) all_proj_mode = 1;
- X
- X cp = proj_mode_strings[all_proj_mode];
- X XtSetArg( args[0], XtNlabel, cp);
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid layer_select(widget, laynump, callData)
- X Widget widget;
- X caddr_t laynump;
- X caddr_t callData;
- X{
- X Arg args[1];
- X char *cp;
- X int i;
- X
- X i = *((int* ) laynump);
- X
- X all_layer[i]++;
- X all_layer[i] %= (MAXLAYNUM+1);
- X
- X cp = lay_strings[all_layer[i]];
- X XtSetArg( args[0], XtNlabel, cp);
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- X
- Xvoid ftype_select(widget, mapnump, callData)
- X Widget widget;
- X caddr_t mapnump;
- X caddr_t callData;
- X{
- X Arg args[1];
- X char *cp;
- X int i;
- X
- X i = *((int* ) mapnump);
- X
- X mapftypes[i]++;
- X mapftypes[i] %= (MAXFTYPES+1);
- X if (mapftypes[i] == 0) mapftypes[i] = 1;
- X
- X cp = filetype_strings[mapftypes[i]];
- X XtSetArg( args[0], XtNlabel, cp);
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid saveload_select(widget, namestr, callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X char *cp;
- X
- X save_load_state++;
- X save_load_state %= 3;
- X
- X
- X cp = save_load_str[save_load_state];
- X XtSetArg(args[0], XtNlabel, cp);
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- X
- Xvoid pp_select(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X char *cp;
- X
- X pp_status++;
- X pp_status %= 4;
- X
- X /* pp_status:
- X 0: flexible -> post_preview = post_landscape = fixed_size = FALSE;
- X 1: postscript size ->
- X post_preview = TRUE; post_landscape = fixed_size = FALSE;
- X 2: postscript landscape size ->
- X post_preview = TRUE; post_landscape = TRUE; fixed_size = FALSE;
- X 3: fixed size -> post_preview = post_landscape = FALSE; fixed_size = TRUE;
- X */
- X switch (pp_status) {
- X case 0:
- X post_preview = post_landscape = fixed_size = FALSE;
- X cp = "Use flexible window dimensions";
- X break;
- X case 1:
- X post_preview = TRUE; post_landscape = fixed_size = FALSE;
- X cp = "Use PostScript page dimensions";
- X break;
- X case 2:
- X post_preview = post_landscape = TRUE; fixed_size = FALSE;
- X cp = "Use PostScript landscape page ";
- X break;
- X case 3:
- X post_preview = FALSE; fixed_size = TRUE;
- X cp = " Use Fixed window dimensions ";
- X break;
- X default:
- X break;
- X }
- X
- X XtSetArg( args[0], XtNlabel, cp);
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- Xvoid use_back_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X use_backup = !use_backup;
- X
- X XtSetArg( args[0], XtNlabel, use_backup ?
- X "Use X Backing store":
- X " No X Backing store");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- Xvoid is_color_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X is_color = !is_color;
- X
- X XtSetArg( args[0], XtNlabel, is_color ?
- X " Color Display":
- X "Monochrome Display");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- X
- X
- Xvoid e_mapwins_toggle(widget,namestr,callData)
- X Widget widget;
- X caddr_t namestr;
- X caddr_t callData;
- X{
- X Arg args[1];
- X
- X edit_mapwins = !edit_mapwins;
- X
- X XtSetArg( args[0], XtNlabel, edit_mapwins ?
- X " Edit ":
- X "Don't Edit");
- X
- X XtSetValues(widget, args, (Cardinal)1);
- X}
- X
- END_OF_FILE
- if test 31373 -ne `wc -c <'starchart/sXawD.c.ab'`; then
- echo shar: \"'starchart/sXawD.c.ab'\" unpacked with wrong size!
- fi
- # end of 'starchart/sXawD.c.ab'
- fi
- echo shar: End of archive 21 \(of 32\).
- cp /dev/null ark21isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 32 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-
-
-