Path: utzoo!attcan!uunet!husc6!yale!cs.utexas.edu!hellgate.utah.edu!cc.utah.edu!tjacobs From: TJACOBS@cc.utah.edu Newsgroups: comp.sys.mac.hypercard Subject: Re: New feature for 2.1 wanted (Clean solution you say?) Message-ID: <98061@cc.utah.edu> Date: 9 Oct 90 20:07:00 GMT References: <10614@goofy.Apple.COM> Lines: 64 In article <10614@goofy.Apple.COM>, maller@applelink@apple.com (Steve Maller) writes: > References:<2106@gazette.bcm.tmc.edu> <21064@well.sf.ca.us> > > In article <21064@well.sf.ca.us> via@well.sf.ca.us (Tony Cecala) writes: >> I agree completely that row/column functionality should be added >> to HyperCard fields. > > This is a highly-requested feature, but one that would be much trickier > than you think from HyperTalk's point of view. Everything inside of > HyperCard can be referred to as plain text (fields, properties, variables, > chunks, etc...). If you implement a spreadsheet-type field, how will you > refer to parts of it? In a way that is smooth from one variable type to > another. > > We argued about this feature (and arrays, too) and decided that it would > be too much of a kludge in the native HyperTalk lexicon. Maybe someday if > we can figure a *clean* way of doing it... > > Steve Maller > HyperCard Engineering Team > Apple Computer > ------------- > I speak solely for myself in these matters HyperTalk already understands "items" and "lines". Couldn't "rows" and "columns" just be an alias for items and lines? Then what you need is is a way to display those kinds of fields in a spreadsheet fashion and to handle clicks on that kind of field. A special field could be used for cell programming which allows you to use HyperTalk in a normal fashion. Eash cell which has a script would simply be held in the fields script like the following: on R1C2 do some hypertalk stuf... return (some value) end R1C2 . . . on RnCn do some more stuf... return (some value) end RnCn Then when ever a click on a cell has occured or has changed then you simply execute the handler for that cell. The special field for editing the handlers would simply take care of the cell addressing and perhaps hide the on...end stuf. This could all be done with regular HyperTalk and a regular field. Then of course you would need the multi cell selection/copy/paste stuff. It seems like the way to do is is with a multi-celled "List" structure which is already in rom or system toolbox code. Now, if you have a background field like this, then you have a 3 (or more) dimensional spreadsheet! This seems fairly clean to me. Am I missing something? Tony Jacobs Center for Engineering Design University of Utah