[comp.sys.mac.programmer] bringing my application to the foreground

mikeoro@hubcap.clemson.edu (Michael K O'Rourke) (07/11/89)

If my program is suspended in the background under multifinder, what is
the proper way to bring it to the foreground.  If i receive an appletalk
packet while in the background, my application needs to become the 
foreground application.

Do i need to slap an event onto the event queue, is there some procedure
that i've never heard of? i thought about just calling my doSuspendResume
procedure with the message field set so it thinks i am being un-suspended,
but i'm not sure what, if any, events should happen before that.  And no,
I do not have the multifinder development package.  And yes, i would like it
but i can't afford it, i'm a poor college student who doesn't have much
money at the present time.

Michael O'Rourke

jkjl@munnari.oz.au (John Keong-Jin Lim) (07/12/89)

In article <5971@hubcap.clemson.edu> mikeoro@hubcap.clemson.edu (Michael K O'Rourke) writes:
>If my program is suspended in the background under multifinder, what is
>the proper way to bring it to the foreground.  If i receive an appletalk

The way i do it is :

	OpenDeskAcc(CurApName); /* CurApName = low mem global stating
				application name */

The correct way is to use the notification manager to alert the user. The above
is a *hack* which I only used to test moire to ensure that version 3.0 can
handle such punishment. 

	john lim

ps : moire 3 should be out by the end of the month.

wdh@well.UUCP (Bill Hofmann) (07/13/89)

In article <5971@hubcap.clemson.edu> mikeoro@hubcap.clemson.edu (Michael K O'Rourke) writes:
>If my program is suspended in the background under multifinder, what is
>the proper way to bring it to the foreground.  If i receive an appletalk
>packet while in the background, my application needs to become the 
>foreground application.
Do you have to become foreground or just notify the user?  If notification
is all you need, use the notification manager (there's a tech note, 184, I 
think).  I also recall reading in some Apple doc about the "standard" way
of bringing yourself to the front.  It said that the easiest way to do this
is to Launch() yourself.  Note, though, that this is a pretty user-unfriendly
thing to do...

-Bill Hofmann

dave@suna.CMI.COM (David Halonen) (07/13/89)

Use GetAppParms to obtain the name of your application.  Then when you
need to become the foreground app, do an OpenDeskAcc on that name.



-- 
David Halonen, Center for Machine Intelligence, Electronic Data Systems
Ann Arbor, MI  (313) 995-0900
AppleLink: N0548   Internet: dave@suna.cmi.com