1 
2 /*	$Id: tixSmpLs.c,v 1.1.1.1 2000/05/17 11:08:42 idiscovery Exp $	*/
3 
4 /*
5  * tixSmpLs.c --
6  *
7  *	To implement simple link lists (next is always the first
8  *	member of the list).
9  *
10  * Copyright (c) 1996, Expert Interface Technologies
11  *
12  * See the file "license.terms" for information on usage and redistribution
13  * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
14  *
15  */
16 
17 #include "tixPort.h"
18 #include "tixInt.h"
19 
20 static Tix_ListInfo simpleListInfo = {
21     0,
22     TIX_UNDEFINED,
23 };
24 
Tix_SimpleListInit(lPtr)25 void Tix_SimpleListInit(lPtr)
26     Tix_LinkList * lPtr;
27 {
28     Tix_LinkListInit(lPtr);
29 }
30 
31 
32 void
Tix_SimpleListAppend(lPtr,itemPtr,flags)33 Tix_SimpleListAppend(lPtr, itemPtr, flags)
34     Tix_LinkList * lPtr;
35     char * itemPtr;
36     int flags;
37 {
38     Tix_LinkListAppend(&simpleListInfo, lPtr, itemPtr, flags);
39 }
40 
Tix_SimpleListIteratorInit(liPtr)41 void Tix_SimpleListIteratorInit(liPtr)
42     Tix_ListIterator * liPtr;
43 {
44     Tix_LinkListIteratorInit(liPtr);
45 }
46 
Tix_SimpleListStart(lPtr,liPtr)47 void Tix_SimpleListStart(lPtr, liPtr)
48     Tix_LinkList * lPtr;
49     Tix_ListIterator * liPtr;
50 {
51     Tix_LinkListStart(&simpleListInfo, lPtr, liPtr);
52 }
53 
Tix_SimpleListNext(lPtr,liPtr)54 void Tix_SimpleListNext(lPtr, liPtr)
55     Tix_LinkList * lPtr;
56     Tix_ListIterator * liPtr;
57 {
58     Tix_LinkListNext(&simpleListInfo, lPtr, liPtr);
59 }
60 
61 /*
62  * To delete consecutive elements, you must delete, next, delete, next ...
63  */
Tix_SimpleListDelete(lPtr,liPtr)64 void Tix_SimpleListDelete(lPtr, liPtr)
65     Tix_LinkList * lPtr;
66     Tix_ListIterator * liPtr;
67 {
68     Tix_LinkListDelete(&simpleListInfo, lPtr, liPtr);
69 }
70 
71 /*----------------------------------------------------------------------
72  *  Tix_SimpleListInsert --
73  *
74  *	Insert the item at the position indicated by liPtr
75  *----------------------------------------------------------------------
76  */
Tix_SimpleListInsert(lPtr,itemPtr,liPtr)77 void Tix_SimpleListInsert(lPtr, itemPtr, liPtr)
78     Tix_LinkList * lPtr;
79     char * itemPtr;
80     Tix_ListIterator * liPtr;
81 {
82     Tix_LinkListInsert(&simpleListInfo, lPtr, itemPtr, liPtr);
83 }
84 
85 /*----------------------------------------------------------------------
86  * Tix_SimpleListFindAndDelete --
87  *
88  *	Find an element and delete it.
89  *
90  * liPtr:
91  *	Can be zero.
92  *	If non-zero, the search will start from the current entry indexed
93  *	by liPtr;
94  *
95  * Return value:
96  *	1 if element is found and deleted
97  *	0 if element is not found
98  *----------------------------------------------------------------------
99  */
Tix_SimpleListFindAndDelete(lPtr,itemPtr,liPtr)100 int Tix_SimpleListFindAndDelete(lPtr, itemPtr, liPtr)
101     Tix_LinkList * lPtr;
102     char * itemPtr;
103     Tix_ListIterator * liPtr;
104 {
105     return Tix_LinkListFindAndDelete(&simpleListInfo, lPtr, itemPtr, liPtr);
106 }
107 
Tix_SimpleListDeleteRange(lPtr,fromPtr,toPtr,liPtr)108 int Tix_SimpleListDeleteRange(lPtr, fromPtr, toPtr, liPtr)
109     Tix_LinkList * lPtr;
110     char * fromPtr;
111     char * toPtr;
112     Tix_ListIterator * liPtr;
113 {
114     return Tix_LinkListDeleteRange(&simpleListInfo, lPtr,
115 	fromPtr, toPtr, liPtr);
116 }
117 
Tix_SimpleListFind(lPtr,itemPtr,liPtr)118 int Tix_SimpleListFind(lPtr, itemPtr, liPtr)
119     Tix_LinkList * lPtr;
120     char * itemPtr;
121     Tix_ListIterator * liPtr;
122 {
123     return Tix_LinkListFind(&simpleListInfo, lPtr, itemPtr, liPtr);
124 }
125