Contents page



        ListInfo = (struct ListInfo *) DupeListInfo(ListInfo)


        This makes a copy of the supplied ListInfo structure.
        The purpose of this routine is to provide a method for generating multiple
        copies of the same window, so the can run concurrently.
        To do this, create your static ListInfo structure. This will serve as a
        template for all duplicate window that use this list. Dupe the ListInfo
        structure with this routine. Stick the duplicate copy in a new window. You
        might create a separate tast that opens another window, using that list.
        Althought identical copies of the same window will exist on the screen,
        mucking with one list will not effect the other lists. When each task is
        done, it closes its window, then returns the list with a call to
        This only duplicates the ListInfo structure, not the list itself. You must
        handle that, because InovaTools doesn't know the size of items in the list.
        As an example, the File Requester uses DupeListInfo for its two lists.
        Because the File Requester can be called by multiple programs at once, and so
        can have multiple copies of its window open, it needs to give each window a
        unique ListInfo structure.


        ListInfo = Pointer to a ListInfo structure.


        ListInfo = Pointer to the copied ListInfo structure, or NULL if it ran out of