00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _G2_X11_P_H
00020 #define _G2_X11_P_H
00021
00022 #include <X11/Xlib.h>
00023
00024 typedef struct {
00025 Display *display;
00026 Window window;
00027 Window root;
00028 Colormap colormap;
00029 GC gc;
00030 Drawable dest;
00031 Pixmap backing_pixmap;
00032
00033
00034 unsigned long *inks;
00035 int NofInks;
00036 int width;
00037 int height;
00038 int background;
00039 } g2_X11_device;
00040
00041
00042 int g2_X11_init_X11X(int pid, int width, int height,
00043 int xposition, int yposition,
00044 char *window_name, char *icon_name,
00045 char *icon_data,
00046 unsigned int icon_width, unsigned int icon_height);
00047 int g2_X11_delete(int pid, void *pdp);
00048 int g2_X11_clear(int pid, void *pdp);
00049 int g2_X11_flush(int pid, void *pdp);
00050 int g2_X11_ink(int pid, void *pdp,
00051 double red, double green, double blue);
00052 int g2_X11_clear_palette(int pid, void *pdp);
00053 int g2_X11_reset_palette(int pid, void *pdp);
00054 int g2_X11_set_background(int pid, void *pdp, int color);
00055 int g2_X11_pen(int pid, void *pdp, int color);
00056 int g2_X11_paper(int pid, void *pdp, int color);
00057 int g2_X11_set_line_width(int pid, void *pdp, int w);
00058 int g2_X11_set_dash(int pid, void *pdp, int n, int *data);
00059 int g2_X11_set_font_size(int pid, void *pdp, int size);
00060 int g2_X11_plot(int pid, void *pdp, int x, int y);
00061 int g2_X11_line(int pid, void *pdp, int x1, int y1, int x2, int y2);
00062 int g2_X11_poly_line(int pid, void *pdp, int N, int *p);
00063 int g2_X11_polygon(int pid, void *pdp, int N, int *p);
00064 int g2_X11_filled_polygon(int pid, void *pdp, int N, int *p);
00065 int g2_X11_triangle(int pid, void *pdp,
00066 int x1, int y1,
00067 int x2, int y2,
00068 int x3, int y3);
00069 int g2_X11_filled_triangle(int pid, void *pdp, int x1, int y1,
00070 int x2, int y2,
00071 int x3, int y3);
00072 int g2_X11_rectangle(int pid, void *pdp, int x1, int y1, int x2, int y2);
00073 int g2_X11_filled_rectangle(int pid, void *pdp,
00074 int x1, int y1, int x2, int y2);
00075 int g2_X11_arc(int pid, void *pdp, int x, int y,
00076 int r1, int r2, double a1, double a2);
00077 int g2_X11_filled_arc(int pid, void *pdp, int x, int y,
00078 int r1, int r2, double a1, double a2);
00079 int g2_X11_ellipse(int pid, void *pdp, int x, int y, int r1, int r2);
00080 int g2_X11_filled_ellipse(int pid, void *pdp, int x, int y, int r1, int r2);
00081 int g2_X11_draw_string(int pid, void *pdp, int x, int y, const char *text);
00082 int g2_X11_image(int pid, void *pdp,
00083 int x, int y, int width, int height, int *pen_array);
00084 int g2_X11_query_pointer(int pid, void *pdp,
00085 int *x, int *y, unsigned int *button);
00086
00087 #endif
00088
00089
00090
00091
00092