Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!thunder.mcrcim.mcgill.edu!snorkelwacker.mit.edu!bloom-beacon!dont-send-mail-to-path-lines From: fgreco@govt.shearson.COM (Frank Greco) Newsgroups: comp.windows.x Subject: Re: Help with XView`s PANEL_LIST Message-ID: <9101231625.AA03709@fis1.shearson.com> Date: 23 Jan 91 16:25:43 GMT Sender: daemon@athena.mit.edu (Mr Background) Organization: The Internet Lines: 29 > > > 1. I'm xv_create(ing) a PANEL_LIST. Whenever I insert or delete items, > >it appears as if OW redraws the entire list. This causes a "flashing" > >that is very annoying (especially since I update the list frequently). > >I'm hoping that there is a way around this... Any clues? > > > I got this function from the net. Original author is not knowned. It sets the > contents of a scrolling list from a list of string in an argc-style parameter. > > Since it update the entire list at once, there is no "flashing" for each > insert or delete. (There is only 1 re-draw of the list). > >src follows... This works only if the number of attributes passed to xv_set() is less than 250 (value of ATTR_STANDARD_SIZE). For more than that (eg, loading the list from a database where you don't know a priori the size of the list) you would have to either batch groups of xv_set()'s or, punt and "turn show off, load the list and then turn show back on". How about adding PANEL_LIST_STRINGLIST to a new version of XView that accepted a null-terminated list of char *? It would be free from the ATTR_STANDARD_SIZE limitation. Frank G.