Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!elroy.jpl.nasa.gov!sdd.hp.com!hplabs!hpfcso!hplvec!bayes From: bayes@hplvec.LVLD.HP.COM (Scott Bayes) Newsgroups: comp.sys.mac.hypercard Subject: Re: Hypercard Pro Wishlist Message-ID: <1170008@hplvec.LVLD.HP.COM> Date: 21 Mar 91 20:10:19 GMT References: <17537@crdgw1.crd.ge.com> Organization: Hewlett-Packard Co., Loveland, CO Lines: 33 > I'd like LESS! I don't like that there are buttons AND fields; I'm > forever trying to make one act like the other. How about getting rid of > both and just having ONE more-general kind of thing, the "object", > which has a variety of visual representations: graphics, text, icon, > button, line, polygon, scrolling list, whatever. And a bit more for me. Currently buttons are not containers for user data, but fields are. However, fields must either be hidden or must display their data to the user (I won't mention horrible kluges with "the scroll", etc). They usually contain the user's data (either just for viewing, or for editing), not the programmer's data. I'd like all objects to be able to display user text (like the contents of a field, or the name of a button) as well as having their own containers: "the data". I'd like to be able to "edit the data of object x", "get the data of object x", "set the data of object x". Look at the scripts in the Tools (?) stack; they often start out with a function commented "don't move this fcn", whose sole job is to return some data for use by handlers. How much simpler not to have to store data as source, but instead to say "set the data of card button "xyzzy" to avalue"! No hidden fields, etc. In HC, data meant to be available at startup is too often stored as code, unless you want to put up with hidden fields, etc. Globals don't provide the functionality of "the data of x", as they do not survive Quitting HC. In 2.0, bkgnd fields already have shared and non-shared text, but I'd much rather have a regular design. Also, I don't want to preempt the shared data to my own evil purposes: it confuses other programmers. Scott Bayes