[comp.sys.mac.programmer] A few Q's from a novice...

farmer@ecs.umass.edu (THE MAD MUSKRAT) (09/05/90)

----------------------------------------------------------------------
-------------------->>>  Novice Alert <<<-----------------------------
----------------------------------------------------------------------
I need some basic help from all those Mac programming wiz's out there...

A few Q's:

1)	How do most people handle updating the contents of a window when 
something in front of the window disappears (another window, dialog, etc)?  
Do you use off-screen copies of the contents of your windows?  Some funky 
data structure?  What??  (I'm using Think Pascal).

2)	I know a reasonable amount of "ordinary" pascal (functions, 
procedures, blah blah) but not much about object oriented programming 
(honestly, I know nothing about OOP)?  What is a good place to learn about 
it??  Are there any good books??  Tutorials??

3)	Just what is MacApp??  I'm really clueless here!  I know it's useful, 
important, etc., but what does it do??  Get basic (not the language, please) 
with me.

Thanks for your time, in advance.  Please send your replies to me (don't 
bother wasting net time, unless your speaking God's own word).  Anyone who 
wants copies of the replies, just drop me a note.

Matt Farmer
(aka The Mad Muskrat)

Internet:	Farmer@ecs.umass.edu
Bitnet:		MFarmer@umass
Snail:		Matthew Farmer
 		3 New Fort River Apts.
 		Amherst, MA 01002   (USA)

dorner@pequod.cso.uiuc.edu (Steve Dorner) (09/05/90)

>1)	How do most people handle updating the contents of a window when 
>something in front of the window disappears (another window, dialog, etc)?  
>Do you use off-screen copies of the contents of your windows?  Some funky 
>data structure?

I use a "funky data structure".  Whatever you use, it's a good idea to do
ALL your drawing in response to update events (unless you're doing animation
of some kind).  Then, when you want to redraw a particular thing (because it
has changed, perhaps), you merely Inval{Rect,Rgn} it, and the system will
eventually send you an update event for it, at which time you can draw
what needs to be drawn.

This approach WILL simplify your life, at least a little.

Steve
--
Steve Dorner, U of Illinois Computing Services Office
Internet: s-dorner@uiuc.edu  UUCP: uunet!uiucuxc!uiuc.edu!s-dorner

pepke@gw.scri.fsu.edu (Eric Pepke) (09/06/90)

In article <1990Sep5.162541.27771@ux1.cso.uiuc.edu> 
dorner@pequod.cso.uiuc.edu (Steve Dorner) writes:
> Whatever you use, it's a good idea to do
> ALL your drawing in response to update events (unless you're doing 
animation
> of some kind).

I pretty much agree, except for one case: redrawing scroll bars and the 
growIcon when the window is resized.  Although it is perfectly possibly to 
do this via the update mechanism, doing it immediately upon a resize can 
really boost the crispness of the response.

Eric Pepke                                    INTERNET: pepke@gw.scri.fsu.edu
Supercomputer Computations Research Institute MFENET:   pepke@fsu
Florida State University                      SPAN:     scri::pepke
Tallahassee, FL 32306-4052                    BITNET:   pepke@fsu

Disclaimer: My employers seldom even LISTEN to my opinions.
Meta-disclaimer: Any society that needs disclaimers has too many lawyers.