Support multiple accounts. Bug fixes. Improve concurrency.
[pithos-macos] / pithos-macos / PithosPreferencesController.h
index c14d19a..5fd4245 100644 (file)
@@ -2,7 +2,7 @@
 //  PithosPreferencesController.h
 //  pithos-macos
 //
-// Copyright 2011 GRNET S.A. All rights reserved.
+// Copyright 2011-2012 GRNET S.A. All rights reserved.
 //
 // Redistribution and use in source and binary forms, with or
 // without modification, are permitted provided that the following
 
 #import <Cocoa/Cocoa.h>
 @class PithosBrowserController;
+@class PithosAccount;
 
 @interface PithosPreferencesController : NSWindowController <NSWindowDelegate> {
     PithosBrowserController *pithosBrowserController;
+    PithosAccount *selectedPithosAccount;
     
-    NSDictionaryController *groupsDictionaryController;
-    NSDictionaryController *selectedGroupMembersDictionaryController;
+    NSArrayController *accountsArrayController;
     
+    BOOL accountRemoveEnable;
+    
+    NSString *serverURL;
+    NSString *authUser;
+    NSString *authToken;
     BOOL manual;
+    BOOL loginEnable;
+    BOOL loginCancelEnable;
+    
+    BOOL syncActive;
+    NSString *syncDirectoryPath;
+    BOOL syncApplyEnable;
+    BOOL syncCancelEnable;
+    
+    NSDictionaryController *groupsDictionaryController;
+    NSDictionaryController *selectedGroupMembersDictionaryController;
 }
 
 @property (nonatomic, assign) IBOutlet PithosBrowserController *pithosBrowserController;
+@property (nonatomic, retain) PithosAccount *selectedPithosAccount;
+
+@property (nonatomic, assign) IBOutlet NSArrayController *accountsArrayController;
+
+@property (nonatomic, assign) BOOL accountRemoveEnable;
+
+@property (nonatomic, retain) NSString *serverURL;
+@property (nonatomic, retain) NSString *authUser;
+@property (nonatomic, retain) NSString *authToken;
+@property (nonatomic, assign) BOOL manual;
+@property (nonatomic, assign) BOOL loginEnable;
+@property (nonatomic, assign) BOOL loginCancelEnable;
+
+@property (nonatomic, assign) BOOL syncActive;
+@property (nonatomic, retain) NSString *syncDirectoryPath;
+@property (nonatomic, assign) BOOL syncApplyEnable;
+@property (nonatomic, assign) BOOL syncCancelEnable;
 
 @property (nonatomic, assign) IBOutlet NSDictionaryController *groupsDictionaryController;
 @property (nonatomic, assign) IBOutlet NSDictionaryController *selectedGroupMembersDictionaryController;
 
-@property (nonatomic, assign) BOOL manual;
+//- (IBAction)toolbarItemSelected:(id)sender;
 
-- (IBAction)toolbarItemSelected:(id)sender;
+- (IBAction)addAccount:(id)sender;
+- (IBAction)removeAccount:(id)sender;
+- (IBAction)login:(id)sender;
+- (IBAction)loginCancel:(id)sender;
+- (IBAction)syncApply:(id)sender;
+- (IBAction)syncCancel:(id)sender;
+- (IBAction)groupsApply:(id)sender;
+- (IBAction)groupsRevert:(id)sender;
 
-- (IBAction)authenticationLogin:(id)sender;
 
 @end