RE:Dynamic List:Additional INFO
Posted in 1992
Path: emory!europa.asd.contel.com!uunet!rhlab!kuhn From: kuhn@rhlab.UUCP (mjk Michael Kuhn) Newsgroups: comp.databases.informix Keywords: 4GL, Dynamic List Message-ID: <460@rhlab.UUCP> Date: 15 Mar 92 02:35:15 GMT Organization: Baltimore Rh Laboratory, Inc., Maryland A followup to the Dynamic List Window Manager: Save these notes as a companion to the previous posting. One of my proposed options was to return to a "list server" and perform a selected function like update,insert,delete. These in turn might want to use the "list manager". If so a stack can be added in the following way: lp integer, la array[5] of record liblist array[11] of record checkbox char(1), checkbox1 char(1), liststr char(80) end record, liblistopt array[5] of smallint, #input array options liblistcur smallint, #current cursor position in liblist liblistnxt smallint, #next position of cursor liblistmax smallint, #indicates if list filled to maximum amount liblistndx smallint, #select cursor index liblistptr smallint, #general utility list pointer liblistlng smallint, #number of entries used in the list liblistbot smallint, #true if on the bottom line of the screen array liblistpg smallint #list paging state needs to be preserved end record access to these globals must be changed to la[lp].liblistlng for example indexing must be changed from: liblist[liblistptr].liststr to: ss = la[lp].liblistptr la[lp].liblist[ss].liststr a list server would do a: let lp = lp + 1 at the beginning of routine ... when 6 #update option call update_option() ... let lp = lp - 1 at the end of the routine If update_option() called a list server it would increment lp and use a different place in the stack. Also you must be careful where you execute an OPTIONS statement. Because this could effect windows that are currently open. This depends on what you are using for page up and page down for the input array. I had an OPTIONS statement at the end of my second list server. When it popped back the input statement in the list manager would not do page up/down on the original list. My test of this works perfectly. If anyone wants additional info please write. -- Michael J. Kuhn Consultant phone:410-254-7060 Email: rhlab!kuhn@uunet.uu.net or uunet!rhlab!kuhn c/o Baltimore Rh Typing Laboratory, Inc. phone:410-225-9595