[comp.sys.mac.programmer] List Manager sources

tom@iconsys.UUCP (Tom Kimpton) (01/14/89)

I seem to  remember discussion some time back about List Manager
programming.  I have an application which could benefit from
using the List Manager routines.  However, they seem to be
a little lower level than what I'm looking for.  What I'd like
(if anyone has such), is some code that I could:
	pass an array of pointers of pascal (or C) strings
	pass dimensions of array
	pass selection type:
		single selection
		contiguous selection
		disjoint selection
and receive:
	cell number, or
	cell range (upper left and lower right cell coordinates), or
	cell list (appropriately terminated)

Is there anything like this out there that someone wouldn't mind
sharing, or are there any "programmer extenders" that have something
like this in them?  Or would there be anyone out there who would
like somethings like this if I wrote it myself?

Thanks.
-- 
Tom Kimpton                    UUCP: {uunet,caeco,nrc-ut}!iconsys!tom
Software Development Engineer  ARPANET: icon%byuadam.bitnet@cunyvm.cuny.edu
Icon International, Inc.       BITNET: icon%byuadam.bitnet (multi-user acct)
Orem, Utah 84058               PHONE: (801) 225-6888

sec@berlin.acss.umn.edu (Stephen E. Collins) (01/15/89)

In article <313@iconsys.UUCP>, tom@iconsys.UUCP (Tom Kimpton) writes:
> What I'd like
> (if anyone has such), is some code that I could:
> 	pass an array of pointers of pascal (or C) strings
> 	pass dimensions of array
> 	pass selection type:
> 		single selection
> 		contiguous selection
> 		disjoint selection
> and receive:
> 	cell number, or
> 	cell range (upper left and lower right cell coordinates), or
> 	cell list (appropriately terminated)
> 

Some time ago, I realized that 95.82% of all lists were simple one
dimensional lists in which the user is asked to pick a single item.
I wrote a small set of routines that would handle this case with
the minimum possible effort on the part of the programmer.  If your
list fits this criteria, my library will work.  If not, you're on
your own.
 
If there is much interest, I'll post the source.  If not, I'll mail
it to interested individuals.  I might even have a demo program for
it somewhere.
 
A summary of the routines I wrote follows (I'm writing this from
memory, so it isn't completely accurate):
 
CreateList(ListHdl, WindowPtr, Rect, StringArray, Size)
  Turns StringArray of Size items into a list, and draws it in Rect for
  window or dialog of WindowPtr.  Height of Rect is adjusted to avoid
  truncating the last visible item on the list.
 
UpdateList(ListHdl)
  Call whenever the list must be redrawn
 
ClickList(ListHdl, Item:integer)
  Call when the user clicks in the list or list scroll bar.  Handles
  the action, and returns the cell selected in the variable Item.

+-----------------------------------------------------------------------+
| Stephen E. Collins                             | sec@ux.acss.umn.edu /
| ACSS Microcomputer & Workstation Systems Group | sec@UMNACVX.BITNET /
| 125 Shepherd Labs                  +-----------+-------------------/
| University of Minnesota            | Cum hanc intellegas, Latinam /
| Minneapolis, MN  55455             | sententiolam potes legere!  /
+------------------------------------+----------------------------+

leonardr@uxe.cso.uiuc.edu (01/17/89)

tom@iconsys.UUCP(Tom Kimpton) writes in comp.sys.mac.programmer

>I seem to  remember discussion some time back about List Manager
>programming.  I have an application which could benefit from
>using the List Manager routines.  However, they seem to be
>a little lower level than what I'm looking for.  What I'd like
>(if anyone has such), is some code that I could:
>	pass an array of pointers of pascal (or C) strings
>	pass dimensions of array
>	pass selection type:
>		single selection
>		contiguous selection
>		disjoint selection
>and receive:
>	cell number, or
>	cell range (upper left and lower right cell coordinates), or
>	cell list (appropriately terminated)
>
>Is there anything like this out there that someone wouldn't mind
>sharing, or are there any "programmer extenders" that have something
>like this in them?  Or would there be anyone out there who would
>like somethings like this if I wrote it myself?
>
	The 'Programmer's Extender' by Invention Software Corp of Ann Arbor MI
has a NICE set of high-level routines for using the List Manager. Not just
for doing Text lists, but there is also code for doing Icon and Picture lists
and also EDITABLE lists.  Some very nice code all around.  The List Manager
stuff is in their volume 2, or in the Professional Version.
	You can contact Invention Software at (313) 996-8108.

Note: I helped write the 'Extenders' so that I am biased.

+---------------------------------+-----------------------------------+
+                                 +  Any thing I say may be taken as  +
+   Leonard Rosenthol             +  fact, then again you might decide+
+   President, LazerWare, inc.    +  that it really isn't, so you     +
+                                 +  never know, do you??             +
+   leonardr@uxe.cso.uiuc.edu     +                                   +
+   GEnie:  MACgician             +  MacNET: MACgician                +
+   Delphi: MACgician             +  AppleLink: D0025                 +
+                                 +                                   +
+---------------------------------+-----------------------------------+