31239f2a8165dff0f0ca37c913e9f918246c6c2d
[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         bool currentLinkActivationStatus;
41         NSMutableDictionary *linkConfiguration;
42         NSLock *linkCreationLock;
43 }
44 - (void)startTimer;
45 - (void)stopTimer;
46 - (BOOL)useAklogPrefValue;
47 - (void)readPreferenceFile:(NSNotification *)notification;
48 - (void)getToken:(id)sender;
49 - (void)releaseToken:(id)sender;
50 - (void)updateAfsStatus:(NSTimer*)timer;
51 - (void)klogUserEven:(NSNotification *)notification;
52 - (void)switchHandler:(NSNotification*) notification;
53 - (void)chageMenuVisibility:(NSNotification *)notification;
54 - (NSImage*)getImageFromBundle:(NSString*)fileName fileExt:(NSString*)ext;
55 - (NSImage*)imageToRender;
56 - (void)menuNeedsUpdate:(NSMenu *)menu;
57 - (void)repairHelperTool;
58 - (void) afsVolumeMountChange:(NSNotification *)notification;
59 - (void) updateLinkModeStatusWithpreferenceStatus:(BOOL)status;
60 -(NSStatusItem*)statusItem;
61 -(void) setStatusItem:(BOOL)show;
62 -(NSImage*)imageToRender;
63 -(IBAction) startStopEvent:(id)sender;
64 -(IBAction) getReleaseTokenEvent:(id)sender;
65 @end