| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- Strict
- Import BRL.Event
- Import "driver.bmx"
- Import "system.macos.m"
- Extern
- Function bbSystemStartup()
- Function bbSystemPoll()
- Function bbSystemWait()
- Function bbSystemIntr()
- Function bbSystemMoveMouse( x,y )
- Function bbSystemSetMouseVisible( visible )
- Function bbSystemNotify( text$,serious )
- Function bbSystemConfirm( text$,serious )
- Function bbSystemProceed( text$,serious )
- Function bbSystemRequestFile$( text$,exts$,save,file$,dir$ )
- Function bbSystemRequestDir$( text$,dir$ )
- Function bbOpenURL( url$ )
- Function bbSystemPostSyncOp( syncOp( syncInfo:Object,asyncRet ),syncInfo:Object,asyncRet )
- Function bbSystemStartAsyncOp( asyncOp( asyncInfo ),asyncInfo,syncOp( syncInfo:Object,asyncRet ),syncInfo:Object )
- End Extern
- Private
- Function Hook:Object( id,data:Object,context:Object )
- bbSystemIntr
- Return data
- End Function
- AddHook EmitEventHook,Hook,Null,10000
- Public
- Type TMacOSSystemDriver Extends TSystemDriver
- Method New()
- bbSystemStartup
- End Method
- Method Poll()
- bbSystemPoll()
- End Method
-
- Method Wait()
- bbSystemWait()
- End Method
-
- Method MoveMouse( x,y )
- bbSystemMoveMouse x,y
- End Method
-
- Method SetMouseVisible( visible )
- bbSystemSetMouseVisible visible
- End Method
-
- Method Notify( text$,serious )
- bbSystemNotify text,serious
- End Method
-
- Method Confirm( text$,serious )
- Return bbSystemConfirm( text,serious )
- End Method
-
- Method Proceed( text$,serious )
- Return bbSystemProceed( text,serious )
- End Method
- Method RequestFile$( text$,exts$,save,path$ )
- Local file$,dir$,filter$
-
- path=path.Replace( "\","/" )
- Local i=path.FindLast( "/" )
- If i<>-1
- dir=path[..i]
- file=path[i+1..]
- Else
- file=path
- EndIf
-
- exts=exts.Replace( ";","," )
- While exts
- Local p=exts.Find(",")+1
- If p=0 p=exts.length
- Local q=exts.Find(":")+1
- If q=0 Or q>p q=0
- filter:+exts[q..p]
- exts=exts[p..]
- Wend
- If filter.find("*")>-1 filter=""
-
- Return bbSystemRequestFile( text,filter,save,file,dir )
- End Method
- Method RequestDir$( text$,dir$ )
- dir=dir.Replace( "\","/" )
- Return bbSystemRequestDir( text,dir )
- End Method
-
- Method OpenURL( url$ )
- ' Return system_( "open "" + url.Replace("~q","") + "~q" )
- bbOpenURL( url )
- End Method
-
- End Type
|