From: Andrew M. <fit...@us...> - 2006-04-24 15:20:19
|
Update of /cvsroot/radmind/radmind-assistant In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13665 Modified Files: RCMPreferences.h RCMPreferences.m Log Message: Added sessionrights interface to Advanced pane. Index: RCMPreferences.m =================================================================== RCS file: /cvsroot/radmind/radmind-assistant/RCMPreferences.m,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** RCMPreferences.m 24 Apr 2006 14:40:40 -0000 1.42 --- RCMPreferences.m 24 Apr 2006 15:20:16 -0000 1.43 *************** *** 10,13 **** --- 10,18 ---- #import "UMLoginItem.h" + #include <Security/Authorization.h> + #include <Security/AuthorizationDB.h> + + #include "sessionrights.h" + #define RADMIND_CASE_INSENSITIVITY_VERSION 151 *************** *** 1353,1356 **** --- 1358,1408 ---- } + - ( IBAction )toggleSessionRights: ( id )sender + { + if ( [ sender state ] == NSOffState ) { + if ( ! removeright( RADMIND_RIGHT_GENERIC )) { + NSLog( @"Failed to remove right" ); + return; + } + [ prefTimeoutStepper setEnabled: YES ]; + } else if ( [ sender state ] == NSOnState ) { + int timeout = [ prefTimeoutField intValue ]; + + if ( timeout == INT_MAX || timeout == INT_MIN ) { + NSBeep(); + [ sender setState: NSOffState ]; + NSLog( @"Invalid timeout value %@", + [ prefTimeoutField stringValue ] ); + return; + } + + /* timeout value in auth db is in seconds */ + timeout *= 60; + + if ( AuthorizationRightGet( RADMIND_RIGHT_GENERIC, NULL ) + == errAuthorizationSuccess ) { + NSLog( @"%s is already in auth db", RADMIND_RIGHT_GENERIC ); + return; + } + + if ( ! setright( RADMIND_RIGHT_GENERIC, timeout )) { + NSLog( @"Failed to set right" ); + return; + } + + [ prefTimeoutStepper setEnabled: NO ]; + } + } + + - ( IBAction )setAuthorizationTimeout: ( id )sender + { + if ( ! [ sender isKindOfClass: [ NSStepper class ]] ) { + NSBeep(); + return; + } + + [ prefTimeoutField setIntValue: [ sender intValue ]]; + } + - ( IBAction )addRadmindServerToTable: ( id )sender { *************** *** 1448,1452 **** { NSOpenPanel *op = [ NSOpenPanel openPanel ]; - NSUserDefaults *defaults = [ NSUserDefaults standardUserDefaults ]; [ op setTitle: NSLocalizedString( @"Choose an Alternate Transcript Editor", --- 1500,1503 ---- Index: RCMPreferences.h =================================================================== RCS file: /cvsroot/radmind/radmind-assistant/RCMPreferences.h,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** RCMPreferences.h 8 Mar 2006 18:32:26 -0000 1.24 --- RCMPreferences.h 24 Apr 2006 15:20:16 -0000 1.25 *************** *** 76,79 **** --- 76,82 ---- IBOutlet NSView *advancedPrefsView; IBOutlet NSTextField *prefGlobalPreferencesDateField; + IBOutlet NSButton *prefDefineRightsSwitch; + IBOutlet NSTextField *prefTimeoutField; + IBOutlet NSStepper *prefTimeoutStepper; @private *************** *** 124,127 **** --- 127,132 ---- /* advanced prefs actions */ + - ( IBAction )toggleSessionRights: ( id )sender; + - ( IBAction )setAuthorizationTimeout: ( id )sender; - ( IBAction )setGlobalPreferences: ( id )sender; |