[comp.sys.mac.programmer] Forced Switching under MF

jayrajan@umn-cs.CS.UMN.EDU (Vijay Rajan) (01/19/89)

 I am involved in a project in which we want to use HyperCard as a
front end to a database and Expert System (Nextpert Object).
 In the system it would be desirable to switch, under Multifinder, to
one of the other programs at the user's request. For example at a
certain point in the database it may be necessary to transfer control
to HyperCard and show a particular card/stack.
 
 Does anybody know of a way to do this "forced" switching? LSC does it
when transferring control to it's debugger from the editor so it is
possible.

 I do realize that this "feature" may not be totally in line with the
Mac Interface Guidelines, think of it as an intellectual challenge if
this upsets you!

 I will appreciate any suggestions. Thanks


         Malcolm Pradhan

  P.S. please reply to address and not my name

siegel@endor.harvard.edu (Rich Siegel) (01/19/89)

In article <10884@umn-cs.CS.UMN.EDU> jayrajan@umn-cs.CS.UMN.EDU (Vijay Rajan) writes:

> Does anybody know of a way to do this "forced" switching? LSC does it

	You can switch to any other opened application by calling OpenDeskAcc()
with the application's name.

	[Think about this for a minute, and you'll understand why it works.
	Neat, eh?]

		--Rich


Rich Siegel
Staff Software Developer
THINK Technologies Division, Symantec Corp.
Internet: siegel@endor.harvard.edu
UUCP: ..harvard!endor!siegel
Phone: (617) 275-4800 x305

Any opinions stated in this article do not necessarily reflect the views
or policies of Symantec Corporation or its employees.

goldman@Apple.COM (Phil Goldman) (01/20/89)

In article <1020@husc6.harvard.edu> siegel@endor.UUCP (Rich Siegel) writes:
>In article <10884@umn-cs.CS.UMN.EDU> jayrajan@umn-cs.CS.UMN.EDU (Vijay Rajan) writes:
>
>> Does anybody know of a way to do this "forced" switching? LSC does it
>
>	You can switch to any other opened application by calling OpenDeskAcc()
>with the application's name.
>
>	[Think about this for a minute, and you'll understand why it works.
>	Neat, eh?]

This will work fine, but a better method is to simply call _Launch on
the target application.  If it is running it will be switched to.  If
not, it will launch it and then switch.

The only caveat to this is that it is not supported in MF 1.0, so yo
might want to use the _OpenDeskAcc method if you need to be compatible
with System 5.0.

-Phil Goldman
Apple Computer