[BACK]Return to mac.trm CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gnuplot / term

Annotation of OpenXM_contrib/gnuplot/term/mac.trm, Revision 1.1.1.1

1.1       maekawa     1: /*
                      2:  * $Id: $
                      3:  *
                      4:  */
                      5:
                      6: /* GNUPLOT -- mac.trm */
                      7:
                      8: /* Macintosh graphics terminal */
                      9:
                     10: /*[
                     11:  * Copyright 1986 - 1993, 1998   Thomas Williams, Colin Kelley
                     12:  *
                     13:  * Permission to use, copy, and distribute this software and its
                     14:  * documentation for any purpose with or without fee is hereby granted,
                     15:  * provided that the above copyright notice appear in all copies and
                     16:  * that both that copyright notice and this permission notice appear
                     17:  * in supporting documentation.
                     18:  *
                     19:  * Permission to modify the software is granted, but not the right to
                     20:  * distribute the complete modified source code.  Modifications are to
                     21:  * be distributed as patches to the released version.  Permission to
                     22:  * distribute binaries produced by compiling modified sources is granted,
                     23:  * provided you
                     24:  *   1. distribute the corresponding source modifications from the
                     25:  *    released version in the form of a patch file along with the binaries,
                     26:  *   2. add special version identification to distinguish your version
                     27:  *    in addition to the base release version number,
                     28:  *   3. provide your name and address as the primary contact for the
                     29:  *    support of your modified version, and
                     30:  *   4. retain our contact information in regard to use of the base
                     31:  *    software.
                     32:  * Permission to distribute the released version of the source code along
                     33:  * with corresponding source modifications in the form of a patch file is
                     34:  * granted with same provisions 2 through 4 for binary distributions.
                     35:  *
                     36:  * This software is provided "as is" without express or implied warranty
                     37:  * to the extent permitted by applicable law.
                     38: ]*/
                     39:
                     40: #ifndef GOT_DRIVER_H
                     41: #include "driver.h"
                     42: #endif
                     43:
                     44: #ifdef TERM_REGISTER
                     45: register_term(mac)
                     46: #endif
                     47:
                     48: /******************************************************************************
                     49: *                                                                             *
                     50: * struct TERMENTRY {                                                          *
                     51: *     char *name;                                                             *
                     52: *     char *description;                                                      *
                     53: *     unsigned int xmax,ymax,v_char,h_char,v_tic,h_tic;                       *
                     54: *                                                                             *
                     55: *     void (*options) __PROTO((void));                                        *
                     56: *     void (*init) __PROTO((void));                                           *
                     57: *     void (*reset) __PROTO((void));                                          *
                     58: *     void (*text) __PROTO((void));                                           *
                     59: *     int (*scale) __PROTO((double, double));                                 *
                     60: *     void (*graphics) __PROTO((void));                                       *
                     61: *     void (*move) __PROTO((unsigned int, unsigned int));                     *
                     62: *     void (*vector) __PROTO((unsigned int, unsigned int));                   *
                     63: *     void (*linetype) __PROTO((int));                                        *
                     64: *     void (*put_text) __PROTO((unsigned int, unsigned int,char*));           *
                     65: *     // the following are optional. set term ensures they are not NULL       *
                     66: *     int (*text_angle) __PROTO((int));                                       *
                     67: *     int (*justify_text) __PROTO((enum JUSTIFY));                            *
                     68: *     void (*point) __PROTO((unsigned int, unsigned int,int));                *
                     69: *     void (*arrow) __PROTO((unsigned int, unsigned int, unsigned int, unsigned int,int)); *
                     70: *     int (*set_font) __PROTO((char *font));                                  *
                     71: *     void (*pointsize) __PROTO((double));                                    *
                     72: *     int flags;                                                              *
                     73: *     void (*suspend) __PROTO((void)); // called after one plot of multiplot  *
                     74: *     void (*resume) __PROTO((void));  // called before plots of multiplot    *
                     75: *     void (*fillbox) __PROTO((int style, unsigned int x1, unsigned int y1, unsigned)) // clear in multiplot mode *
                     76: *     void (*linewidth) __PROTO((double linewidth));                          *
                     77: * };                                                                          *
                     78: *                                                                             *
                     79: ******************************************************************************/
                     80:
                     81:
                     82:
                     83: #ifdef TERM_PROTO
                     84:
                     85: #define MAC_XMAX 494
                     86: #define MAC_YMAX 274
                     87: /*
                     88:  * #define MAC_XOFFSET (497-MAC_XMAX)
                     89:  *
                     90:  * //#define MAC_XLAST (MAC_XMAX - 1)
                     91:  * //#define MAC_YLAST (MAC_YMAX - 1)
                     92:  */
                     93:
                     94: #define MAC_VCHAR 12    /* monaco 9 point plain style */
                     95: #define MAC_HCHAR 6
                     96: #define MAC_VTIC 3
                     97: #define MAC_HTIC 3
                     98:
                     99: void MAC_init __PROTO(());
                    100: void MAC_graphics __PROTO(());
                    101: void MAC_text __PROTO(());
                    102: void MAC_linetype __PROTO((int linetype));
                    103: void MAC_move __PROTO((unsigned int x,unsigned int y));
                    104: void MAC_vector __PROTO((unsigned int x,unsigned int y));
                    105: void MAC_put_text __PROTO((unsigned int x,unsigned int y,char *str));
                    106: int  MAC_text_angle __PROTO((int angle));
                    107: int  MAC_justify_text __PROTO((enum JUSTIFY just));
                    108: void MAC_reset __PROTO(());
                    109: void MAC_options __PROTO(());
                    110: void MAC_suspend __PROTO(());
                    111: void MAC_resume __PROTO(());
                    112: int  MAC_setfont __PROTO((char *font));
                    113: #endif
                    114:
                    115: #ifdef TERM_HELP
                    116: START_HELP(mac)
                    117: "1 macintosh",
                    118: "?set terminal macintosh",
                    119: "?set term macintosh",
                    120: "?terminal macintosh",
                    121: "?term macintosh",
                    122: "?macintosh",
                    123: " Several options may be set in the 'macintosh' driver.",
                    124: "",
                    125: " Syntax:",
                    126: "      set terminal macintosh {singlewin | multiwin} {vertical | novertical} {size <width>, <height> | default}",
                    127: "",
                    128: " 'singlewin' limits the output to a single window and is useful for animations.",
                    129: " 'multiwin' allows multiple windows.",
                    130: " 'vertical' is only valid under the gx option. With this option, rotated text",
                    131: "     be drawn vertically. novertical turns this option off.",
                    132: "  size <width>, <height> overrides the graph size set in the preferences",
                    133: "     dialog until it is cleared with either 'set term mac size default'",
                    134: "     or 'set term mac default'.",
                    135: "",
                    136: "  'set term mac size default' sets the window size settings to those set in",
                    137: "     the preferences dialog.",
                    138: "",
                    139: "  'set term mac default' sets all options to their default values.",
                    140: "     Default values: nogx, multiwin, novertical.",
                    141: "",
                    142: "  If you generate graphs under the multiwin option and then switch to singlewin,",
                    143: "  the next plot command will cause one more window to be created. This new",
                    144: "  window will be reused as long as singlewin is in effect. If you switch back",
                    145: "  to multiwin, generate some graphs, and then switch to singlewin again, the",
                    146: "  orginal 'singlewin' window will be resused if it is still open. Otherwise",
                    147: "  a new 'singlewin' window will be created. The 'singlewin' window is not numbered.",
                    148: #endif
                    149:
                    150:
                    151: #ifndef TERM_PROTO_ONLY
                    152: #ifdef TERM_BODY
                    153: #endif
                    154: #ifdef TERM_TABLE
                    155:
                    156: TERM_TABLE_START(mac_driver)
                    157:     "macintosh", "Macintosh Graphic Window",
                    158:     MAC_XMAX, MAC_YMAX, MAC_VCHAR+1, MAC_HCHAR,
                    159:     MAC_VTIC, MAC_HTIC, MAC_options,MAC_init, MAC_reset,
                    160:     MAC_text, null_scale, MAC_graphics, MAC_move, MAC_vector,
                    161:     MAC_linetype, MAC_put_text, MAC_text_angle,
                    162:     MAC_justify_text, do_point, do_arrow,
                    163:     MAC_setfont, NULL, TERM_CAN_MULTIPLOT+TERM_BINARY,
                    164:     MAC_suspend, MAC_resume}
                    165: #undef LAST_TERM
                    166: #define LAST_TERM mac_driver
                    167: #endif
                    168: #endif /* TERM_PROTO_ONLY */
                    169:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>