|
|
1.1 root 1: /* $Header: X10.h,v 11.9 87/09/11 07:56:29 toddb Exp $ */
2: /*
3: * Copyright 1985, 1986, 1987 by the Massachusetts Institute of Technology
4: *
5: * Permission to use, copy, modify, and distribute this software and its
6: * documentation for any purpose and without fee is hereby granted, provided
7: * that the above copyright notice appear in all copies and that both that
8: * copyright notice and this permission notice appear in supporting
9: * documentation, and that the name of M.I.T. not be used in advertising
10: * or publicity pertaining to distribution of the software without specific,
11: * written prior permission. M.I.T. makes no representations about the
12: * suitability of this software for any purpose. It is provided "as is"
13: * without express or implied warranty.
14: *
15: * The X Window System is a Trademark of MIT.
16: *
17: */
18:
19:
20: /*
21: * X10.h - Header definition and support file for the C subroutine
22: * interface library for V10 support routines.
23: */
24: #ifndef _X10_H_
25: #define _X10_H_
26:
27: /* Used in XDraw and XDrawFilled */
28:
29: typedef struct {
30: short x, y;
31: unsigned short flags;
32: } Vertex;
33:
34: /* The meanings of the flag bits. If the bit is 1 the predicate is true */
35:
36: #define VertexRelative 0x0001 /* else absolute */
37: #define VertexDontDraw 0x0002 /* else draw */
38: #define VertexCurved 0x0004 /* else straight */
39: #define VertexStartClosed 0x0008 /* else not */
40: #define VertexEndClosed 0x0010 /* else not */
41: /*#define VertexDrawLastPoint 0x0020 */ /* else don't */
42:
43: /*
44: The VertexDrawLastPoint option has not been implemented in XDraw and
45: XDrawFilled so it shouldn't be defined.
46: */
47:
48: /*
49: * XAssoc - Associations used in the XAssocTable data structure. The
50: * associations are used as circular queue entries in the association table
51: * which is contains an array of circular queues (buckets).
52: */
53: typedef struct _XAssoc {
54: struct _XAssoc *next; /* Next object in this bucket. */
55: struct _XAssoc *prev; /* Previous obejct in this bucket. */
56: Display *display; /* Display which ownes the id. */
57: XID x_id; /* X Window System id. */
58: char *data; /* Pointer to untyped memory. */
59: } XAssoc;
60:
61: /*
62: * XAssocTable - X Window System id to data structure pointer association
63: * table. An XAssocTable is a hash table whose buckets are circular
64: * queues of XAssoc's. The XAssocTable is constructed from an array of
65: * XAssoc's which are the circular queue headers (bucket headers).
66: * An XAssocTable consists an XAssoc pointer that points to the first
67: * bucket in the bucket array and an integer that indicates the number
68: * of buckets in the array.
69: */
70: typedef struct {
71: XAssoc *buckets; /* Pointer to first bucket in bucket array.*/
72: int size; /* Table size (number of buckets). */
73: } XAssocTable;
74:
75: XAssocTable *XCreateAssocTable();
76: char *XLookUpAssoc();
77:
78: #endif _X10_H_
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.