[futurebasic] Re: [FB] [FBII][PG:PRO] AppleEvent.FLTR

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : November 1999 : Group Archive : Group : All Groups

From: Charlie Dickman <charlied@...>
Date: Sun, 28 Nov 1999 19:26:02 -0500
>Can anyone tell me why FN AElistProcesses does not work correctly when my
>application is in the background. (It works fine in the forground...)
>
>Better yet, can anyone tell me how to use it properly while my app is in the
>background? Or, how do I force my app to the foreground?
>
>
>Cheers,

Michael,

Not knowing your environment I can't be sure but it may not be in the 
best interests of your user to bring your application to the front 
when she doesn't summon it. Nonetheless, you can use the following 
record definitions and functions to bring your app to the front. Call 
TAppinFront first to be sure that yours is not the front process 
then, if it's not, call TApptoFront.

Good luck,

Charlie Dickman
charlied@...


'
' process manager globals
'

' ___________________________________
'

DIM RECORD procSerNumRec
   DIM psnHigh&
   DIM psnLow&
DIM END RECORD.procSerNumRecSize

DIM RECORD sfReply
   DIM sfOK%
   DIM sfKind&
   DIM sfVRefNum%
   DIM sfVers%
   DIM 63 sfName$
DIM END RECORD.sfReplySz

DIM RECORD procInfoRec
   DIM pInfoLen&
   DIM pNamePtr&
   DIM pNumber;_procSerNumRecSize
   DIM pType&
   DIM pSignature&
   DIM pMode&
   DIM pLocation&
   DIM pSize&
   DIM pFreeMem&
   DIM pLauncher;_procSerNumRecSize
   DIM pLaunchDate&
   DIM pActiveTime&
   DIM pAppSpec&
DIM END RECORD.procInfoRecSize


CLEAR LOCAL FN TAppInFront
   DIM process.procSerNumRecSize
   DIM tProcess.procSerNumRecSize
   DIM osErr%, sameProc
   process.psnHigh& = 0
   process.psnLow&  = _kNoProcess
   tProcess.psnHigh& = 0
   tProcess.psnLow&  = _kCurrentProcess
   osErr% = FN GetCurrentProcess(tProcess)
   osErr% = FN GetFrontProcess(process)
   osErr% = FN SameProcess(tProcess, process, sameProc)
END FN = sameProc

CLEAR LOCAL FN TAppToFront
   DIM osErr%, tProcess.procSerNumRecSize
   tProcess.psnHigh& = 0
   tProcess.psnLow&  = _kCurrentProcess
   osErr% = FN GetCurrentProcess(tProcess)
   osErr% = FN SetFrontProcess(tProcess)
END FN

Charlie Dickman
charlied@...