Changeset 33

Show
Ignore:
Timestamp:
01/17/05 14:47:14 (4 years ago)
Author:
bart
Message:

Added the screensaver check interval option

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/AgentController.m

    r28 r33  
    692692        NSPipe *thePipe; 
    693693        NSString *theOutput; 
     694        int interval; 
    694695         
    695696        while(1) 
     
    731732                } 
    732733                 
    733                 sleep(30); 
     734                interval = [[NSUserDefaults standardUserDefaults] integerForKey:checkScreensaverIntervalString]; 
     735                                 
     736                if(interval < 5) 
     737                { 
     738                        interval = 5; 
     739                } 
     740                 
     741                if(interval > 100) 
     742                { 
     743                        interval = 100; 
     744                } 
     745                 
     746                sleep(interval); 
    734747                [pool release]; 
    735748        } 
  • trunk/Controller.m

    r28 r33  
    5858                        [NSArray arrayWithObjects:@"~/.ssh/identity", @"~/.ssh/id_dsa", nil], 
    5959                        @"NO", 
     60                        @"30", 
    6061                        nil 
    6162                ] 
     
    7475                        @"Keys", 
    7576                        manageGlobalEnvironmentString, 
     77                        checkScreensaverIntervalString, 
    7678                        nil 
    7779                ] 
  • trunk/English.lproj/Preferences.nib/classes.nib

    r26 r33  
    7777        { 
    7878            ACTIONS = { 
     79                changeCheckScreensaverInterval = id;  
    7980                changeMinutesOfSleep = id;  
     81                changeOnScreensaver = id;  
    8082                changeOnSleep = id;  
     83                myAction = id;  
    8184                toggleCustomSecuritySettings = id;  
    8285            };  
     
    8689                addKeysOnConnection = id;  
    8790                askForConfirmation = id;  
     91                checkScreensaverInterval = id;  
     92                checkScreensaverIntervalTextfield = id;  
    8893                customSecuritySettingsView = id;  
    8994                followKeychain = id;  
  • trunk/English.lproj/Preferences.nib/info.nib

    r26 r33  
    44<dict> 
    55        <key>IBDocumentLocation</key> 
    6         <string>49 28 388 356 0 0 1024 746 </string> 
     6        <string>32 390 388 356 0 0 1024 746 </string> 
    77        <key>IBEditorPositions</key> 
    88        <dict> 
    99                <key>1065</key> 
    10                 <string>485 529 416 112 0 0 1440 878 </string> 
     10                <string>304 452 416 112 0 0 1024 746 </string> 
    1111                <key>640</key> 
    12                 <string>466 452 454 266 0 0 1440 878 </string> 
     12                <string>170 32 495 292 0 0 1024 746 </string> 
    1313                <key>722</key> 
    1414                <string>446 468 495 234 0 0 1440 878 </string> 
     
    2626                <string>446 468 495 234 0 0 1440 878 </string> 
    2727                <key>909</key> 
    28                 <string>447 465 495 234 0 0 1440 878 </string> 
     28                <string>56 312 495 234 0 0 1024 746 </string> 
    2929        </dict> 
    3030        <key>IBFramework Version</key> 
    3131        <string>364.0</string> 
     32        <key>IBOpenObjects</key> 
     33        <array> 
     34                <integer>909</integer> 
     35                <integer>640</integer> 
     36        </array> 
    3237        <key>IBSystem Version</key> 
    33         <string>7R28</string> 
     38        <string>7S215</string> 
    3439</dict> 
    3540</plist> 
  • trunk/PreferenceController.h

    r17 r33  
    1717#define useGlobalEnvironmentString @"Use Global Environment ~/.MacOSX/environment.plist" 
    1818#define useCustomSecuritySettingsString @"Use Custom Security Settings" 
     19#define checkScreensaverIntervalString @"Check Screensaver Interval" 
    1920 
    2021@interface PreferenceController : NSObject  
  • trunk/PreferenceController.m

    r29 r33  
    116116        frame.origin.y -= newHeight + toolbarHeight; 
    117117        frame.size.height = newHeight + toolbarHeight; 
    118         // We only resized larger to fit the Dynamic Ports tab, but that tab is gone on Jaguar 
    119         // So lets use the old size on Jaguar as well 
    120         if (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_2) { 
    121                 frame.size.width = 475; 
    122         } else { 
    123                 frame.size.width = 500; 
    124         } 
     118        frame.size.width = 475; 
    125119         
    126120        frame = [NSWindow frameRectForContentRect:frame styleMask:[window styleMask]]; 
  • trunk/PreferenceViews/SecurityView.h

    r3 r33  
    77 
    88        /* Custom Security Settings View. */ 
    9         IBOutlet id addKeysOnConnection, askForConfirmation, followKeychain, onScreensaver, onSleep, minutesOfSleep, minutesOfSleepTextfield; 
     9        IBOutlet id addKeysOnConnection, askForConfirmation, followKeychain, onScreensaver, onSleep; 
     10        IBOutlet id minutesOfSleep, minutesOfSleepTextfield, checkScreensaverInterval, checkScreensaverIntervalTextfield; 
    1011} 
    1112 
     
    1314- (IBAction)changeMinutesOfSleep:(id)sender; 
    1415 
     16- (IBAction)changeOnScreensaver:(id)sender; 
     17- (IBAction)changeCheckScreensaverInterval:(id)sender; 
     18 
    1519- (IBAction)toggleCustomSecuritySettings:(id)sender; 
    1620 
  • trunk/PreferenceViews/SecurityView.m

    r18 r33  
    1212 
    1313        [minutesOfSleepTextfield setRefusesFirstResponder:YES]; 
     14        [checkScreensaverIntervalTextfield setRefusesFirstResponder:YES]; 
    1415 
    1516        [addKeysOnConnection setState:[[NSUserDefaults standardUserDefaults] boolForKey:addKeysOnConnectionString]]; 
     
    2324        { 
    2425                [minutesOfSleep setEnabled:YES]; 
     26                [minutesOfSleepTextfield setEnabled:YES]; 
    2527        } 
    2628         
     
    2830        { 
    2931                [minutesOfSleep setEnabled:NO]; 
     32                [minutesOfSleepTextfield setEnabled:NO]; 
    3033        } 
    3134         
    3235        [minutesOfSleepTextfield setIntValue:[prefs integerForKey:minutesOfSleepString]]; 
    3336        [minutesOfSleep setIntValue:[prefs integerForKey:minutesOfSleepString]]; 
     37         
     38        if([prefs integerForKey:onScreensaverString] > 1) 
     39        { 
     40                [checkScreensaverInterval setEnabled:YES]; 
     41                [checkScreensaverIntervalTextfield setEnabled:YES]; 
     42        } 
     43         
     44        else 
     45        { 
     46                [checkScreensaverInterval setEnabled:NO]; 
     47                [checkScreensaverIntervalTextfield setEnabled:NO]; 
     48        } 
     49 
     50        [checkScreensaverIntervalTextfield setIntValue:[prefs integerForKey:checkScreensaverIntervalString]]; 
     51        [checkScreensaverInterval setIntValue:[prefs integerForKey:checkScreensaverIntervalString]]; 
    3452 
    3553        [useCustomSecuritySettings setState:[[NSUserDefaults standardUserDefaults] boolForKey:useCustomSecuritySettingsString]]; 
     
    5977                [prefs setInteger:[[followKeychain selectedItem] tag] forKey:followKeychainString]; 
    6078                [prefs setInteger:[minutesOfSleepTextfield intValue] forKey:minutesOfSleepString]; 
     79                 
     80                [prefs setInteger:[checkScreensaverIntervalTextfield intValue] forKey:checkScreensaverIntervalString]; 
    6181        }  
    6282 
     
    7090                [prefs setInteger:4 forKey:followKeychainString]; 
    7191                [prefs setInteger:0 forKey:minutesOfSleepString]; 
     92                [prefs setInteger:30 forKey:checkScreensaverIntervalString]; 
    7293        } 
    7394 
     
    120141                [prefs setInteger:4 forKey:onScreensaverString]; 
    121142                [prefs setInteger:4 forKey:followKeychainString]; 
    122                 [prefs setInteger:0 forKey:minutesOfSleepString]; 
     143                [prefs setInteger:0 forKey:minutesOfSleepString];                
     144                [prefs setInteger:30 forKey:checkScreensaverIntervalString]; 
    123145 
    124146                [prefs synchronize]; 
     
    134156                { 
    135157                        [minutesOfSleep setEnabled:YES]; 
     158                        [minutesOfSleepTextfield setEnabled:YES]; 
    136159                } 
    137160         
     
    139162                { 
    140163                        [minutesOfSleep setEnabled:NO]; 
     164                        [minutesOfSleepTextfield setEnabled:NO]; 
    141165                } 
    142166         
    143167                [minutesOfSleepTextfield setIntValue:[prefs integerForKey:minutesOfSleepString]]; 
    144168                [minutesOfSleep setIntValue:[prefs integerForKey:minutesOfSleepString]]; 
     169                 
     170                if([prefs integerForKey:onScreensaverString] > 1) 
     171                { 
     172                        [checkScreensaverInterval setEnabled:YES]; 
     173                        [checkScreensaverIntervalTextfield setEnabled:YES]; 
     174                } 
     175         
     176                else 
     177                { 
     178                        [checkScreensaverInterval setEnabled:NO]; 
     179                        [checkScreensaverIntervalTextfield setEnabled:NO]; 
     180                } 
     181                 
     182                [checkScreensaverIntervalTextfield setIntValue:[prefs integerForKey:checkScreensaverIntervalString]]; 
     183                [checkScreensaverInterval setIntValue:[prefs integerForKey:checkScreensaverIntervalString]]; 
     184 
    145185        } 
    146186} 
     
    168208} 
    169209 
     210/* When the On Screensaver option is toggled, the checkScreensaverInterval box needs to be greyed out or displayed. */ 
     211- (IBAction)changeOnScreensaver:(id)sender 
     212{ 
     213        if([[sender selectedItem] tag] > 1)  
     214        { 
     215                [checkScreensaverInterval setEnabled:YES]; 
     216                [checkScreensaverIntervalTextfield setEnabled:YES]; 
     217        } 
     218         
     219        else 
     220        { 
     221                [checkScreensaverInterval setEnabled:NO]; 
     222                [checkScreensaverIntervalTextfield setEnabled:NO]; 
     223        } 
     224} 
     225 
     226/* The seconds of screensaver check interval slidebar has changed. */ 
     227- (IBAction)changeCheckScreensaverInterval:(id)sender 
     228{ 
     229        int seconds = [sender intValue]; 
     230         
     231        if(seconds < 5) 
     232        { 
     233                seconds = 5; 
     234        } 
     235         
     236        if(seconds > 100)  
     237        { 
     238                seconds = 100; 
     239        } 
     240         
     241        if(sender == checkScreensaverInterval) 
     242        { 
     243                [checkScreensaverIntervalTextfield setIntValue:seconds]; 
     244        } 
     245         
     246        else if(sender == checkScreensaverIntervalTextfield) 
     247        { 
     248                [checkScreensaverIntervalTextfield setIntValue:seconds]; 
     249                [checkScreensaverInterval setIntValue:seconds]; 
     250        } 
     251} 
     252 
    170253@end