r307: additions for plotfile
[ctsim.git] / libctgraphics / ezset.cpp
index 4e68671507c01eb752204459930e1340460931ac..ed396aad6efd9f460712a166798482d9be6f6f69 100644 (file)
 /*****************************************************************************
- **  FILE IDENTIFICATION
- **
- **      EZSET - Parameter control for EZPLOT          
- **
- **  This is part of the CTSim program
- **  Copyright (C) 1983-2000 Kevin Rosenberg
- **
- **  $Id: ezset.cpp,v 1.9 2000/12/06 15:17:51 kevin Exp $
- **
- **  This program is free software; you can redistribute it and/or modify
- **  it under the terms of the GNU General Public License (version 2) as
- **  published by the Free Software Foundation.
- **
- **  This program is distributed in the hope that it will be useful,
- **  but WITHOUT ANY WARRANTY; without even the implied warranty of
- **  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- **  GNU General Public License for more details.
- **
- **  You should have received a copy of the GNU General Public License
- **  along with this program; if not, write to the Free Software
- **  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- ******************************************************************************/
+**  FILE IDENTIFICATION
+**
+**      EZSET - Parameter control for EZPLOT           
+**
+**  This is part of the CTSim program
+**  Copyright (C) 1983-2000 Kevin Rosenberg
+**
+**  $Id: ezset.cpp,v 1.10 2000/12/20 14:39:09 kevin Exp $
+**
+**  This program is free software; you can redistribute it and/or modify
+**  it under the terms of the GNU General Public License (version 2) as
+**  published by the Free Software Foundation.
+**
+**  This program is distributed in the hope that it will be useful,
+**  but WITHOUT ANY WARRANTY; without even the implied warranty of
+**  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+**  GNU General Public License for more details.
+**
+**  You should have received a copy of the GNU General Public License
+**  along with this program; if not, write to the Free Software
+**  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+******************************************************************************/
 
 #include "ctsupport.h"
 #include "ezplot.h"
 #include "pol.h"
 
 bool EZPlot::ezset_initialized = false;
+\r
+\r
+bool\r
+EZPlot::ezset (const std::string& command)\r
+{\r
+       return ezset (command.c_str());\r
+}\r
 
-int 
-EZPlot::ezset (char *command)
+bool 
+EZPlot::ezset (const char const *command)
 {
-  if (! ezset_initialized) {
-    pol_init();
-    initkw();
-    pol_skpword ("please");
-    pol_skpword ("use");
-    pol_skpword ("are");
-    pol_skpword ("and");
-    pol_skpword ("is");
-    pol_skpword ("the");
-    pol_skpword ("equals");
-    pol_skpchar ("=");
-
-    pol_usefile (P_USE_STR,"");
-    set_inputline ("!eoc ,");
-    pol_reader ();
-    pol_closefile ();
-    ezset_initialized = true;
-  }
-  return (ezcmd (command));
+       if (! ezset_initialized) {
+               pol_init();
+               initkw();
+               pol_skpword ("please");
+               pol_skpword ("use");
+               pol_skpword ("are");
+               pol_skpword ("and");
+               pol_skpword ("is");
+               pol_skpword ("the");
+               pol_skpword ("equals");
+               pol_skpchar ("=");
+               
+               pol_usefile (P_USE_STR,"");
+               set_inputline ("!eoc ,");
+               pol_reader ();
+               pol_closefile ();
+               ezset_initialized = true;
+       }
+       return ezcmd (command);
 }
 
 bool 
-EZPlot::ezcmd (char *comm)
+EZPlot::ezcmd (const char const *comm)
 {
-  pol_usefile (P_USE_STR, "");
-  set_inputline (comm);
-
-  char str[MAXTOK+1];
-  int code;
-  bool retval = true;
-  if (! pol_usertok (str, &code)) {
-       sys_error(ERR_WARNING, "Illegal EZSET command: %s", str);
-    pol_reader();
-    retval = false;
-  }
-  else
-    retval = do_cmd (code);
-
-  pol_closefile();                     /* close input string file */
-  return (retval);
+       pol_usefile (P_USE_STR, "");
+       set_inputline (comm);
+       
+       char str[MAXTOK+1];
+       int code;
+       bool retval = true;
+       if (! pol_usertok (str, &code)) {
+               sys_error(ERR_WARNING, "Illegal EZSET command: %s", str);
+               pol_reader();
+               retval = false;
+       }
+       else
+               retval = do_cmd (code);
+       
+       pol_closefile();                        /* close input string file */
+       return (retval);
 }
 
 
 bool
 EZPlot::do_cmd (int lx)
 {
-  char str [1024];
-  char strIn [1024];
-  int n;
-  double f;
-
-  switch (lx) {
-  case S_TEXTSIZE:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      {
-       if (f >= 0.0 && f <= 1.0) {
-         v_textsize = f;
-         s_textsize = TRUE;
-       } else
-         s_textsize = FALSE;
-      }
-    break;
-  case S_REPLOT:
-    plot ();
-    break;
-  case S_CLEAR:
-    clearCurves ();
-    break;
-  case S_TITLE:
-    gettext (strIn, sizeof(strIn));
-    c_title = strIn;
-    break;
-  case S_LEGEND:
-    gettext (strIn, sizeof(strIn));
-    c_legend = strIn;
-    break;
-  case S_XLABEL:
-    gettext (strIn, sizeof(strIn));
-    c_xlabel = strIn;
-    break;
-  case S_YLABEL:
-    gettext (strIn, sizeof(strIn));
-    c_ylabel = strIn;
-    break;
-  case S_XCROSS:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
-      v_xcross = f;
-      s_xcross = TRUE;
-    } else
-      s_xcross = FALSE;
-    break;
-  case S_YCROSS:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
-      v_ycross = f;
-      s_ycross = TRUE;
-    } else
-      s_ycross = FALSE;
-    break;
-  case S_NOXAXIS:
-    o_xaxis = NOAXIS;
-    break;
-  case S_NOYAXIS:
-    o_yaxis = NOAXIS;
-    break;
-  case S_XLIN:
-    o_xaxis = LINEAR;
-    break;
-  case S_YLIN:
-    o_yaxis = LINEAR;
-    break;
-  case S_XLOG:
-    o_xaxis = LOG;
-    break;
-  case S_YLOG:
-    o_yaxis = LOG;
-    break;
-  case S_XAUTOSCALE:
-    s_xmin = FALSE;
-    s_xmax = FALSE;
-    break;
-  case S_YAUTOSCALE:
-    s_ymin = FALSE;
-    s_ymax = FALSE;
-    break;
-  case S_XMIN:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
-      v_xmin = f;
-      s_xmin = TRUE;
-    }
-    break;
-  case S_XMAX:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
-      v_xmax = f;
-      s_xmax = TRUE;
-    }
-    break;
-  case S_YMIN:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
-      v_ymin = f;
-      s_ymin = TRUE;
-    }
-    break;
-  case S_YMAX:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
-      v_ymax = f;
-      s_ymax = TRUE;
-    }
-    break;
-  case S_SOLID:
-    o_linestyle = SGP::LS_SOLID;
-    break;
-  case S_DASH:
-    if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
-      if (n == 1)
-       o_linestyle = SGP::LS_DASH1;
-      else if (n == 2)
-       o_linestyle = SGP::LS_DASH2;
-      else if (n == 3)
-       o_linestyle = SGP::LS_DASH3;
-      else if (n == 4)
-       o_linestyle = SGP::LS_DASH4;
-      else
-       o_linestyle = SGP::LS_DASH1;
-    } else
-      o_linestyle = SGP::LS_DASH1;
-    break;
-  case S_NOLINE:
-    o_linestyle = SGP::LS_NOLINE;
-    break;
-  case S_PEN:
-  case S_COLOR:
-    if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
-      {
-       if (n >= 0)
-         o_color = n;
-       else
-         bad_option("The color you picked");
-      }
-    break;
-  case S_BOX:
-    o_box = TRUE;
-    break;
-  case S_NOBOX:
-    o_box = FALSE;
-    break;
-  case S_GRID:
-    o_grid = TRUE;
-    break;
-  case S_NOGRID:
-    o_grid = FALSE;
-    break;
-  case S_XLENGTH:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      if (f > 0.0 && f <= 1.0)
-       o_xlength = f;
-    break;
-  case S_YLENGTH:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      if (f > 0.0 && f <= 1.0)
-       o_ylength = f;
-    break;
-  case S_XPORIGIN:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      if (f >= 0.0 && f < 1.0)
-       o_xporigin = f;
-    break;
-  case S_YPORIGIN:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      if (f >= 0.0 && f < 1.0)
-       o_yporigin = f;
-    break;
-  case S_TAG:
-    if (pol_word("no", 2) == TRUE)
-      o_tag = FALSE;
-    else if (pol_word("off", 2) == TRUE)
-      o_tag = FALSE;
-    else
-      o_tag = TRUE;
-    break;
-  case S_LEGENDBOX:
-    if (pol_word("inside", 2) == TRUE)
-      o_legendbox = INSIDE;
-    else if (pol_word("outside", 3) == TRUE)
-      o_legendbox = OUTSIDE;
-    else if (pol_word("none",2) == TRUE)
-      o_legendbox = NOLEGEND;
-    else {
-      gettext (str, MAXTOK);
-      bad_option(str);
-    }
-    break;
-  case S_XLEGEND:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      {
-       if (f >= 0.0 && f < 1.0) {
-         v_xlegend = f;
-         s_xlegend = TRUE;
-       }
-       else
-         s_xlegend = FALSE;
-      }
-    break;
-  case S_YLEGEND:
-    if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
-      {
-       if (f >= 0.0 && f < 1.0) {
-         v_ylegend = f;
-         s_ylegend = TRUE;
-       }
-       else
-         s_ylegend = FALSE;
-      }
-    break;
-  case S_SYMBOL:
-    if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
-      if (n > 0 && n <= MAXSYMBOL)
-       o_symbol = n;
-      else
-       o_symbol = 1;
-    } else {
-      if (pol_word("every",5) == TRUE) {
-       if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
-         if (n > 0)
-           o_symfreq = n;
-         else
-           o_symfreq = 1;
-       }
-      } else if (pol_word ("none",4) == TRUE) {
-       o_symbol = -1;
-      }
-    }
-    break;
-  case S_XTICKS:
-    if (pol_usertok(str,&lx) == FALSE)
-      break;
-    if (lx == S_ABOVE)
-      o_xticks = ABOVE;
-    else if (lx == S_BELOW)
-      o_xticks = BELOW;
-    else if (lx == S_NOLABEL)
-      o_xtlabel = FALSE;
-    else if (lx == S_LABEL)
-      o_xtlabel = TRUE;
-    else if (lx == S_MAJOR) {
-      if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
-       if (n > 1 && n < 100)
-         o_xmajortick = n;
-    } else if (lx == S_MINOR)
-      if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
-       if (n >= 0 && n < 100)
-         o_xminortick = n;
-    break;
-  case S_YTICKS:
-    if (pol_usertok(str,&lx) == FALSE)
-      break;
-    if (lx == S_RIGHT)
-      o_yticks = RIGHT;
-    else if (lx == S_LEFT)
-      o_yticks = LEFT;
-    else if (lx == S_NOLABEL)
-      o_ytlabel = FALSE;
-    else if (lx == S_LABEL)
-      o_ytlabel = TRUE;
-    else if (lx == S_MAJOR) {
-      if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
-       if (n > 1 && n < 100)
-         o_ymajortick = n;
-    } else if (lx == S_MINOR)
-      if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
-       if (n >= 0 && n < 100)
-         o_yminortick = n;
-    break;
-  case S_LXFRAC:
-    if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
-      if (n >= 0) {
-       v_lxfrac = n;
-       s_lxfrac = TRUE;
-      }
-    } else
-      s_lxfrac = FALSE;
-    break;
-  case S_LYFRAC:
-    if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
-      if (n >= 0) {
-       v_lyfrac = n;
-       s_lyfrac = TRUE;
-      }
-    } else
-      s_lyfrac = FALSE;
-    break;
-    break;
-  default:
-    fprintf (stderr, "Unimplemented EZPLOT command\n");
-    break;
+       char str [1024];
+       char strIn [1024];
+       int n;
+       double f;
+       
+       switch (lx) {
+       case S_TEXTSIZE:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+               {
+                       if (f >= 0.0 && f <= 1.0) {
+                               v_textsize = f;
+                               s_textsize = TRUE;
+                       } else
+                               s_textsize = FALSE;
+               }
+               break;
+       case S_REPLOT:
+               plot ();
+               break;
+       case S_CLEAR:
+               clearCurves ();
+               break;
+       case S_TITLE:
+               gettext (strIn, sizeof(strIn));
+               c_title = strIn;
+               break;
+       case S_LEGEND:
+               gettext (strIn, sizeof(strIn));
+               c_legend = strIn;
+               break;
+       case S_XLABEL:
+               gettext (strIn, sizeof(strIn));
+               c_xlabel = strIn;
+               break;
+       case S_YLABEL:
+               gettext (strIn, sizeof(strIn));
+               c_ylabel = strIn;
+               break;
+       case S_XCROSS:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
+                       v_xcross = f;
+                       s_xcross = TRUE;
+               } else
+                       s_xcross = FALSE;
+               break;
+       case S_YCROSS:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
+                       v_ycross = f;
+                       s_ycross = TRUE;
+               } else
+                       s_ycross = FALSE;
+               break;
+       case S_NOXAXIS:
+               o_xaxis = NOAXIS;
+               break;
+       case S_NOYAXIS:
+               o_yaxis = NOAXIS;
+               break;
+       case S_XLIN:
+               o_xaxis = LINEAR;
+               break;
+       case S_YLIN:
+               o_yaxis = LINEAR;
+               break;
+       case S_XLOG:
+               o_xaxis = LOG;
+               break;
+       case S_YLOG:
+               o_yaxis = LOG;
+               break;
+       case S_XAUTOSCALE:
+               s_xmin = FALSE;
+               s_xmax = FALSE;
+               break;
+       case S_YAUTOSCALE:
+               s_ymin = FALSE;
+               s_ymax = FALSE;
+               break;
+       case S_XMIN:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
+                       v_xmin = f;
+                       s_xmin = TRUE;
+               }
+               break;
+       case S_XMAX:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
+                       v_xmax = f;
+                       s_xmax = TRUE;
+               }
+               break;
+       case S_YMIN:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
+                       v_ymin = f;
+                       s_ymin = TRUE;
+               }
+               break;
+       case S_YMAX:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE) {
+                       v_ymax = f;
+                       s_ymax = TRUE;
+               }
+               break;
+       case S_SOLID:
+               o_linestyle = SGP::LS_SOLID;
+               break;
+       case S_DASH:
+               if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
+                       if (n == 1)
+                               o_linestyle = SGP::LS_DASH1;
+                       else if (n == 2)
+                               o_linestyle = SGP::LS_DASH2;
+                       else if (n == 3)
+                               o_linestyle = SGP::LS_DASH3;
+                       else if (n == 4)
+                               o_linestyle = SGP::LS_DASH4;
+                       else
+                               o_linestyle = SGP::LS_DASH1;
+               } else
+                       o_linestyle = SGP::LS_DASH1;
+               break;
+       case S_NOLINE:
+               o_linestyle = SGP::LS_NOLINE;
+               break;
+       case S_PEN:
+       case S_COLOR:
+               if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
+               {
+                       if (n >= 0)
+                               o_color = n;
+                       else
+                               bad_option("The color you picked");
+               }
+               break;
+       case S_BOX:
+               o_box = TRUE;
+               break;
+       case S_NOBOX:
+               o_box = FALSE;
+               break;
+       case S_GRID:
+               o_grid = TRUE;
+               break;
+       case S_NOGRID:
+               o_grid = FALSE;
+               break;
+       case S_XLENGTH:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+                       if (f > 0.0 && f <= 1.0)
+                               o_xlength = f;
+                       break;
+       case S_YLENGTH:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+                       if (f > 0.0 && f <= 1.0)
+                               o_ylength = f;
+                       break;
+       case S_XPORIGIN:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+                       if (f >= 0.0 && f < 1.0)
+                               o_xporigin = f;
+                       break;
+       case S_YPORIGIN:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+                       if (f >= 0.0 && f < 1.0)
+                               o_yporigin = f;
+                       break;
+       case S_TAG:
+               if (pol_word("no", 2) == TRUE)
+                       o_tag = FALSE;
+               else if (pol_word("off", 2) == TRUE)
+                       o_tag = FALSE;
+               else
+                       o_tag = TRUE;
+               break;
+       case S_LEGENDBOX:
+               if (pol_word("inside", 2) == TRUE)
+                       o_legendbox = INSIDE;
+               else if (pol_word("outside", 3) == TRUE)
+                       o_legendbox = OUTSIDE;
+               else if (pol_word("none",2) == TRUE)
+                       o_legendbox = NOLEGEND;
+               else {
+                       gettext (str, MAXTOK);
+                       bad_option(str);
+               }
+               break;
+       case S_XLEGEND:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+               {
+                       if (f >= 0.0 && f < 1.0) {
+                               v_xlegend = f;
+                               s_xlegend = TRUE;
+                       }
+                       else
+                               s_xlegend = FALSE;
+               }
+               break;
+       case S_YLEGEND:
+               if (pol_float (&f, TT_REAL, FALSE, 0.0, 0.0) == TRUE)
+               {
+                       if (f >= 0.0 && f < 1.0) {
+                               v_ylegend = f;
+                               s_ylegend = TRUE;
+                       }
+                       else
+                               s_ylegend = FALSE;
+               }
+               break;
+       case S_SYMBOL:
+               if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
+                       if (n > 0 && n <= MAXSYMBOL)
+                               o_symbol = n;
+                       else
+                               o_symbol = 1;
+               } else {
+                       if (pol_word("every",5) == TRUE) {
+                               if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
+                                       if (n > 0)
+                                               o_symfreq = n;
+                                       else
+                                               o_symfreq = 1;
+                               }
+                       } else if (pol_word ("none",4) == TRUE) {
+                               o_symbol = -1;
+                       }
+               }
+               break;
+       case S_XTICKS:
+               if (pol_usertok(str,&lx) == FALSE)
+                       break;
+               if (lx == S_ABOVE)
+                       o_xticks = ABOVE;
+               else if (lx == S_BELOW)
+                       o_xticks = BELOW;
+               else if (lx == S_NOLABEL)
+                       o_xtlabel = FALSE;
+               else if (lx == S_LABEL)
+                       o_xtlabel = TRUE;
+               else if (lx == S_MAJOR) {
+                       if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
+                               if (n > 1 && n < 100)
+                                       o_xmajortick = n;
+               } else if (lx == S_MINOR)
+                       if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
+                               if (n >= 0 && n < 100)
+                                       o_xminortick = n;
+                               break;
+       case S_YTICKS:
+               if (pol_usertok(str,&lx) == FALSE)
+                       break;
+               if (lx == S_RIGHT)
+                       o_yticks = RIGHT;
+               else if (lx == S_LEFT)
+                       o_yticks = LEFT;
+               else if (lx == S_NOLABEL)
+                       o_ytlabel = FALSE;
+               else if (lx == S_LABEL)
+                       o_ytlabel = TRUE;
+               else if (lx == S_MAJOR) {
+                       if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
+                               if (n > 1 && n < 100)
+                                       o_ymajortick = n;
+               } else if (lx == S_MINOR)
+                       if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE)
+                               if (n >= 0 && n < 100)
+                                       o_yminortick = n;
+                               break;
+       case S_LXFRAC:
+               if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
+                       if (n >= 0) {
+                               v_lxfrac = n;
+                               s_lxfrac = TRUE;
+                       }
+               } else
+                       s_lxfrac = FALSE;
+               break;
+       case S_LYFRAC:
+               if (pol_integer (&n, TT_REAL, FALSE, 0, 0) == TRUE) {
+                       if (n >= 0) {
+                               v_lyfrac = n;
+                               s_lyfrac = TRUE;
+                       }
+               } else
+                       s_lyfrac = FALSE;
+               break;
+               break;
+       default:
+               fprintf (stderr, "Unimplemented EZPLOT command\n");
+               break;
   }
-
+  
   pol_reader ();
   return (true);
 }
@@ -376,7 +383,7 @@ EZPlot::do_cmd (int lx)
 void 
 EZPlot::bad_option (char *opt)
 {
-  sys_error (ERR_WARNING, "INVALID option: %s", opt);
+       sys_error (ERR_WARNING, "INVALID option: %s", opt);
 }
 
 /*----------------------------------------------------------------------*/
@@ -384,93 +391,93 @@ EZPlot::bad_option (char *opt)
 /*----------------------------------------------------------------------*/
 
 static struct key {
-  char *keyword;
-  int code;
+       char *keyword;
+       int code;
 } keytab[] = {
     {"solid",  S_SOLID},
        {"dash", S_DASH},
-           {"noline",  S_NOLINE},
-               {"black",       S_BLACK},
-                   {"red",             S_RED},
-                       {"blue",                S_BLUE},
-                           {"green",   S_GREEN},
+       {"noline",      S_NOLINE},
+       {"black",       S_BLACK},
+       {"red",         S_RED},
+       {"blue",                S_BLUE},
+       {"green",       S_GREEN},
                                {"pen",         S_PEN},
-                                   {"symbol",  S_SYMBOL},
-                                       {"every",       S_EVERY},    
-                                           {"none",            S_NONE},  
-                       {"legend",      S_LEGEND},
-                         {"xlegend",   S_XLEGEND},
-                           {"ylegend", S_YLEGEND},
-
-                             {"xlin",          S_XLIN},
+       {"symbol",      S_SYMBOL},
+       {"every",       S_EVERY},    
+       {"none",                S_NONE},  
+       {"legend",      S_LEGEND},
+       {"xlegend",     S_XLEGEND},
+       {"ylegend",     S_YLEGEND},
+       
+       {"xlin",                S_XLIN},
                                {"ylin",                S_YLIN},
-                                 {"xlog",              S_XLOG},
-                                   {"ylog",            S_YLOG},
-                                     {"xlabel",        S_XLABEL},
-                                       {"ylabel",      S_YLABEL},
-                                         {"xlength",   S_XLENGTH},
-                                           {"ylength", S_YLENGTH},
-
-                                             {"xticks",        S_XTICKS},
-                                               {"yticks",      S_YTICKS},
-                                                 {"above",     S_ABOVE},
-                                                   {"label",   S_LABEL},
-                                                     {"below", S_BELOW},
-                                                       {"nolabel",     S_NOLABEL},
-                                                         {"right",     S_RIGHT},
-                                                           {"left",            S_LEFT},
-
-                                                             {"xautoscale",    S_XAUTOSCALE},
-                                                               {"yautoscale",  S_YAUTOSCALE},
-                                                                 {"xmin",              S_XMIN},
-                                                                   {"ymin",            S_YMIN},
-                                                                     {"xmax",          S_XMAX},
-                                                                       {"ymax",                S_YMAX},
-                                                                         {"lxfrac",    S_LXFRAC},
-                                                                           {"lyfrac",  S_LYFRAC},
-                                                                             {"xcross",        S_XCROSS},
-                                                                               {"ycross",      S_YCROSS},
-                                                                                 {"noxaxis",   S_NOXAXIS},
-                                                                                   {"noyaxis", S_NOYAXIS},
-                                                                                     {"xporigin",      S_XPORIGIN},
-                                                                                       {"yporigin",    S_YPORIGIN},
-                                                                                         {"title",     S_TITLE},
-                                                                                           {"xtitle",  S_XTITLE},
-                                                                                             {"ytitle",        S_YTITLE},
-
-                                                                                               {"replot",      S_REPLOT},
-                                                                                                 {"clear",     S_CLEAR},
-                                                                                                   {"store",   S_STORE},
-                                                                                                     {"restore",       S_RESTORE},
-                                                                                                           {"amark",   S_AMARK},
-                                                                                                               {"units",       S_UNITS},
-                                                                                                                 {"inches",    S_INCHES},
-                                                                                                                   {"user",            S_USER},
-
-                                                                                                                     {"data",          S_DATA},
-                                                                                                                       {"help",                S_HELP},
-                                                                                                                         {"exit",              S_EXIT},
-
-                                                                                                                           {"box",             S_BOX},
-                                                                                                                             {"nobox", S_NOBOX},
-                                                                                                                               {"grid",                S_GRID},
-                                                                                                                                 {"nogrid",    S_NOGRID},
-                                                                                                                                   {"major",   S_MAJOR},
-                                                                                                                                     {"minor", S_MINOR},
-                                                                                                                                       {"color",       S_COLOR},
-                                                                                                                                         {"legendbox", S_LEGENDBOX},
-
-                                                                                                                                               {"no",          S_NO},
-
-                                                                                                                                                 {"textsize",  S_TEXTSIZE},
-                                                                                                                                                       };
+       {"xlog",                S_XLOG},
+       {"ylog",                S_YLOG},
+       {"xlabel",      S_XLABEL},
+       {"ylabel",      S_YLABEL},
+       {"xlength",     S_XLENGTH},
+       {"ylength",     S_YLENGTH},
+       
+       {"xticks",      S_XTICKS},
+       {"yticks",      S_YTICKS},
+       {"above",       S_ABOVE},
+       {"label",       S_LABEL},
+       {"below",       S_BELOW},
+       {"nolabel",     S_NOLABEL},
+       {"right",       S_RIGHT},
+       {"left",                S_LEFT},
+       
+       {"xautoscale",  S_XAUTOSCALE},
+       {"yautoscale",  S_YAUTOSCALE},
+       {"xmin",                S_XMIN},
+       {"ymin",                S_YMIN},
+       {"xmax",                S_XMAX},
+       {"ymax",                S_YMAX},
+       {"lxfrac",      S_LXFRAC},
+       {"lyfrac",      S_LYFRAC},
+       {"xcross",      S_XCROSS},
+       {"ycross",      S_YCROSS},
+       {"noxaxis",     S_NOXAXIS},
+       {"noyaxis",     S_NOYAXIS},
+       {"xporigin",    S_XPORIGIN},
+       {"yporigin",    S_YPORIGIN},
+       {"title",       S_TITLE},
+       {"xtitle",      S_XTITLE},
+       {"ytitle",      S_YTITLE},
+       
+       {"replot",      S_REPLOT},
+       {"clear",       S_CLEAR},
+       {"store",       S_STORE},
+       {"restore",     S_RESTORE},
+       {"amark",       S_AMARK},
+       {"units",       S_UNITS},
+       {"inches",      S_INCHES},
+       {"user",                S_USER},
+       
+       {"data",                S_DATA},
+       {"help",                S_HELP},
+       {"exit",                S_EXIT},
+       
+       {"box",         S_BOX},
+       {"nobox",       S_NOBOX},
+       {"grid",                S_GRID},
+       {"nogrid",      S_NOGRID},
+       {"major",       S_MAJOR},
+       {"minor",       S_MINOR},
+       {"color",       S_COLOR},
+       {"legendbox",   S_LEGENDBOX},
+       
+       {"no",          S_NO},
+       
+       {"textsize",    S_TEXTSIZE},
+};
 
 static const unsigned int NKEYS=(sizeof(keytab) / sizeof(struct key));
 
 void 
 EZPlot::initkw(void)
 {
-  for (unsigned int i = 0; i < NKEYS; i++)
-    if (! pol_install(keytab[i].keyword, keytab[i].code))
-      sys_error(ERR_SEVERE, "error installing ezset keywords [initkw]");
+       for (unsigned int i = 0; i < NKEYS; i++)
+               if (! pol_install(keytab[i].keyword, keytab[i].code))
+                       sys_error(ERR_SEVERE, "error installing ezset keywords [initkw]");
 }