1022 lines
36 KiB
Plaintext
1022 lines
36 KiB
Plaintext
#ifndef lint
|
|
static char sccsid[] = "@(#)llib-lcgi 1.1 94/10/31 Copyr 1985-9 Sun Micro";
|
|
#endif
|
|
|
|
/*
|
|
* Copyright (c) 1985, 1986, 1987, 1988, 1989 by Sun Microsystems, Inc.
|
|
*/
|
|
|
|
/* LINTLIBRARY */
|
|
/* For libcgi.a */
|
|
|
|
#include <cgipw.h>
|
|
#include <suntool/canvas.h>
|
|
|
|
Cerror open_cgi()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror open_vws(name,devdd)
|
|
Cint *name; /* name assigned to cgi view surface */
|
|
Cvwsurf *devdd; /* view surface descriptor */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror activate_vws(name)
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror deactivate_vws(name)
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror close_vws(name)
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror close_cgi()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_device_identification (name,devid)
|
|
Cint name; /* device name */
|
|
Cchar *devid; /* Workstation type */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_device_class(output,input)
|
|
Cint *output,*input; /* output and input abilities */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_physical_coordinate_system
|
|
(name,xbase,ybase,xext,yext,xunits,yunits)
|
|
Cint name; /* name assigned to cgi view surface */
|
|
Cint *xbase,*ybase; /* base coordinates */
|
|
Cint *xext,*yext; /* number of pixels in each direction */
|
|
Cfloat *xunits,*yunits; /* number of pixels per mm. */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_output_function_set (level,support)
|
|
Cint level; /* level of output */
|
|
Csuptype *support; /* amount of support */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_vdc_type(type)
|
|
Cvdctype *type; /* type of vdc space */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_output_capabilities (first,num,list)
|
|
Cint first; /* first elements to be returned */
|
|
Cint num; /* number of elements to be returned */
|
|
Cchar *list[]; /* returned list */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_input_capabilities (valid,table)
|
|
Clogical *valid; /* device state */
|
|
Ccgidesctab *table; /* CGI input description table */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_lid_capabilities (devclass,devnum,valid,table)
|
|
Cdevoff devclass;
|
|
Cint devnum; /* device type, device number */
|
|
Clogical *valid; /* device supported at all */
|
|
Cliddescript *table; /* table of descriptors */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_trigger_capabilities(trigger,valid,tdis)
|
|
Cint trigger; /* trigger number */
|
|
Clogical *valid; /* trigger supported at all */
|
|
Ctrigdis *tdis; /* trigger description table */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror vdc_extent (c1, c2)
|
|
Ccoor *c1; /* bottom left-hand corner of VDC space */
|
|
Ccoor *c2; /* top right-hand corner of VDC space */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror device_viewport(name,c1,c2)
|
|
Cint name; /* name assigned to cgi view surface */
|
|
Ccoor *c1; /* bottom left-hand corner */
|
|
Ccoor *c2; /* top right-hand corner */
|
|
/* of view surface to map device onto (expressed in pixels) */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror clip_indicator(cflag)
|
|
Cclip cflag; /* CLIP_RECTANGLE, VDC_EXTENT, or OFF */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror clip_rectangle(xmin,xmax,ymin,ymax)
|
|
Cint xmin,xmax,ymin,ymax; /* bottom left-hand corner
|
|
and top right-hand corner of clipping rectangle */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror hard_reset()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror reset_to_defaults()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror clear_view_surface (name,defflag,index)
|
|
Cint name; /* name assigned to cgi view surface */
|
|
Cflag defflag; /* default color flag */
|
|
Cint index; /* color of cleared screen */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror clear_control(soft,hard,intern,extent)
|
|
Cacttype soft,hard; /* soft-copy action, hard-copy action */
|
|
Cacttype intern; /* internal action */
|
|
Cexttype extent; /* clear extent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_error_warning_mask(action)
|
|
Cerrtype action; /* Action on receipt of an error */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_up_sigwinch(name, sig_function)
|
|
Cint name;
|
|
Cint (*sig_function)(); /* signal handling function */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror polyline(polycoors)
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror disjoint_polyline(polycoors)
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror polymarker(polycoors)
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror polygon(polycoors)
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror partial_polygon(polycoors, cflag)
|
|
Ccoorlist *polycoors; /* list of points */
|
|
Ccflag cflag; /* add to point buffer */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror rectangle(rbc, ltc)
|
|
Ccoor *rbc,*ltc; /* corners defining rectangle */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror circle(c1, rad)
|
|
Ccoor *c1; /* center */
|
|
Cint rad; /* radius */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror circular_arc_center(c1, c2x, c2y, c3x, c3y, rad)
|
|
Ccoor *c1; /* center */
|
|
Cint c2x,c2y,c3x,c3y; /* endpoints */
|
|
Cint rad; /* radius */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror circular_arc_center_close(c1, c2x, c2y, c3x, c3y, rad, close)
|
|
Ccoor *c1; /* center */
|
|
Cint c2x,c2y,c3x,c3y; /* endpoints */
|
|
Cint rad; /* radius */
|
|
Cclosetype close; /* PIE or CHORD */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror circular_arc_3pt(c1, c2, c3)
|
|
Ccoor *c1,*c2,*c3; /* starting, intermediate, and ending points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror circular_arc_3pt_close(c1, c2, c3, close)
|
|
Ccoor *c1, *c2, *c3; /* starting, intermediate, and ending points */
|
|
Cclosetype close; /* PIE or CHORD */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror ellipse (c1, majx,miny)
|
|
Ccoor *c1; /* center */
|
|
Cint majx,miny; /* enpoints of x and x axes */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror elliptical_arc(c1, sx, sy, ex, ey, majx, miny)
|
|
Ccoor *c1; /* center */
|
|
Cint sx,sy; /* starting point of arc */
|
|
Cint ex,ey; /* ending point of arc */
|
|
Cint majx,miny; /* endpoints of major and minor axes */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror elliptical_arc_close(c1, sx, sy, ex, ey, majx, miny, close)
|
|
Ccoor *c1; /* center */
|
|
Cint sx,sy; /* starting point of arc */
|
|
Cint ex,ey; /* ending point of arc */
|
|
Cint majx,miny; /* enpoints of major and minor axes */
|
|
Cclosetype close; /* PIE or CHORD */
|
|
{ static Cerror err; return err; }
|
|
|
|
/* text routines use a Ccoor pointer,
|
|
* but the manual accidentally said it is a Ccoor
|
|
*/
|
|
Cerror text(c1, tstring)
|
|
Ccoor *c1; /* starting point of text (in VDC Space) */
|
|
Cchar *tstring; /* text */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror vdm_text(c1, flag, tstring)
|
|
Ccoor *c1; /* starting point of text (in VDC Space) */
|
|
Ctextfinal flag; /* final text for alignment */
|
|
Cchar *tstring; /* text */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror append_text(flag, tstring)
|
|
Ctextfinal flag; /* final text for alignment */
|
|
Cchar *tstring; /* text */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_text_extent(tstring, nextchar, concat, lleft, uleft, uright)
|
|
Cchar *tstring; /* text */
|
|
Cchar nextchar; /* last character */
|
|
Ccoor *concat; /* concatenation point */
|
|
Ccoor *lleft,*uleft,*uright; /* coordinates of text bounding box */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cell_array(p, q, r, dx, dy, colorind)
|
|
Ccoor *p, *q, *r; /* corners of parallelogram (in VDC Space) */
|
|
Cint dx,dy; /* dimensions of color array */
|
|
Cint *colorind; /* array of color values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror pixel_array (pcell,m,n,colorind)
|
|
Ccoor *pcell; /* base of array in VDC Space */
|
|
Cint m,n; /* dimensions of color array in screen space */
|
|
Cint *colorind; /* array of color values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror bitblt_source_array(pixsource, xo, yo, xe, ye, pixtarget, xt, yt, name)
|
|
Cpixrect *pixsource,*pixtarget; /* source and target pixel arrays */
|
|
Cint xo,yo; /* coordinates of source pixel array (in VDC Space) */
|
|
Cint xe,ye; /* dimensions of source pixel array (in screen space) */
|
|
Cint xt,yt; /* coordinates of target pixel array (in VDC Space) */
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror bitblt_pattern_array(pixpat, px, py, pixtarget, rx, ry,
|
|
ox, oy, dx, dy, name)
|
|
Cpixrect *pixpat; /* pattern source array */
|
|
Cint px,py; /* pattern extent */
|
|
Cpixrect *pixtarget; /* destination pattern array */
|
|
Cint rx,ry; /* pattern reference point */
|
|
Cint ox,oy; /* destination origin */
|
|
Cint dx,dy; /* destination extent */
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror bitblt_patterned_source_array(pixpat, px, py, pixtarget, rx, ry,
|
|
pixsource, sx, sy, ox, oy, dx, dy, name)
|
|
Cpixrect *pixpat; /* pattern source array */
|
|
Cint px,py; /* pattern extent */
|
|
Cpixrect *pixsource; /* source array */
|
|
Cint sx,sy; /* source origin */
|
|
Cpixrect *pixtarget; /* destination pattern array */
|
|
Cint rx,ry; /* pattern reference point */
|
|
Cint ox,oy; /* destination origin */
|
|
Cint dx,dy; /* destination extent */
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_cell_array(name, p, q, r, dx, dy, colorind)
|
|
Cint name; /* view surface name */
|
|
Ccoor *p, *q, *r; /* corners of parallelogram (in VDC Space) */
|
|
Cint dx,dy; /* dimensions of color array */
|
|
Cint *colorind; /* array of color values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_pixel_array(p, m, n, colorind, name)
|
|
Ccoor *p; /* base of array in VDC Space */
|
|
Cint m,n; /* dimensions of color array in screen space */
|
|
Cint *colorind; /* array of color values */
|
|
Cint name; /* view surface name */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cpixrect *inquire_device_bitmap(name)
|
|
Cint name; /* name assigned to cgi view surface */
|
|
{ return (Cpixrect *) 0; }
|
|
|
|
Cerror inquire_bitblt_alignments(base, width, px, py, maxpx, maxpy, name)
|
|
Cint *base; /* bitmap base alignment */
|
|
Cint *width; /* width alignment */
|
|
Cint *px,*py; /* pattern extent alignment */
|
|
Cint *maxpx,*maxpy; /* maximum pattern size */
|
|
Cint name; /* name assigned to cgi view surface */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_drawing_mode(visibility, source, destination, combination)
|
|
Cbmode visibility; /* transparent or opaque */
|
|
Cbitmaptype source; /* NOT source bits */
|
|
Cbitmaptype destination; /* NOT destination bits */
|
|
Ccombtype combination; /* combination rules */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_global_drawing_mode(combination)
|
|
Ccombtype combination; /* combination rules */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_drawing_mode(visibility, source, destination, combination)
|
|
Cbmode *visibility; /* transparent or opaque */
|
|
Cbitmaptype *source; /* NOT source bits */
|
|
Cbitmaptype *destination; /* NOT destination bits */
|
|
Ccombtype *combination; /* combination rules */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_aspect_source_flags(flags)
|
|
Cflaglist *flags; /* list of ASFs */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror define_bundle_index(index,entry)
|
|
Cint index; /* entry in attribute environment table */
|
|
Cbunatt *entry; /* new attribute values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror polyline_bundle_index(index)
|
|
Cint index; /* polyline bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror line_type (ttyp)
|
|
Clintype ttyp; /* style of line */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror line_endstyle (ttyp)
|
|
Cendstyle ttyp; /* style of line */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror line_width_specification_mode(mode)
|
|
Cspecmode mode; /* pixels or percent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror line_width(index)
|
|
Cfloat index; /* line width */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror line_color(index)
|
|
Cint index; /* line color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror polymarker_bundle_index(index)
|
|
Cint index; /* polymarker bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror marker_type (ttyp)
|
|
Cmartype ttyp; /* style of marker */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror marker_size_specification_mode(mode)
|
|
Cspecmode mode; /* pixels or percent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror marker_size(index)
|
|
Cfloat index; /* marker size */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror marker_color(index)
|
|
Cint index; /* marker color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror fill_area_bundle_index(index)
|
|
Cint index; /* fill area bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror interior_style(istyle,perimvis)
|
|
Cintertype istyle; /* fill style */
|
|
Cflag perimvis; /* perimeter visibility */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror fill_color(color)
|
|
Cint color; /* color for solid object fill */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror hatch_index(index)
|
|
Cint index; /* index in the pattern table bound to HATCH */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror pattern_index(index)
|
|
Cint index; /* index in the pattern table bound to PATTERN */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror pattern_table(index,m,n,colorind)
|
|
Cint index; /* entry in table */
|
|
Cint m,n; /* number of rows and columns */
|
|
Cint *colorind; /* array containing pattern */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror pattern_with_fill_color(flag) /* Nonstandard function */
|
|
Cflag flag; /* ON: use fill color where nonzero */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror pattern_reference_point(begin)
|
|
Ccoor *begin;
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror pattern_size(dx,dy)
|
|
Cint dx,dy; /* size of pattern in VDC Space */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror perimeter_type (ttyp)
|
|
Clintype ttyp; /* style of perimeter */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror perimeter_width(index)
|
|
Cfloat index; /* perimeter width */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror perimeter_width_specification_mode(mode)
|
|
Cspecmode mode; /* pixels or percent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror perimeter_color(index)
|
|
Cint index; /* perimeter color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror text_bundle_index(index)
|
|
Cint index; /* text bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror text_precision (ttyp)
|
|
Cprectype ttyp; /* text type */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror character_set_index(index)
|
|
Cint index; /* font set */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror text_font_index(index)
|
|
Cint index; /* font */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror character_expansion_factor(efac)
|
|
Cfloat efac; /* width factor */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror character_spacing(spcratio)
|
|
Cfloat spcratio; /* spacing ratio */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror character_height (height)
|
|
Cint height; /* height in VDC */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror fixed_font (index)
|
|
Cint index; /* fixed or variable width characters */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror text_color(index)
|
|
Cint index; /* color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror character_orientation (xbase,ybase,xup,yup)
|
|
Cfloat xbase,ybase,xup,yup; /* character base and character up vectors */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror character_path(path)
|
|
Cpathtype path; /* text direction */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror text_alignment(halign,valign,hcalind,vcalind)
|
|
Chaligntype halign; /* horizontal alignment type */
|
|
Cvaligntype valign; /* vertical alignment type */
|
|
Cfloat hcalind,vcalind; /* continuous alignment indicators */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror color_table(istart,clist)
|
|
Cint istart; /* starting address */
|
|
Ccentry *clist; /* color triples and number of entries */
|
|
{ static Cerror err; return err; }
|
|
|
|
Clinatt *inquire_line_attributes()
|
|
/* pointer to line attribute structure */
|
|
{ static Clinatt *s; return s; }
|
|
|
|
Cmarkatt *inquire_marker_attributes()
|
|
/* pointer to marker attribute structure */
|
|
{ return (Cmarkatt *) 0; }
|
|
|
|
Cfillatt *inquire_fill_area_attributes()
|
|
/* pointer to fill area attribute structure */
|
|
{ return (Cfillatt *) 0; }
|
|
|
|
Cpatternatt *inquire_pattern_attributes()
|
|
/* pointer to pattern attribute structure */
|
|
{ return (Cpatternatt *) 0; }
|
|
|
|
Ctextatt *inquire_text_attributes()
|
|
/* pointer to text attribute structure */
|
|
{ return (Ctextatt *) 0; }
|
|
|
|
Cflaglist *inquire_aspect_source_flags()
|
|
/* pointer to text attribute structure */
|
|
{ return (Cflaglist *) 0; }
|
|
|
|
Cerror initialize_lid(devclass, devnum, ival)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Cinrep *ival; /* initial value of device measure */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror release_input_device(devclass, devnum)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror flush_event_queue()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror selective_flush_of_event_queue(devclass, devnum)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror associate(trigger, devclass, devnum)
|
|
Cint trigger; /* trigger number */
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_default_trigger_associations(devclass, devnum)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror dissociate(trigger, devclass, devnum)
|
|
Cint trigger; /* trigger number */
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_initial_value(devclass, devnum, value)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Cinrep *value; /* device value */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror set_valuator_range(devnum, vmin, vmax)
|
|
Cint devnum; /* device number */
|
|
Cfloat vmin,vmax; /* limits of valuator */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror track_on(devclass, devnum, tracktype, trackregion, value)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Cint tracktype; /* track number */
|
|
Ccoorpair *trackregion; /* window where track is enabled */
|
|
Cinrep *value; /* device value */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror track_off(devclass, devnum, tracktype, action)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Cint tracktype;
|
|
Cint action;
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror sample_input(devclass, devnum, valid, sample)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Clogical *valid; /* device status */
|
|
Cinrep *sample; /* device value */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror initiate_request(devclass, devnum)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror request_input(devclass, devnum, timeout, valid, sample, trigger)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Cint timeout; /* amount of time to wait for input */
|
|
Cawresult *valid; /* device status */
|
|
Cinrep *sample; /* device value */
|
|
Cint *trigger; /* trigger number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror get_last_requested_input(devclass, devnum, valid, sample)
|
|
/* WARNING: Revision A of the SunCGI Reference Manual is wrong here. */
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
Clogical *valid; /* device status */
|
|
Cinrep *sample; /* device value */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror enable_events(devclass, devnum)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror disable_events(devclass, devnum)
|
|
Cdevoff devclass; /* device type */
|
|
Cint devnum; /* device number */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror await_event(timeout, valid, devclass, devnum,
|
|
measure, message_link, replost, time_stamp, qstat, overflow)
|
|
Cint timeout; /* amount of time to wait for input */
|
|
Cawresult *valid; /* status */
|
|
Cdevoff *devclass; /* device type */
|
|
Cint *devnum; /* device number */
|
|
Cinrep *measure; /* device value */
|
|
Cmesstype *message_link; /* type of message */
|
|
Cint *replost; /* reports lost */
|
|
Cint *time_stamp; /* time_stamp */
|
|
Cqtype *qstat; /* queue status */
|
|
Ceqflow *overflow; /* event queue */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_lid_state_list(devclass, devnum, valid, list)
|
|
Cdevoff devclass;
|
|
Cint devnum; /* device type, device number */
|
|
Clogical *valid; /* device supported at all */
|
|
Cstatelist *list; /* table of descriptors */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_lid_state(devclass, devnum, valid, state)
|
|
Cdevoff devclass;
|
|
Cint devnum; /* device type, device number */
|
|
Clogical *valid; /* device supported at all */
|
|
Clidstate *state; /* table of descriptors */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_trigger_state(trigger, valid, list)
|
|
Cint trigger; /* trigger number */
|
|
Clogical *valid; /* trigger state */
|
|
Ctrigstate *list; /* trigger description table */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror inquire_event_queue_state(qstat, qflow)
|
|
Cqtype * qstat; /* queue state */
|
|
Ceqflow * qflow; /* overflow indicator */
|
|
{ static Cerror err; return err; }
|
|
|
|
|
|
/*
|
|
* Cgipw routines, for using SunCGI and Pixwins
|
|
*/
|
|
|
|
Cerror open_pw_cgi()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror open_cgi_pw(pw, desc, name)
|
|
struct pixwin *pw;
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint *name; /* name assigned to cgi view surface */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror open_cgi_canvas(canvas, desc, name)
|
|
Canvas canvas;
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint *name; /* name assigned to cgi view surface */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror close_cgi_pw(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror close_pw_cgi()
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_set_vdc_extent(desc, c1, c2)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* bottom left-hand corner of VDC space */
|
|
Ccoor *c2; /* top right-hand corner of VDC space */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_polyline(desc, polycoors)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_disjoint_polyline(desc, polycoors)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_polymarker(desc, polycoors)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_polygon(desc, polycoors)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoorlist *polycoors; /* list of points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_rectangle(desc, rbc, ltc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *rbc,*ltc; /* corners defining rectangle */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_circle(desc, c1, rad)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* center */
|
|
Cint rad; /* radius */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_circular_arc_center(desc, c1, c2x, c2y, c3x, c3y, rad)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* center */
|
|
Cint c2x,c2y,c3x,c3y; /* endpoints */
|
|
Cint rad; /* radius */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_circular_arc_center_close(desc, c1, c2x, c2y, c3x, c3y, rad, close)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* center */
|
|
Cint c2x,c2y,c3x,c3y; /* endpoints */
|
|
Cint rad; /* radius */
|
|
Cclosetype close; /* PIE or CHORD */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_circular_arc_3pt(desc, c1, c2, c3)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1,*c2,*c3; /* starting, intermediate, and ending points */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_circular_arc_3pt_close(desc, c1, c2, c3, close)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1, *c2, *c3; /* starting, intermediate, and ending points */
|
|
Cclosetype close; /* PIE or CHORD */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_ellipse(desc, c1, majx,miny)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* center */
|
|
Cint majx,miny; /* enpoints of x and x axes */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_elliptical_arc(desc, c1, sx, sy, ex, ey, majx, miny)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* center */
|
|
Cint sx,sy; /* starting point of arc */
|
|
Cint ex,ey; /* ending point of arc */
|
|
Cint majx,miny; /* endpoints of major and minor axes */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_elliptical_arc_close(desc, c1, sx, sy, ex, ey, majx, miny, close)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* center */
|
|
Cint sx,sy; /* starting point of arc */
|
|
Cint ex,ey; /* ending point of arc */
|
|
Cint majx,miny; /* enpoints of major and minor axes */
|
|
Cclosetype close; /* PIE or CHORD */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_text(desc, c1, tstring)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* starting point of text (in VDC Space) */
|
|
Cchar *tstring; /* text */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_vdm_text(desc, c1, flag, tstring)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *c1; /* starting point of text (in VDC Space) */
|
|
Ctextfinal flag; /* final text for alignment */
|
|
Cchar *tstring; /* text */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_append_text(desc, flag, tstring)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ctextfinal flag; /* final text for alignment */
|
|
Cchar *tstring; /* text */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_inquire_text_extent(desc, tstring, nextchar, concat, lleft, uleft, uright)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cchar *tstring; /* text */
|
|
Cchar nextchar; /* last character */
|
|
Ccoor *concat; /* concatenation point */
|
|
Ccoor *lleft,*uleft,*uright; /* coordinates of text bounding box */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_cell_array(desc, p, q, r, dx, dy, colorind)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *p, *q, *r; /* corners of parallelogram (in VDC Space) */
|
|
Cint dx,dy; /* dimensions of color array */
|
|
Cint *colorind; /* array of color values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_pixel_array(desc, pcell,m,n,colorind)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *pcell; /* base of array in VDC Space */
|
|
Cint m,n; /* dimensions of color array in screen space */
|
|
Cint *colorind; /* array of color values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_set_aspect_source_flags(desc, flags)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cflaglist *flags; /* list of ASFs */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_define_bundle_index(desc, index,entry)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* entry in attribute environment table */
|
|
Cbunatt *entry; /* new attribute values */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_polyline_bundle_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* polyline bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_line_type(desc, ttyp)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Clintype ttyp; /* style of line */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_line_endstyle (desc, ttyp)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cendstyle ttyp; /* style of line */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_line_width_specification_mode(desc, mode)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cspecmode mode; /* pixels or percent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_line_width(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cfloat index; /* line width */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_line_color(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* line color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_polymarker_bundle_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* polymarker bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_marker_type (desc, ttyp)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cmartype ttyp; /* style of marker */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_marker_size_specification_mode(desc, mode)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cspecmode mode; /* pixels or percent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_marker_size(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cfloat index; /* marker size */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_marker_color(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* marker color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_fill_area_bundle_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* fill area bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_interior_style(desc, istyle,perimvis)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cintertype istyle; /* fill style */
|
|
Cflag perimvis; /* perimeter visibility */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_fill_color(desc, color)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint color; /* color for solid object fill */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_hatch_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* index in the pattern table bound to HATCH */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_pattern_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* index in the pattern table bound to PATTERN */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_pattern_reference_point(desc, begin)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Ccoor *begin;
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_pattern_size(desc, dx,dy)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint dx,dy; /* size of pattern in VDC Space */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_perimeter_type (desc, ttyp)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Clintype ttyp; /* style of perimeter */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_perimeter_width(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cfloat index; /* perimeter width */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_perimeter_width_specification_mode(desc, mode)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cspecmode mode; /* pixels or percent */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_perimeter_color(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* perimeter color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_text_bundle_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* text bundle index */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_text_precision (desc, ttyp)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cprectype ttyp; /* text type */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_character_set_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* font set */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_text_font_index(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* font */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_character_expansion_factor(desc, efac)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cfloat efac; /* width factor */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_character_spacing(desc, spcratio)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cfloat spcratio; /* spacing ratio */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_character_height (desc, height)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint height; /* height in VDC */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_fixed_font (desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* fixed or variable width characters */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_text_color(desc, index)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint index; /* color */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_character_orientation (desc, xbase,ybase,xup,yup)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cfloat xbase,ybase,xup,yup; /* character base and character up vectors */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_character_path(desc, path)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cpathtype path; /* text direction */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_text_alignment(desc, halign,valign,hcalind,vcalind)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Chaligntype halign; /* horizontal alignment type */
|
|
Cvaligntype valign; /* vertical alignment type */
|
|
Cfloat hcalind,vcalind; /* continuous alignment indicators */
|
|
{ static Cerror err; return err; }
|
|
|
|
Cerror cgipw_color_table(desc, istart,clist)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
Cint istart; /* starting address */
|
|
Ccentry *clist; /* color triples and number of entries */
|
|
{ static Cerror err; return err; }
|
|
|
|
Clinatt *cgipw_inquire_line_attributes(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
/* pointer to line attribute structure */
|
|
{ return (Clinatt *) 0; }
|
|
|
|
Cmarkatt *cgipw_inquire_marker_attributes(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
/* pointer to marker attribute structure */
|
|
{ return (Cmarkatt *) 0; }
|
|
|
|
Cfillatt *cgipw_inquire_fill_area_attributes(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
/* pointer to fill area attribute structure */
|
|
{ return (Cfillatt *) 0; }
|
|
|
|
Cpatternatt *cgipw_inquire_pattern_attributes(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
/* pointer to pattern attribute structure */
|
|
{ return (Cpatternatt *) 0; }
|
|
|
|
Ctextatt *cgipw_inquire_text_attributes(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
/* pointer to text attribute structure */
|
|
{ return (Ctextatt *) 0; }
|
|
|
|
Cflaglist *cgipw_inquire_aspect_source_flags(desc)
|
|
Ccgiwin * desc; /* CGI pixwin descriptor */
|
|
/* pointer to text attribute structure */
|
|
{ return (Cflaglist *) 0; }
|