http://www.newton-inc.com/dev/techinfo/qa/qa.htm
GetAppPrefs
to get the prefs for that application for read-only purposes. Only the documented slots in that frame should be accessed. Other slots are neither documented nor supported, and their behavior may change. You should also check to ensure that the Home Page application exists on a particular unit before using any features. For example, here is a code snippet that evaluates to an array of user names, or NIL if the unit does not support multiple users or is not in multi-user mode. if GetRoot().HomePage then
begin
local prefs := GetAppPrefs('HomePage, '{});
if prefs.users and prefs.kMultipleUsers then
foreach item in prefs.users collect item.name;
end;
kMultipleUsers
: non-nil if multi-user mode is enabledkRequirePassword
non-nil if passwords required in multi-user modekDisallowNewUsers
non-nil if new users can't be created at loginusers
array of user frames or NIL.name
a string, the user-visible user's nameRegUserConfigChange
and watching for the 'kCurrentUser
slot to change will let you catch changes to the current set of multi-user names.