Path: utzoo!utgpu!water!watmath!watdragon!watsol!bmacintyre
From: bmacintyre@watsol.waterloo.edu (Blair MacIntyre)
Newsgroups: comp.sys.amiga
Subject: Re: Double Buffering and the Menu Strip
Message-ID: <8597@watdragon.waterloo.edu>
Date: 21 Sep 88 15:55:33 GMT
References: <4148@louie.udel.EDU>
Sender: daemon@watdragon.waterloo.edu
Reply-To: bmacintyre@watsol.waterloo.edu (Blair MacIntyre)
Organization: UofW Centre for the New OED
Lines: 38

In article <4148@louie.udel.EDU> iphwk%MTSUNIX1.BITNET@cunyvm.cuny.edu (Bill Kinnersley) writes:
>
>and here is how I double buffer:
>
>        vp->RasInfo->BitMap = bm[tog];
>        WaitTOF();
>        ScrollVPort(vp);
         ^^^^^^^^^^^
>        tog ^= 1;
>        rp->BitMap = bm[tog];

I don't think this is an intelligent way of doing this.  What you should be
doing is ( this is from memory, I'm at work doncha' know )

	Makescreen(s);
	RethinkDisplay();	<-- there are two different Intuition functions
				    to redo the display.  You want to use the
				    less encompasing, faster one here ...
 
>Is there something else I should be toggling (in the Layer_Info perhaps?)
>to keep the menu system informed which bitmap is the current one?

This should do it.  The Rethinkdisplay ( or ReMakeDisplay ... I can't remember
which is the more appropriate ) should redo everything.  I've been playing
with double buffering lately and this is the *only* Intuition compatible way
of doing it ... as far as I can tell.

Course, I've been using it for my 3D graphics package (which is coming along
fine, thank-you-very-much) so I haven't been using menus.  This had better
work though, or Intuition is severely brain-dead ... :-) :-)

Blair "next ... surface mesh's ..."

--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
= Mr. Blair MacIntyre (bmacintyre@watsol.waterloo.edu)                        =
= Using computers is like parachuting ... if you don't get it the first time, =
= chances are you won't try it again.                                         =