Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!sri-unix!sri-spam!ames!ucbcad!ucbvax!decvax!decwrl!sun!cmcmanis From: cmcmanis@sun.UUCP Newsgroups: comp.sys.amiga Subject: Re: Rapid Stimulus Displaying on the Amiga Help Message-ID: <17730@sun.uucp> Date: Thu, 30-Apr-87 13:55:42 EDT Article-I.D.: sun.17730 Posted: Thu Apr 30 13:55:42 1987 Date-Received: Sat, 2-May-87 01:28:44 EDT References: <912@watcgl.UUCP> <5645@eddie.MIT.EDU> Distribution: comp Organization: Sun Microsystems, Inc. - Mtn View, CA Lines: 36 Keywords: Fast, Screen, Window, RastPort, etc displays Summary: Use IDCMP Messages In article <5645@eddie.MIT.EDU>, gary@eddie.MIT.EDU (Gary Samad) writes: > In article <912@watcgl.UUCP> fdfishman@watcgl.UUCP writes: >> >> 2)We also tried to use the WindowToFront(), but this does not appear to be >> "Instant", since we could see each plane get copied, and we get a fade in >> effect ... > Unfortunately, you're right about this one. WindowToFront and WindowToBack > and a few others actually only REQUEST that the window be moved to the front > (or whatever) and return immediately... > ...Anyone have a solution (even just some > way to wait until the requested action has really been performed)? > Gary The simplest way to do this is to wait for the IDCMP message ACTIVEWINDOW for activating the window. So your code goes (Note this is psuedo code I don't have the manuals in front of me, check calling arguments against the Rom Kernel Manual) ... ModifyIDCMP(MyWindow,ACTIVEWINDOW); WindowToFront(MyWindow); WaitPort(MyWindow->UserPort); msg = (struct IntuiMessage *)GetMsg(MyWindow->UserPort); /* Should be an ACTIVEWINDOW message */ --- Check for it here --- ReplyMsg(msg); /* Reply to it! */ ModifyIDCMP(MyWindow,NOACTIVEWINDOW); I don't know if there are IDCMP messages for your window coming to the front but I thing there are. -- --Chuck McManis uucp: {anywhere}!sun!cmcmanis BIX: cmcmanis ARPAnet: cmcmanis@sun.com These views are my own and no one elses. They could be yours too, just call MrgCop() and then ReThinkDisplay()!