OSX AFSBackgrounder fix minor bug
[openafs.git] / src / platform / DARWIN / AFSPreference / AFSBackgrounder / AFSBackgrounderDelegate.h
1 //
2 //  AFSBackgrounder.h
3 //  OpenAFS
4 //
5 //  Created by Claudio Bisegni on 29/07/09.
6 //  Copyright 2009 Infn. All rights reserved.
7 //
8
9 #import <Cocoa/Cocoa.h>
10 #import "AFSMenuCredentialContoller.h"
11
12 @interface AFSBackgrounderDelegate : NSObject {
13 @public
14         IBOutlet NSMenu *backgrounderMenu;
15         IBOutlet NSMenuItem *startStopMenuItem;
16         IBOutlet NSMenuItem *getReleaseTokenMenuItem;
17         NSStatusItem    *statusItem;
18         
19
20         BOOL afsState; //0-off 1-on
21         BOOL gotToken; //0-no 1-one o more token
22         NSSize menuSize;
23         
24 @protected
25         AFSPropertyManager *afsMngr;
26         NSString *afsSysPath;
27         NSNumber *useAklogPrefValue;
28         NSNumber *showStatusMenu;
29         NSNumber *aklogTokenAtLogin;
30         //Icon for state visualization
31         NSImage *hasTokenImage;
32         NSImage *noTokenImage;
33         
34         //credential windows mainWindow
35         AFSMenuCredentialContoller *credentialMenuController;
36
37         //NSTimer for tokens refresh
38         NSTimer *timerForCheckTokensList;
39         NSLock *tokensLock;
40         
41 }
42 - (void)startTimer;
43 - (void)stopTimer;
44 - (BOOL)useAklogPrefValue;
45 - (void)readPreferenceFile:(NSNotification *)notification;
46 - (void)getToken:(id)sender;
47 - (void)releaseToken:(id)sender;
48 - (void)updateAfsStatus:(NSTimer*)timer;
49 - (void)klogUserEven:(NSNotification *)notification;
50 - (void)chageMenuVisibility:(NSNotification *)notification;
51 - (NSImage*)getImageFromBundle:(NSString*)fileName fileExt:(NSString*)ext;
52 - (NSImage*)imageToRender;
53 - (void)menuNeedsUpdate:(NSMenu *)menu;
54 - (void)repairHelperTool;
55 - (void) afsVolumeMountChange:(NSNotification *)notification;
56
57 -(NSStatusItem*)statusItem;
58 -(void) setStatusItem:(BOOL)show;
59 -(NSImage*)imageToRender;
60 -(IBAction) startStopEvent:(id)sender;
61 -(IBAction) getReleaseTokenEvent:(id)sender;
62 @end