Listing: 1 IMPLEMENTATION MODULE BuildLst; 2 (* 3 * REPERTOIRE 4 * Release 1.6 5 * By Charles Bradford and Cole Brecheen 6 * (c) Copyright 1985-1992 PMI 7 * Green Bay, Wisconsin 8 * All rights reserved 9 * (414) 468-6040 10 * 11 * $Header: D:/logfiles/mods/buildlst.mov 1.5 10 Mar 1991 15:25:16 coleb $ 12 * 13 *) 14 15 16 IMPORT AltKeys; 17 IMPORT ErrorManager; 18 IMPORT GenLists; 19 IMPORT KbdInput; 20 IMPORT M2Strings; 21 IMPORT NdxBones; 22 IMPORT NdxFiles; 23 IMPORT NdxTypes; 24 IMPORT PosUtils; 25 IMPORT ScreenInput; 26 IMPORT ScrnTypes; 27 IMPORT ScrnUtl1; 28 IMPORT StrEdit; 29 IMPORT StrLogic; 30 IMPORT VWindows; 31 IMPORT WindowPrims; 32 33 VAR 34 Initialized : BOOLEAN; 35 36 PROCEDURE Init(); 37 BEGIN 38 IF Initialized THEN 39 RETURN; 40 ELSE 41 Initialized := TRUE; 42 END; 43 AltKeys.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 44 ErrorManager.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 45 GenLists.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 46 KbdInput.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 47 M2Strings.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 48 NdxBones.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 49 NdxFiles.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 50 NdxTypes.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 51 PosUtils.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 52 ScreenInput.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 53 ScrnTypes.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 54 ScrnUtl1.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 55 StrEdit.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 56 StrLogic.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 57 VWindows.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 58 WindowPrims.Init(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 59 END Init; ***** ^ not supported yet 60 61 62 PROCEDURE DeleteListRec( VAR TheList: GenLists.GenList); ***** ^ not supported yet 63 VAR 64 dumc, BadOne: CARDINAL; 65 BEGIN 66 BadOne := GenLists.ScanList( ListStorageRec, ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 67 TheList, 1, 65535, dumc); ***** ^ not supported yet ***** ^ not supported yet 68 IF BadOne # 0 THEN 69 GenLists.ListDelete( TheList, BadOne, 1); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 70 END; 71 END DeleteListRec; ***** ^ not supported yet 72 73 74 PROCEDURE BuildList( NdxFile: NdxTypes.NdxFileType; TheFrame: ***** ^ not supported yet 75 ScrnTypes.DisplayFrame; FirstRuleField, LastRuleField: CARDINAL; ***** ^ not supported yet 76 LimitingListName: ARRAY OF CHAR; VAR ErrorField: CARDINAL; VAR ***** ^ not supported yet 77 OutList: GenLists.GenList); ***** ^ not supported yet 78 79 VAR 80 LimitingList, TmpList, Criteria: GenLists.GenList; ***** ^ not supported yet 81 KeyHit, cnt: CARDINAL; 82 dumbool: BOOLEAN; 83 TmpFieldRec: ScrnTypes.InputFieldRecord; ***** ^ not supported yet 84 TmpExpression: ARRAY [0..79] OF CHAR; ***** ^ not supported yet ***** ^ not supported yet 85 BEGIN 86 (*BuildLists*) 87 ErrorField := 0; 88 FOR cnt := FirstRuleField TO LastRuleField DO 89 (*First we make sure each non-empty field contains a 90 valid search expression.*) 91 ScrnUtl1.GetFieldText( TheFrame, cnt, TmpExpression); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 92 IF NOT PosUtils.IsBlank( TmpExpression ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 93 IF StrLogic.ExpressionTest( (*dummy string*) '', ***** ^ not supported yet ***** ^ not supported yet 94 TmpExpression ) = 0 THEN ***** ^ not supported yet 95 (*do nothing*) 96 END; 97 IF StrLogic.StrLogicErrorLevel # 0 THEN ***** ^ not supported yet ***** ^ not supported yet 98 (*something's wrong with this expression*) 99 ErrorField := cnt; 100 END; 101 END; 102 END; 103 IF ErrorField # 0 THEN 104 RETURN; 105 END; 106 IF M2Strings.Length(LimitingListName) > 0 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 107 IF NOT GetRecNameList( NdxFile, LimitingListName, ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 108 LimitingList) THEN ***** ^ not supported yet 109 WindowPrims.MsgBox( VWindows.SE, ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 110 "List not stored. Press any key.", ***** ^ not supported yet 111 KbdInput.AnyKeyNum, KeyHit ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 112 GenLists.NewList( LimitingList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 113 END; 114 ELSE 115 GenLists.NewList( LimitingList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 116 END; 117 GenLists.NewList( Criteria ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 118 FOR cnt := FirstRuleField TO LastRuleField DO 119 ScrnUtl1.GetFieldText( TheFrame, cnt, TmpExpression); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 120 IF NOT PosUtils.IsBlank( TmpExpression ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 121 ScrnUtl1.GetFieldRec( TheFrame, cnt, TmpFieldRec ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 122 AltKeys.AddCriteria( Criteria, AltKeys.or, AltKeys.StrSelector, ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 123 TmpExpression, TmpFieldRec.fnam ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 124 (*Means the field names in this screen have to be the 125 same as the field names we plan to search.*) 126 END; 127 END; 128 IF AltKeys.LoadAltList( NdxFile, LimitingList, 'KEY', Criteria ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 129 IF NOT AltKeys.GetAltList( NdxFile, 'KEY', TmpList ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 130 ErrorManager.WARN('Critical error in building list.'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 131 END; 132 GenLists.CopyList( TmpList, OutList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 133 AltKeys.DisposeAltList( NdxFile, 'KEY' ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 134 ELSE 135 GenLists.NewList( OutList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 136 END; 137 GenLists.DisposeList( Criteria ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 138 END BuildList; ***** ^ not supported yet 139 140 PROCEDURE TypeCheck( TheList: GenLists.GenList; TheElmt: CARDINAL ): ***** ^ not supported yet 141 CARDINAL; 142 (*This routine is described in section 6.9 of the manual.*) 143 VAR 144 TypeCode, DummySize: CARDINAL; 145 DummyAddr: POINTER TO CARDINAL; ***** ^ not supported yet 146 BEGIN 147 GenLists.GetElmtAdr( TheList, TheElmt, DummyAddr, DummySize, ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 148 TypeCode ); ***** ^ not supported yet 149 RETURN TypeCode; 150 END TypeCheck; ***** ^ not supported yet 151 152 VAR 153 LastSpot: CARDINAL; 154 155 PROCEDURE GetNamedList( MainList: GenLists.GenList; ListName: ARRAY OF ***** ^ not supported yet 156 CHAR; VAR TheList: GenLists.GenList ): BOOLEAN; ***** ^ not supported yet ***** ^ not supported yet 157 VAR 158 TypeCode, lngth, cnt: CARDINAL; 159 TmpStr: ARRAY [0..79] OF CHAR; ***** ^ not supported yet ***** ^ not supported yet 160 NameList: GenLists.GenList; ***** ^ not supported yet 161 BEGIN 162 IF GenLists.ListLength( MainList ) < 2 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 163 RETURN FALSE; 164 END; 165 IF TypeCheck( MainList, 1 ) # GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 166 RETURN FALSE; 167 END; 168 GenLists.GetChildList( MainList, 1, NameList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 169 lngth := GenLists.ListLength( NameList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 170 IF lngth # (GenLists.ListLength(MainList) -1) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 171 (*Corrupted list.*) 172 HALT(); ***** ^ undeclared identifier ***** ^ not supported yet 173 END; 174 StrEdit.CrunchBlanks( ListName ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 175 FOR cnt := 1 TO lngth DO 176 GenLists.GetElmt( NameList, cnt, TmpStr, TypeCode ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 177 StrEdit.CrunchBlanks( TmpStr ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 178 IF PosUtils.Equal(TmpStr, ListName) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 179 LastSpot := cnt; 180 GenLists.GetElmt( MainList, cnt + 1, TheList, TypeCode ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 181 RETURN TRUE; 182 END; 183 END; 184 RETURN FALSE; 185 END GetNamedList; ***** ^ not supported yet 186 187 PROCEDURE AddNamedList( MainList: GenLists.GenList; ListName: ARRAY OF ***** ^ not supported yet 188 CHAR; VAR TheList: GenLists.GenList ); ***** ^ not supported yet ***** ^ not supported yet 189 VAR 190 NameList: GenLists.GenList; ***** ^ not supported yet 191 BEGIN 192 IF GenLists.ListLength( MainList ) = 0 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 193 GenLists.NewList( NameList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 194 GenLists.ListInsert( NameList, GenLists.ListCode, MainList, 1 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 195 END; 196 StrEdit.CrunchBlanks( ListName ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 197 GenLists.GetChildList( MainList, 1, NameList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 198 GenLists.ListInsert( ListName, GenLists.StrCode, NameList, GenLists.ListLength(NameList) + 1 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 199 GenLists.ListInsert( TheList, GenLists.ListCode, MainList, GenLists.ListLength(MainList) + 1 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 200 LastSpot := GenLists.ListLength(NameList) + 1; ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 201 END AddNamedList; ***** ^ not supported yet 202 203 PROCEDURE DelNamedList( MainList: GenLists.GenList; ListName: ARRAY OF ***** ^ not supported yet 204 CHAR ): BOOLEAN; ***** ^ not supported yet 205 VAR 206 NameList: GenLists.GenList; ***** ^ not supported yet 207 BEGIN 208 StrEdit.CrunchBlanks( ListName ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 209 IF NOT GetNamedList( MainList, ListName, NameList ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 210 RETURN FALSE; 211 END; 212 GenLists.ListDelete( MainList, LastSpot + 1, 1 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 213 GenLists.GetChildList( MainList, 1, NameList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 214 GenLists.ListDelete( NameList, LastSpot, 1 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 215 RETURN TRUE; 216 END DelNamedList; ***** ^ not supported yet 217 218 219 220 PROCEDURE GetRecNameList( NdxFile: NdxTypes.NdxFileType; ListName: ARRAY ***** ^ not supported yet 221 OF CHAR; VAR TheList: GenLists.GenList ): BOOLEAN; ***** ^ not supported yet ***** ^ not supported yet 222 VAR 223 TypeCode: CARDINAL; 224 TopList, TmpList, TmpList2: GenLists.GenList; ***** ^ not supported yet 225 BEGIN 226 IF NOT NdxFiles.GetField( NdxFile, ListStorageRec, 'RECORD', ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 227 TypeCode, TopList ) THEN ***** ^ not supported yet 228 RETURN FALSE; 229 END; 230 IF TypeCode # GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet 231 (*Something's wrong with this file.*) 232 HALT(); ***** ^ undeclared identifier ***** ^ not supported yet 233 END; 234 IF TypeCheck( TopList, 2 ) = GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 235 GenLists.GetElmt( TopList, 2, TmpList, TypeCode ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 236 ELSE 237 RETURN FALSE; 238 END; 239 IF NOT GetNamedList( TmpList, ListName, TmpList2 ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 240 RETURN FALSE; 241 ELSE 242 GenLists.CopyList( TmpList2, TheList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 243 RETURN TRUE; 244 END; 245 END GetRecNameList; ***** ^ not supported yet 246 247 248 PROCEDURE StoreRecNameList( NdxFile: NdxTypes.NdxFileType; ListName: ARRAY ***** ^ not supported yet 249 OF CHAR; TheList: GenLists.GenList ): BOOLEAN; ***** ^ not supported yet ***** ^ not supported yet 250 VAR 251 TypeCode: CARDINAL; 252 TopList, OldList: GenLists.GenList; ***** ^ not supported yet 253 (*A list of lists; structured just like the AltKey list 254 in an NdxFileType record.*) 255 256 BEGIN 257 IF NOT NdxFiles.GetField( NdxFile, ListStorageRec, 'RECORD', ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 258 TypeCode, TopList ) THEN ***** ^ not supported yet 259 IF GenLists.ListLength( NdxFile^.ListBuf ) = 0 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 260 (*File has just been opened; ListBuf needs to be 261 initialized. We'll do it by calling PutField.*) 262 GenLists.NewList( TopList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 263 IF NdxFiles.PutField( NdxFile, ListStorageRec, ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 264 'RECORD', GenLists.ListCode, TopList ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 265 (*This shouldn't happen; we're supposed to return 266 false here.*) 267 HALT(); ***** ^ undeclared identifier ***** ^ not supported yet 268 END; 269 END; 270 GenLists.CopyList( NdxFile^.ListBuf, TopList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 271 END; 272 IF TypeCheck( TopList, 2 ) = GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 273 GenLists.GetElmt( TopList, 2, OldList, TypeCode ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 274 ELSE 275 GenLists.NewList( OldList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 276 END; 277 IF DelNamedList( OldList, ListName ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 278 (*Do nothing; we do this just to make sure we don't have 279 two lists with the same name.*) 280 END; 281 AddNamedList( OldList, ListName, TheList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 282 GenLists.ListReplace( OldList, GenLists.ListCode, TopList, 2 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 283 IF NOT NdxFiles.PutField( NdxFile, ListStorageRec, ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 284 'RECORD', GenLists.ListCode, TopList ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 285 RETURN FALSE; 286 END; 287 IF NOT NdxFiles.WriteRecord( NdxFile, ListStorageRec ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 288 RETURN FALSE; 289 END; 290 RETURN TRUE; 291 END StoreRecNameList; ***** ^ not supported yet 292 293 PROCEDURE DelRecNameList( NdxFile: NdxTypes.NdxFileType; ListName: ARRAY ***** ^ not supported yet 294 OF CHAR ): BOOLEAN; ***** ^ not supported yet 295 VAR 296 TmpList, TopList: GenLists.GenList; ***** ^ not supported yet 297 TypeCode: CARDINAL; 298 BEGIN 299 IF PosUtils.IsBlank( ListName) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 300 RETURN FALSE; 301 END; 302 IF NOT NdxFiles.GetField( NdxFile, ListStorageRec, 'RECORD', ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 303 TypeCode, TopList ) THEN ***** ^ not supported yet 304 RETURN FALSE; 305 END; 306 IF TypeCode # GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet 307 RETURN FALSE; 308 END; 309 IF TypeCheck( TopList, 2 ) = GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 310 GenLists.GetElmt( TopList, 2, TmpList, TypeCode ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 311 ELSE 312 RETURN FALSE; 313 END; 314 IF NOT DelNamedList( TmpList, ListName ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 315 RETURN FALSE; 316 END; 317 GenLists.ListReplace( TmpList, GenLists.ListCode, TopList, 2 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 318 IF NOT NdxFiles.PutField( NdxFile, ListStorageRec, ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 319 'RECORD', GenLists.ListCode, TopList ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 320 RETURN FALSE; 321 END; 322 IF NOT NdxFiles.WriteRecord( NdxFile, ListStorageRec ) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 323 RETURN FALSE; 324 END; 325 RETURN TRUE; 326 END DelRecNameList; ***** ^ not supported yet 327 328 329 PROCEDURE GetListNames( NdxFile: NdxTypes.NdxFileType; VAR TheList: ***** ^ not supported yet 330 GenLists.GenList ): BOOLEAN; ***** ^ not supported yet 331 VAR 332 TypeCode: CARDINAL; 333 TopList, TmpList, TmpList2: GenLists.GenList; ***** ^ not supported yet 334 BEGIN 335 IF NOT NdxFiles.GetField( NdxFile, ListStorageRec, 'RECORD', ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 336 TypeCode, TopList ) THEN ***** ^ not supported yet 337 RETURN FALSE; 338 END; 339 IF TypeCode # GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet 340 (*Something's wrong with this file.*) 341 HALT(); ***** ^ undeclared identifier ***** ^ not supported yet 342 END; 343 IF TypeCheck( TopList, 2 ) = GenLists.ListCode THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 344 GenLists.GetElmt( TopList, 2, TmpList, TypeCode ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 345 ELSE 346 RETURN FALSE; 347 END; 348 GenLists.GetChildList( TmpList, 1, TmpList2 ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 349 IF GenLists.Initialized(TmpList2) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 350 GenLists.CopyList( TmpList2, TheList ); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 351 RETURN TRUE; 352 ELSE 353 RETURN FALSE; 354 END; 355 END GetListNames; ***** ^ not supported yet 356 357 358 BEGIN 359 Initialized := FALSE; 360 Init(); ***** ^ not supported yet ***** ^ not supported yet 361 END BuildLst. ***** ^ not supported yet 470 errors