diff options
author | jim <empty> | 1989-08-17 14:06:45 +0000 |
---|---|---|
committer | jim <empty> | 1989-08-17 14:06:45 +0000 |
commit | aa2e709765fe486e5f99477f8e37a71bc16abc13 (patch) | |
tree | 143f811820f0a650eccf0d72fd31cc7152acdf55 /xc/lib/Xmu/DisplayQue.h | |
parent | 6925af1c187a6e8546557aceb4e2052bc5cd6986 (diff) |
added freefunc arg to create
Diffstat (limited to 'xc/lib/Xmu/DisplayQue.h')
-rw-r--r-- | xc/lib/Xmu/DisplayQue.h | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/xc/lib/Xmu/DisplayQue.h b/xc/lib/Xmu/DisplayQue.h index ae5f86f78..a133a2fe7 100644 --- a/xc/lib/Xmu/DisplayQue.h +++ b/xc/lib/Xmu/DisplayQue.h @@ -6,8 +6,9 @@ * Public Entry Points * * - * DisplayQueue *XmuDQCreate (closefunc, data) + * XmuDisplayQueue *XmuDQCreate (closefunc, freefunc, data) * int (*closefunc)(); + * int (*freefunc)(); * caddr_t data; * * Creates and returns a queue into which displays may be placed. When @@ -16,9 +17,13 @@ * * (*closefunc) (queue, entry) * + * The freeproc, if non-NULL, is called whenever the last display is + * closed, notifying the creator that display queue may be released + * using XmuDQDestroy. + * * * Bool XmuDQDestroy (q, docallbacks) - * DisplayQueue *q; + * XmuDisplayQueue *q; * Bool docallbacks; * * Releases all memory for the indicated display queue. If docallbacks @@ -26,16 +31,16 @@ * display. * * - * DisplayQueueEntry *XmuDQLookupDisplay (q, dpy) - * DisplayQueue *q; + * XmuDisplayQueueEntry *XmuDQLookupDisplay (q, dpy) + * XmuDisplayQueue *q; * Display *dpy; * * Returns the queue entry for the specified display or NULL if the * display is not in the queue. * * - * DisplayQueueEntry *XmuDQAddDisplay (q, dpy, data) - * DisplayQueue *q; + * XmuDisplayQueueEntry *XmuDQAddDisplay (q, dpy, data) + * XmuDisplayQueue *q; * Display *dpy; * caddr_t data; * @@ -47,7 +52,7 @@ * * * Bool XmuDQRemoveDisplay (q, dpy) - * DisplayQueue *q; + * XmuDisplayQueue *q; * Display *dpy; * * Removes the specified display from the given queue. If the @@ -55,25 +60,26 @@ * otherwise True is returned. */ -typedef struct _DisplayQueueEntry { - struct _DisplayQueueEntry *prev, *next; +typedef struct _XmuDisplayQueueEntry { + struct _XmuDisplayQueueEntry *prev, *next; Display *display; CloseHook closehook; caddr_t data; -} DisplayQueueEntry; +} XmuDisplayQueueEntry; -typedef struct _DisplayQueue { +typedef struct _XmuDisplayQueue { int nentries; - DisplayQueueEntry *head, *tail; + XmuDisplayQueueEntry *head, *tail; int (*closefunc)(); + int (*freefunc)(); caddr_t data; -} DisplayQueue; +} XmuDisplayQueue; -extern DisplayQueue *XmuDQCreate (); +extern XmuDisplayQueue *XmuDQCreate (); extern Bool XmuDQDestroy (); -extern DisplayQueueEntry *XmuDQLookupDisplay (); -extern DisplayQueueEntry *XmuDQAddDisplay (); +extern XmuDisplayQueueEntry *XmuDQLookupDisplay (); +extern XmuDisplayQueueEntry *XmuDQAddDisplay (); extern Bool XmuDQRemoveDisplay (); |