[comp.sys.mac.hypercard] find with more than one backround

fkpj@vax5.CIT.CORNELL.EDU (01/08/89)

Hi
Make a stack with 2 backrounds
name them (say b1 and b2)
put a field in each backround
name them (say b1f and b2f)
make a few cards for each backround
put a different word in the field for each card

Now while on a card with backround 1 do a find (from message box or a script)
  find "someword" in field "b1f"
works fine
Now do the same thing while displaying a card with backround 2
with HC 1.2.1 I get the error
Never heard of bkg field "b1f"

I tried a similar thing with the field id with similar results
But things are a bit tricker
1)
  find "something" in field field id 1
     (where 1 is the id (not number) of the field on bkg 1)
   Supposing "something" is in the field for cards of bkg 1 the find works
   Do find again to continue search
   Suppose next instance of "something" is on a card of backround 2
   in my case find found "something" in  card field 2
   (ie it acted as if I had not attempted to limit the search)
   Doing the find again gave the Never heard error message
2)
  find "something" in field id 1
   find acted like the unlimited find (did not test this throughly)
   but it never switched backrounds.  
   that is if the find was issued on a card of bkg 1, 
   a card of bgk 2 was never found.
   And if issues on a card of bkg2 a card of bkg 1 was never found.
   Further if 1 was replace by (what I hope was a non existant field id)
   then find seemed to act like the unlimited find
   except that when after repeated finds it should have wrapped around
   to the first occurance it found 
   (not the first occurance in the stack in this case)
   it just found the last occurance again, and again and again.
   yet if using the same limited syntax I found "someotherword"
   it went right to that.

Compact did not change anything.

What is going on.
When I say  find "a" in field id 1   (or find "a" in field field id 1)
(which is correct?)
why does it get upset if that field id is not on the current backround?
The only unfailing way to limit find seems to be with the field number.
(this defeats what I had in mind, though I suppose I can work around it.)
???????????????????????????????

Comment.
Having looked at all the HC books in the bookstores, and seeing that they
say word for word almost identical things about hypertalk I conclude
that they are all copying what ever documentation is available from apple
and (flame) that they have not bothered to test very much out! (unflame)
For example  if they had tried to TEST the find command in it's various
permutations they would have wondered why you could limit it with   in field
but there was no mention of limiting it with   in card field
(ie in all the syntaxes given (in the books I have looked in) in card field 
is not mentioned as a limit)
yet !!!! on bottom of page 121 of the User's guide that comes with HC
it says that you can say  in card field  when using find.
(grumble grumble smoke .. 
  they makes these products with just enough detail to make you think they 
   knows what they are talking about
  So like a trusting fool eyes forks over my money
  And then when I has the need for the detail that my money supposedly got me
   its not there.
steam)

Opinion
HC is frusterating!  It offers so much promise.  But all too often,
after due consideration and playing and trying to make sure that i'm 
not trying to use HC like C or Forth or something,
I find that things can only be done by kludge in HC
because the HC "natural" way does not seem to work.
I conclude that hypertalk has not been implemented to it's logical conclusions
yet (I can alway hope)

Demand (:-))
Make undo work when editing scripts.
please, oh please.

Thanks for what ever help you may have to offer.
Todd Olson
olson@helios.tn.cornell.edu  (prefer this over above address for mail)
Physics Dept /Clark Hall
Cornell University  / Ithaca Ny 14850

robison@m.cs.uiuc.edu (01/11/89)

Re: find with more than one backround

I've had exactly the same problem.  Would anyone that knows the answer
send it to me too.

Arch D. Robison
University of Illinois at Urbana-Champaign
	
CSNET: robison@UIUC.CSNET
UUCP: {pur-ee,convex}!uiucdcs!robison
ARPA: robison@CS.UIUC.EDU (robison@UIUC.ARPA)