You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

66 lines
2.2 KiB

/**********
Copyright 1990 Regents of the University of California. All rights reserved.
Author: 1987 Jeffrey M. Hsu
**********/
/*
$Header$
The display device structure.
*/
#ifndef FTEDEV_H_INCLUDED
#define FTEDEV_H_INCLUDED
struct graph;
struct request;
struct response;
typedef int disp_fn_Init_t (void);
typedef int disp_fn_NewViewport_t (struct graph *);
typedef int disp_fn_Close_t (void);
typedef int disp_fn_Clear_t (void);
typedef int disp_fn_DrawLine_t (int x1, int y1, int x2, int y2);
typedef int disp_fn_Arc_t (int x0, int y0, int radius, double theta1, double theta2);
typedef int disp_fn_Text_t (char *text, int x, int y);
typedef int disp_fn_DefineColor_t (int colorid, double red, double green, double blue);
typedef int disp_fn_DefineLinestyle_t (int linestyleid, int mask);
typedef int disp_fn_SetLinestyle_t (int linestyleid);
typedef int disp_fn_SetColor_t (int colorid);
typedef int disp_fn_Update_t (void);
typedef int disp_fn_Track_t (void);
typedef int disp_fn_MakeMenu_t (void);
typedef int disp_fn_MakeDialog_t (void);
typedef int disp_fn_Input_t (struct request *request, struct response *response);
typedef void disp_fn_DatatoScreen_t (struct graph *graph, double x, double y, int *screenx, int *screeny);
typedef struct {
char *name;
int minx, miny;
int width, height; /* in screen coordinate system */
int numlinestyles, numcolors; /* number supported */
disp_fn_Init_t *Init;
disp_fn_NewViewport_t *NewViewport;
disp_fn_Close_t *Close;
disp_fn_Clear_t *Clear;
disp_fn_DrawLine_t *DrawLine;
disp_fn_Arc_t *Arc;
disp_fn_Text_t *Text;
disp_fn_DefineColor_t *DefineColor;
disp_fn_DefineLinestyle_t *DefineLinestyle;
disp_fn_SetLinestyle_t *SetLinestyle;
disp_fn_SetColor_t *SetColor;
disp_fn_Update_t *Update;
/* int (*NDCtoScreen)(); */
disp_fn_Track_t *Track;
disp_fn_MakeMenu_t *MakeMenu;
disp_fn_MakeDialog_t *MakeDialog;
disp_fn_Input_t *Input;
disp_fn_DatatoScreen_t *DatatoScreen;
} DISPDEVICE;
extern DISPDEVICE *dispdev;
#endif