I looked in the archives for a example of making a kiosk application
But the example I found; I couldn't make it work
Cmd-tab;force quit; shutdown; etc all still work
begin enum
_kUIModeNormal = 0
_kUIModeContentSuppressed = 1
_kUIModeContentHidden = 2
_kUIModeAllHidden = 3
end enum
begin enum
_kUIOptionAutoShowMenuBar = 1 << 0
_kUIOptionDisableAppleMenu = 1 << 2
_kUIOptionDisableProcessSwitch = 1 << 3
_kUIOptionDisableForceQuit = 1 << 4
_kUIOptionDisableSessionTerminate = 1 << 5
end enum
local fn DisableAppleMenu
dim as OSStatus stat
stat = fn SetSystemUIMode( _kUIModeNormal,_kUIOptionDisableAppleMenu )
end fn
local fn DisableProcessSwitching
dim as OSStatus stat
stat = fn SetSystemUIMode( _kUIModeContentHidden,¬
_kUIOptionDisableProcessSwitch )
end fn
local fn DisableForceQuit
dim as OSStatus stat
stat = fn SetSystemUIMode( _kUIModeContentHidden,¬
_kUIOptionDisableForceQuit )
end fn
local fn DisableShutdownLogoutRestart
dim as OSStatus stat
stat = fn SetSystemUIMode( _kUIModeContentHidden,¬
_kUIOptionDisableSessionTerminate )
end fn
library "Carbon"
toolbox fn IsMenuBarVisible = Boolean
toolbox ShowMenuBar
toolbox HideMenuBar
library
begin enum
_kUIModeNormal = 0
_kUIModeContentSuppressed = 1
_kUIModeContentHidden = 2
_kUIModeAllHidden = 3
end enum
begin enum
_kUIOptionAutoShowMenuBar = 1 << 0
_kUIOptionDisableAppleMenu = 1 << 2
_kUIOptionDisableProcessSwitch = 1 << 3
_kUIOptionDisableForceQuit = 1 << 4
_kUIOptionDisableSessionTerminate = 1 << 5
end enum
fn DisableAppleMenu
fn DisableProcessSwitching
fn DisableForceQuit
fn DisableShutdownLogoutRestart
_desktop = 1
HideMenuBar
HideCursor
dim desktopwidth,desktopheight as integer
dim as Rect r
desktopwidth = system(_scrnWidth)
desktopheight = system(_scrnHeight)
SetRect(r, 0,0,desktopwidth,desktopheight)
appearance window #_desktop,"BHOS",@r, _kPlainWindowClass
CALL BACKCOLOR(_zBlack)
CLS
do
HandleEvents
until ( gFBQuit )
ShowMenuBar
ShowCursor