Revision 74314fd6

b/pithos-macos.xcodeproj/project.pbxproj
44 44
		613629B5143E0F8B00363787 /* GroupMembersDictionaryTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 613629B4143E0F8B00363787 /* GroupMembersDictionaryTransformer.m */; };
45 45
		613629B9143E51E000363787 /* GroupAndGroupMemberFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = 613629B8143E51E000363787 /* GroupAndGroupMemberFormatter.m */; };
46 46
		6139837113EFEECC004CE444 /* FileSystemBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 6139837013EFEECC004CE444 /* FileSystemBrowserCell.m */; };
47
		613BA8631461520E00FACAA5 /* NonEmptyStringFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = 613BA8621461520E00FACAA5 /* NonEmptyStringFormatter.m */; };
47 48
		61433BC9141BA1CE00CD978D /* HashMapHash.m in Sources */ = {isa = PBXBuildFile; fileRef = 61433BC8141BA1CE00CD978D /* HashMapHash.m */; };
48 49
		614592BC1417CE70002E7A8C /* ASIPithosAccount.m in Sources */ = {isa = PBXBuildFile; fileRef = 614592BB1417CE70002E7A8C /* ASIPithosAccount.m */; };
49 50
		6152D08C143200CC00803874 /* PithosSharingAccountsNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 6152D08B143200CC00803874 /* PithosSharingAccountsNode.m */; };
......
154 155
		613629B8143E51E000363787 /* GroupAndGroupMemberFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GroupAndGroupMemberFormatter.m; path = "pithos-macos/GroupAndGroupMemberFormatter.m"; sourceTree = "<group>"; };
155 156
		6139836F13EFEECC004CE444 /* FileSystemBrowserCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileSystemBrowserCell.h; path = "pithos-macos/FileSystemBrowserCell.h"; sourceTree = "<group>"; };
156 157
		6139837013EFEECC004CE444 /* FileSystemBrowserCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileSystemBrowserCell.m; path = "pithos-macos/FileSystemBrowserCell.m"; sourceTree = "<group>"; };
158
		613BA8611461520E00FACAA5 /* NonEmptyStringFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NonEmptyStringFormatter.h; path = "pithos-macos/NonEmptyStringFormatter.h"; sourceTree = "<group>"; };
159
		613BA8621461520E00FACAA5 /* NonEmptyStringFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NonEmptyStringFormatter.m; path = "pithos-macos/NonEmptyStringFormatter.m"; sourceTree = "<group>"; };
157 160
		61433BC7141BA1CE00CD978D /* HashMapHash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HashMapHash.h; path = "pithos-macos/HashMapHash.h"; sourceTree = "<group>"; };
158 161
		61433BC8141BA1CE00CD978D /* HashMapHash.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HashMapHash.m; path = "pithos-macos/HashMapHash.m"; sourceTree = "<group>"; };
159 162
		614592BA1417CE70002E7A8C /* ASIPithosAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIPithosAccount.h; sourceTree = "<group>"; };
......
383 386
				61C24BC014110BDB007004DC /* SharingNameFormatter.m */,
384 387
				613629B7143E51E000363787 /* GroupAndGroupMemberFormatter.h */,
385 388
				613629B8143E51E000363787 /* GroupAndGroupMemberFormatter.m */,
389
				613BA8611461520E00FACAA5 /* NonEmptyStringFormatter.h */,
390
				613BA8621461520E00FACAA5 /* NonEmptyStringFormatter.m */,
386 391
			);
387 392
			name = Formatters;
388 393
			sourceTree = "<group>";
......
642 647
				6164B2DD1450E55C00D4C1AB /* LastCompletedSyncTransformer.m in Sources */,
643 648
				6154BF501456A83200EE353A /* UsingSizeTransformer.m in Sources */,
644 649
				6154BF531456EE4900EE353A /* DirPathFileURLTransformer.m in Sources */,
650
				613BA8631461520E00FACAA5 /* NonEmptyStringFormatter.m in Sources */,
645 651
			);
646 652
			runOnlyForDeploymentPostprocessing = 0;
647 653
		};
b/pithos-macos/NonEmptyStringFormatter.h
1
//
2
//  NonEmptyStringFormatter.h
3
//  pithos-macos
4
//
5
// Copyright 2011 GRNET S.A. All rights reserved.
6
//
7
// Redistribution and use in source and binary forms, with or
8
// without modification, are permitted provided that the following
9
// conditions are met:
10
// 
11
//   1. Redistributions of source code must retain the above
12
//      copyright notice, this list of conditions and the following
13
//      disclaimer.
14
// 
15
//   2. Redistributions in binary form must reproduce the above
16
//      copyright notice, this list of conditions and the following
17
//      disclaimer in the documentation and/or other materials
18
//      provided with the distribution.
19
// 
20
// THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
21
// OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
24
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
27
// USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28
// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
// POSSIBILITY OF SUCH DAMAGE.
32
// 
33
// The views and conclusions contained in the software and
34
// documentation are those of the authors and should not be
35
// interpreted as representing official policies, either expressed
36
// or implied, of GRNET S.A.
37

  
38
@interface NonEmptyStringFormatter : NSFormatter
39
@end
b/pithos-macos/NonEmptyStringFormatter.m
1
//
2
//  NonEmptyStringFormatter.m
3
//  pithos-macos
4
//
5
// Copyright 2011 GRNET S.A. All rights reserved.
6
//
7
// Redistribution and use in source and binary forms, with or
8
// without modification, are permitted provided that the following
9
// conditions are met:
10
// 
11
//   1. Redistributions of source code must retain the above
12
//      copyright notice, this list of conditions and the following
13
//      disclaimer.
14
// 
15
//   2. Redistributions in binary form must reproduce the above
16
//      copyright notice, this list of conditions and the following
17
//      disclaimer in the documentation and/or other materials
18
//      provided with the distribution.
19
// 
20
// THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
21
// OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
24
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
27
// USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28
// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
// POSSIBILITY OF SUCH DAMAGE.
32
// 
33
// The views and conclusions contained in the software and
34
// documentation are those of the authors and should not be
35
// interpreted as representing official policies, either expressed
36
// or implied, of GRNET S.A.
37

  
38
#import "NonEmptyStringFormatter.h"
39

  
40
@implementation NonEmptyStringFormatter
41

  
42
- (NSString *)stringForObjectValue:(id)anObject {
43
	if (anObject != nil)
44
		return [NSString stringWithString:anObject];
45
	return nil;
46
}
47

  
48
- (BOOL)getObjectValue:(id *)anObject forString:(NSString *)string errorDescription:(NSString **)error {
49
	*anObject = [NSString stringWithString:string];
50
	return YES;
51
}
52

  
53
- (BOOL)isPartialStringValid:(NSString *)partialString newEditingString:(NSString **)newString errorDescription:(NSString **)error {
54
	if ([partialString length] == 0) {
55
        *newString = nil;
56
        return NO;
57
    }
58

  
59
	return YES;
60
}
61

  
62
@end
b/pithos-macos/PithosPreferencesController.h
61 61

  
62 62
- (IBAction)toolbarItemSelected:(id)sender;
63 63

  
64
- (IBAction)authenticationApply:(id)sender;
64 65
- (IBAction)authenticationLogin:(id)sender;
65 66

  
66 67
@end
b/pithos-macos/PithosPreferencesController.m
71 71
}
72 72

  
73 73
- (void)windowWillClose:(NSNotification *)notification {
74
    [[self window] makeFirstResponder:nil];
75
    [(pithos_macosAppDelegate *)[[NSApplication sharedApplication] delegate] authenticate];
74
    [self authenticationApply:self];
76 75
}
77 76

  
78 77
- (IBAction)toolbarItemSelected:(id)sender {
......
81 80
#pragma mark -
82 81
#pragma Authentication
83 82

  
83
- (IBAction)authenticationApply:(id)sender {
84
    [[self window] makeFirstResponder:nil];
85
    [(pithos_macosAppDelegate *)[[NSApplication sharedApplication] delegate] authenticate];
86
}
87

  
84 88
- (IBAction)authenticationLogin:(id)sender {
85 89
    NSProcessInfo *processInfo = [NSProcessInfo processInfo];
86 90
    NSString *loginURL = [NSString stringWithFormat:@"%@?next=pithos://%@_%d",
b/pithos-macos/PithosPreferencesController.xib
59 59
			<object class="NSWindowTemplate" id="183740387">
60 60
				<int key="NSWindowStyleMask">3</int>
61 61
				<int key="NSWindowBacking">2</int>
62
				<string key="NSWindowRect">{{403, 468}, {265, 159}}</string>
62
				<string key="NSWindowRect">{{403, 468}, {265, 211}}</string>
63 63
				<int key="NSWTFlags">1954022400</int>
64 64
				<string key="NSWindowTitle">Pithos Preferences</string>
65 65
				<string key="NSWindowClass">NSWindow</string>
......
151 151
						<object class="NSTabView" id="564742342">
152 152
							<reference key="NSNextResponder" ref="369507901"/>
153 153
							<int key="NSvFlags">12</int>
154
							<string key="NSFrameSize">{265, 159}</string>
154
							<string key="NSFrame">{{0, -24}, {265, 235}}</string>
155 155
							<reference key="NSSuperview" ref="369507901"/>
156
							<reference key="NSWindow"/>
156 157
							<reference key="NSNextKeyView" ref="865103585"/>
157 158
							<object class="NSMutableArray" key="NSTabViewItems">
158 159
								<bool key="EncodedWithXMLCoder">YES</bool>
......
166 167
											<object class="NSTextField" id="883219248">
167 168
												<reference key="NSNextResponder" ref="865103585"/>
168 169
												<int key="NSvFlags">268</int>
169
												<string key="NSFrame">{{12, 116}, {83, 14}}</string>
170
												<string key="NSFrame">{{12, 192}, {83, 14}}</string>
170 171
												<reference key="NSSuperview" ref="865103585"/>
172
												<reference key="NSWindow"/>
171 173
												<reference key="NSNextKeyView" ref="193312849"/>
172 174
												<bool key="NSEnabled">YES</bool>
173 175
												<object class="NSTextFieldCell" key="NSCell" id="899323867">
......
204 206
											<object class="NSTextField" id="507142965">
205 207
												<reference key="NSNextResponder" ref="865103585"/>
206 208
												<int key="NSvFlags">268</int>
207
												<string key="NSFrame">{{12, 62}, {64, 14}}</string>
209
												<string key="NSFrame">{{12, 138}, {64, 14}}</string>
208 210
												<reference key="NSSuperview" ref="865103585"/>
211
												<reference key="NSWindow"/>
209 212
												<reference key="NSNextKeyView" ref="379730869"/>
210 213
												<bool key="NSEnabled">YES</bool>
211 214
												<object class="NSTextFieldCell" key="NSCell" id="993321662">
......
222 225
											<object class="NSTextField" id="1017221490">
223 226
												<reference key="NSNextResponder" ref="865103585"/>
224 227
												<int key="NSvFlags">268</int>
225
												<string key="NSFrame">{{12, 41}, {64, 14}}</string>
228
												<string key="NSFrame">{{12, 117}, {64, 14}}</string>
226 229
												<reference key="NSSuperview" ref="865103585"/>
230
												<reference key="NSWindow"/>
227 231
												<reference key="NSNextKeyView" ref="682758465"/>
228 232
												<bool key="NSEnabled">YES</bool>
229 233
												<object class="NSTextFieldCell" key="NSCell" id="1037784646">
......
240 244
											<object class="NSTextField" id="992895966">
241 245
												<reference key="NSNextResponder" ref="865103585"/>
242 246
												<int key="NSvFlags">268</int>
243
												<string key="NSFrame">{{7, 84}, {86, 14}}</string>
247
												<string key="NSFrame">{{7, 160}, {86, 14}}</string>
244 248
												<reference key="NSSuperview" ref="865103585"/>
249
												<reference key="NSWindow"/>
245 250
												<reference key="NSNextKeyView" ref="507142965"/>
246 251
												<bool key="NSEnabled">YES</bool>
247 252
												<object class="NSTextFieldCell" key="NSCell" id="784421446">
......
255 260
													<reference key="NSTextColor" ref="44104873"/>
256 261
												</object>
257 262
											</object>
263
											<object class="NSTextField" id="443178290">
264
												<reference key="NSNextResponder" ref="865103585"/>
265
												<int key="NSvFlags">268</int>
266
												<string key="NSFrame">{{7, 59}, {174, 14}}</string>
267
												<reference key="NSSuperview" ref="865103585"/>
268
												<reference key="NSWindow"/>
269
												<reference key="NSNextKeyView" ref="892129196"/>
270
												<bool key="NSEnabled">YES</bool>
271
												<object class="NSTextFieldCell" key="NSCell" id="943450840">
272
													<int key="NSCellFlags">68288064</int>
273
													<int key="NSCellFlags2">4195328</int>
274
													<string key="NSContents">Get credentials with Shibboleth:</string>
275
													<reference key="NSSupport" ref="26"/>
276
													<reference key="NSControlView" ref="443178290"/>
277
													<bool key="NSDrawsBackground">YES</bool>
278
													<reference key="NSBackgroundColor" ref="820783553"/>
279
													<reference key="NSTextColor" ref="44104873"/>
280
												</object>
281
											</object>
258 282
											<object class="NSTextField" id="1054241470">
259 283
												<reference key="NSNextResponder" ref="865103585"/>
260 284
												<int key="NSvFlags">268</int>
261
												<string key="NSFrame">{{7, 138}, {49, 14}}</string>
285
												<string key="NSFrame">{{7, 214}, {49, 14}}</string>
262 286
												<reference key="NSSuperview" ref="865103585"/>
287
												<reference key="NSWindow"/>
263 288
												<reference key="NSNextKeyView" ref="883219248"/>
264 289
												<bool key="NSEnabled">YES</bool>
265 290
												<object class="NSTextFieldCell" key="NSCell" id="482751693">
......
276 301
											<object class="NSBox" id="701502029">
277 302
												<reference key="NSNextResponder" ref="865103585"/>
278 303
												<int key="NSvFlags">-2147483634</int>
279
												<string key="NSFrame">{{0, 99}, {265, 5}}</string>
304
												<string key="NSFrame">{{0, 175}, {265, 5}}</string>
280 305
												<reference key="NSSuperview" ref="865103585"/>
306
												<reference key="NSWindow"/>
281 307
												<reference key="NSNextKeyView" ref="992895966"/>
282 308
												<string key="NSOffsets">{0, 0}</string>
283 309
												<object class="NSTextFieldCell" key="NSTitleCell">
......
311 337
											<object class="NSBox" id="338834025">
312 338
												<reference key="NSNextResponder" ref="865103585"/>
313 339
												<int key="NSvFlags">-2147483634</int>
314
												<string key="NSFrame">{{0, 23}, {265, 5}}</string>
340
												<string key="NSFrame">{{0, 79}, {265, 5}}</string>
315 341
												<reference key="NSSuperview" ref="865103585"/>
316
												<reference key="NSNextKeyView" ref="892129196"/>
342
												<reference key="NSWindow"/>
343
												<reference key="NSNextKeyView" ref="823976873"/>
317 344
												<string key="NSOffsets">{0, 0}</string>
318 345
												<object class="NSTextFieldCell" key="NSTitleCell">
319 346
													<int key="NSCellFlags">67239424</int>
......
334 361
											<object class="NSButton" id="852692720">
335 362
												<reference key="NSNextResponder" ref="865103585"/>
336 363
												<int key="NSvFlags">289</int>
337
												<string key="NSFrame">{{188, 2}, {72, 28}}</string>
364
												<string key="NSFrame">{{188, 27}, {72, 28}}</string>
338 365
												<reference key="NSSuperview" ref="865103585"/>
366
												<reference key="NSWindow"/>
339 367
												<reference key="NSNextKeyView"/>
340 368
												<bool key="NSEnabled">YES</bool>
341 369
												<object class="NSButtonCell" key="NSCell" id="1023707124">
......
357 385
													<int key="NSPeriodicInterval">75</int>
358 386
												</object>
359 387
											</object>
388
											<object class="NSButton" id="823976873">
389
												<reference key="NSNextResponder" ref="865103585"/>
390
												<int key="NSvFlags">289</int>
391
												<string key="NSFrame">{{188, 83}, {72, 28}}</string>
392
												<reference key="NSSuperview" ref="865103585"/>
393
												<reference key="NSWindow"/>
394
												<reference key="NSNextKeyView" ref="443178290"/>
395
												<bool key="NSEnabled">YES</bool>
396
												<object class="NSButtonCell" key="NSCell" id="542365240">
397
													<int key="NSCellFlags">-2080244224</int>
398
													<int key="NSCellFlags2">134348800</int>
399
													<string key="NSContents">Apply</string>
400
													<reference key="NSSupport" ref="26"/>
401
													<reference key="NSControlView" ref="823976873"/>
402
													<int key="NSButtonFlags">-2034876161</int>
403
													<int key="NSButtonFlags2">129</int>
404
													<reference key="NSAlternateImage" ref="43181375"/>
405
													<string key="NSAlternateContents"/>
406
													<string key="NSKeyEquivalent"/>
407
													<int key="NSPeriodicDelay">400</int>
408
													<int key="NSPeriodicInterval">75</int>
409
												</object>
410
											</object>
360 411
											<object class="NSTextField" id="379730869">
361 412
												<reference key="NSNextResponder" ref="865103585"/>
362 413
												<int key="NSvFlags">270</int>
363
												<string key="NSFrame">{{81, 60}, {174, 19}}</string>
414
												<string key="NSFrame">{{81, 136}, {174, 19}}</string>
364 415
												<reference key="NSSuperview" ref="865103585"/>
416
												<reference key="NSWindow"/>
365 417
												<reference key="NSNextKeyView" ref="1017221490"/>
366 418
												<bool key="NSEnabled">YES</bool>
367 419
												<object class="NSTextFieldCell" key="NSCell" id="1043934785">
......
383 435
											<object class="NSTextField" id="682758465">
384 436
												<reference key="NSNextResponder" ref="865103585"/>
385 437
												<int key="NSvFlags">270</int>
386
												<string key="NSFrame">{{81, 39}, {174, 19}}</string>
438
												<string key="NSFrame">{{81, 115}, {174, 19}}</string>
387 439
												<reference key="NSSuperview" ref="865103585"/>
440
												<reference key="NSWindow"/>
388 441
												<reference key="NSNextKeyView" ref="338834025"/>
389 442
												<bool key="NSEnabled">YES</bool>
390 443
												<object class="NSTextFieldCell" key="NSCell" id="1042008644">
......
401 454
											<object class="NSButton" id="892129196">
402 455
												<reference key="NSNextResponder" ref="865103585"/>
403 456
												<int key="NSvFlags">268</int>
404
												<string key="NSFrame">{{78, 19}, {63, 18}}</string>
457
												<string key="NSFrame">{{78, 35}, {63, 18}}</string>
405 458
												<reference key="NSSuperview" ref="865103585"/>
459
												<reference key="NSWindow"/>
406 460
												<reference key="NSNextKeyView" ref="852692720"/>
407 461
												<bool key="NSEnabled">YES</bool>
408 462
												<object class="NSButtonCell" key="NSCell" id="429867337">
......
437 491
														<string>NSFilenamesPboardType</string>
438 492
													</object>
439 493
												</object>
440
												<string key="NSFrame">{{97, 110}, {161, 22}}</string>
494
												<string key="NSFrame">{{97, 186}, {161, 22}}</string>
441 495
												<reference key="NSSuperview" ref="865103585"/>
496
												<reference key="NSWindow"/>
442 497
												<reference key="NSNextKeyView" ref="701502029"/>
443 498
												<bool key="NSEnabled">YES</bool>
444 499
												<object class="NSPathCell" key="NSCell" id="238772973">
......
446 501
													<int key="NSCellFlags2">131072</int>
447 502
													<object class="NSURL" key="NSContents">
448 503
														<nil key="NS.base"/>
449
														<object class="NSMutableString" key="NS.relative">
450
															<characters key="NS.bytes">file://localhost/</characters>
451
														</object>
504
														<string key="NS.relative">file://localhost/</string>
452 505
													</object>
453 506
													<reference key="NSSupport" ref="26"/>
454 507
													<reference key="NSControlView" ref="193312849"/>
......
484 537
												</object>
485 538
											</object>
486 539
										</object>
487
										<string key="NSFrameSize">{265, 159}</string>
540
										<string key="NSFrameSize">{265, 235}</string>
488 541
										<reference key="NSSuperview" ref="564742342"/>
542
										<reference key="NSWindow"/>
489 543
										<reference key="NSNextKeyView" ref="1054241470"/>
490 544
									</object>
491 545
									<string key="NSLabel">General</string>
......
502 556
											<object class="NSButton" id="724709226">
503 557
												<reference key="NSNextResponder" ref="646652655"/>
504 558
												<int key="NSvFlags">292</int>
505
												<string key="NSFrame">{{5, 2}, {72, 28}}</string>
559
												<string key="NSFrame">{{5, 78}, {72, 28}}</string>
506 560
												<reference key="NSSuperview" ref="646652655"/>
507 561
												<reference key="NSNextKeyView" ref="131074952"/>
508 562
												<bool key="NSEnabled">YES</bool>
......
524 578
											<object class="NSButton" id="131074952">
525 579
												<reference key="NSNextResponder" ref="646652655"/>
526 580
												<int key="NSvFlags">289</int>
527
												<string key="NSFrame">{{188, 2}, {72, 28}}</string>
581
												<string key="NSFrame">{{188, 78}, {72, 28}}</string>
528 582
												<reference key="NSSuperview" ref="646652655"/>
529 583
												<reference key="NSNextKeyView"/>
530 584
												<bool key="NSEnabled">YES</bool>
......
685 739
													</object>
686 740
													<reference ref="958839404"/>
687 741
												</object>
688
												<string key="NSFrame">{{10, 53}, {122, 96}}</string>
742
												<string key="NSFrame">{{10, 129}, {122, 96}}</string>
689 743
												<reference key="NSSuperview" ref="646652655"/>
690 744
												<reference key="NSNextKeyView" ref="27951958"/>
691 745
												<int key="NSsFlags">562</int>
......
820 874
													</object>
821 875
													<reference ref="913709756"/>
822 876
												</object>
823
												<string key="NSFrame">{{133, 53}, {122, 96}}</string>
877
												<string key="NSFrame">{{133, 129}, {122, 96}}</string>
824 878
												<reference key="NSSuperview" ref="646652655"/>
825 879
												<reference key="NSNextKeyView" ref="817353191"/>
826 880
												<int key="NSsFlags">562</int>
......
834 888
											<object class="NSButton" id="988713632">
835 889
												<reference key="NSNextResponder" ref="646652655"/>
836 890
												<int key="NSvFlags">292</int>
837
												<string key="NSFrame">{{10, 33}, {18, 18}}</string>
891
												<string key="NSFrame">{{10, 109}, {18, 18}}</string>
838 892
												<reference key="NSSuperview" ref="646652655"/>
839 893
												<reference key="NSNextKeyView" ref="616473836"/>
840 894
												<bool key="NSEnabled">YES</bool>
......
859 913
											<object class="NSButton" id="616473836">
860 914
												<reference key="NSNextResponder" ref="646652655"/>
861 915
												<int key="NSvFlags">292</int>
862
												<string key="NSFrame">{{27, 33}, {18, 18}}</string>
916
												<string key="NSFrame">{{27, 109}, {18, 18}}</string>
863 917
												<reference key="NSSuperview" ref="646652655"/>
864 918
												<reference key="NSNextKeyView" ref="566469435"/>
865 919
												<bool key="NSEnabled">YES</bool>
......
884 938
											<object class="NSBox" id="1073611401">
885 939
												<reference key="NSNextResponder" ref="646652655"/>
886 940
												<int key="NSvFlags">-2147483634</int>
887
												<string key="NSFrame">{{0, 23}, {265, 5}}</string>
941
												<string key="NSFrame">{{0, 99}, {265, 5}}</string>
888 942
												<reference key="NSSuperview" ref="646652655"/>
889 943
												<reference key="NSNextKeyView" ref="724709226"/>
890 944
												<string key="NSOffsets">{0, 0}</string>
......
907 961
											<object class="NSButton" id="566469435">
908 962
												<reference key="NSNextResponder" ref="646652655"/>
909 963
												<int key="NSvFlags">292</int>
910
												<string key="NSFrame">{{220, 33}, {18, 18}}</string>
964
												<string key="NSFrame">{{220, 109}, {18, 18}}</string>
911 965
												<reference key="NSSuperview" ref="646652655"/>
912 966
												<reference key="NSNextKeyView" ref="911168208"/>
913 967
												<bool key="NSEnabled">YES</bool>
......
929 983
											<object class="NSButton" id="911168208">
930 984
												<reference key="NSNextResponder" ref="646652655"/>
931 985
												<int key="NSvFlags">292</int>
932
												<string key="NSFrame">{{237, 33}, {18, 18}}</string>
986
												<string key="NSFrame">{{237, 109}, {18, 18}}</string>
933 987
												<reference key="NSSuperview" ref="646652655"/>
934 988
												<reference key="NSNextKeyView" ref="1073611401"/>
935 989
												<bool key="NSEnabled">YES</bool>
......
949 1003
												</object>
950 1004
											</object>
951 1005
										</object>
952
										<string key="NSFrameSize">{265, 159}</string>
1006
										<string key="NSFrameSize">{265, 235}</string>
953 1007
										<reference key="NSNextKeyView" ref="729122555"/>
954 1008
									</object>
955 1009
									<string key="NSLabel">Groups</string>
......
968 1022
							</object>
969 1023
						</object>
970 1024
					</object>
971
					<string key="NSFrame">{{7, 11}, {265, 159}}</string>
1025
					<string key="NSFrame">{{7, 11}, {265, 211}}</string>
972 1026
					<reference key="NSSuperview"/>
1027
					<reference key="NSWindow"/>
973 1028
					<reference key="NSNextKeyView" ref="564742342"/>
974 1029
				</object>
975 1030
				<string key="NSScreenRect">{{0, 0}, {1280, 778}}</string>
......
1018 1073
			<object class="NSCustomObject" id="894212860">
1019 1074
				<string key="NSClassName">GroupAndGroupMemberFormatter</string>
1020 1075
			</object>
1076
			<object class="NSCustomObject" id="193121877">
1077
				<string key="NSClassName">NonEmptyStringFormatter</string>
1078
			</object>
1021 1079
		</object>
1022 1080
		<object class="IBObjectContainer" key="IBDocument.Objects">
1023 1081
			<object class="NSMutableArray" key="connectionRecords">
......
1104 1162
				</object>
1105 1163
				<object class="IBConnectionRecord">
1106 1164
					<object class="IBBindingConnection" key="connection">
1107
						<string key="label">value: values.authUser</string>
1108
						<reference key="source" ref="379730869"/>
1109
						<reference key="destination" ref="700105088"/>
1110
						<object class="NSNibBindingConnector" key="connector">
1111
							<reference key="NSSource" ref="379730869"/>
1112
							<reference key="NSDestination" ref="700105088"/>
1113
							<string key="NSLabel">value: values.authUser</string>
1114
							<string key="NSBinding">value</string>
1115
							<string key="NSKeyPath">values.authUser</string>
1116
							<object class="NSDictionary" key="NSOptions">
1117
								<string key="NS.key.0">NSValidatesImmediately</string>
1118
								<boolean value="YES" key="NS.object.0"/>
1119
							</object>
1120
							<int key="NSNibBindingConnectorVersion">2</int>
1121
						</object>
1122
					</object>
1123
					<int key="connectionID">373</int>
1124
				</object>
1125
				<object class="IBConnectionRecord">
1126
					<object class="IBBindingConnection" key="connection">
1127
						<string key="label">value: values.authToken</string>
1128
						<reference key="source" ref="682758465"/>
1129
						<reference key="destination" ref="700105088"/>
1130
						<object class="NSNibBindingConnector" key="connector">
1131
							<reference key="NSSource" ref="682758465"/>
1132
							<reference key="NSDestination" ref="700105088"/>
1133
							<string key="NSLabel">value: values.authToken</string>
1134
							<string key="NSBinding">value</string>
1135
							<string key="NSKeyPath">values.authToken</string>
1136
							<object class="NSDictionary" key="NSOptions">
1137
								<string key="NS.key.0">NSValidatesImmediately</string>
1138
								<boolean value="YES" key="NS.object.0"/>
1139
							</object>
1140
							<int key="NSNibBindingConnectorVersion">2</int>
1141
						</object>
1142
					</object>
1143
					<int key="connectionID">374</int>
1144
				</object>
1145
				<object class="IBConnectionRecord">
1146
					<object class="IBBindingConnection" key="connection">
1147 1165
						<string key="label">target: pithosBrowserController.accountNode</string>
1148 1166
						<reference key="source" ref="724709226"/>
1149 1167
						<reference key="destination" ref="1001"/>
......
1510 1528
					</object>
1511 1529
					<int key="connectionID">477</int>
1512 1530
				</object>
1531
				<object class="IBConnectionRecord">
1532
					<object class="IBOutletConnection" key="connection">
1533
						<string key="label">formatter</string>
1534
						<reference key="source" ref="379730869"/>
1535
						<reference key="destination" ref="193121877"/>
1536
					</object>
1537
					<int key="connectionID">482</int>
1538
				</object>
1539
				<object class="IBConnectionRecord">
1540
					<object class="IBOutletConnection" key="connection">
1541
						<string key="label">formatter</string>
1542
						<reference key="source" ref="682758465"/>
1543
						<reference key="destination" ref="193121877"/>
1544
					</object>
1545
					<int key="connectionID">483</int>
1546
				</object>
1547
				<object class="IBConnectionRecord">
1548
					<object class="IBActionConnection" key="connection">
1549
						<string key="label">authenticationApply:</string>
1550
						<reference key="source" ref="1001"/>
1551
						<reference key="destination" ref="823976873"/>
1552
					</object>
1553
					<int key="connectionID">489</int>
1554
				</object>
1555
				<object class="IBConnectionRecord">
1556
					<object class="IBBindingConnection" key="connection">
1557
						<string key="label">value: values.authUser</string>
1558
						<reference key="source" ref="379730869"/>
1559
						<reference key="destination" ref="700105088"/>
1560
						<object class="NSNibBindingConnector" key="connector">
1561
							<reference key="NSSource" ref="379730869"/>
1562
							<reference key="NSDestination" ref="700105088"/>
1563
							<string key="NSLabel">value: values.authUser</string>
1564
							<string key="NSBinding">value</string>
1565
							<string key="NSKeyPath">values.authUser</string>
1566
							<object class="NSDictionary" key="NSOptions">
1567
								<string key="NS.key.0">NSValidatesImmediately</string>
1568
								<boolean value="YES" key="NS.object.0"/>
1569
							</object>
1570
							<int key="NSNibBindingConnectorVersion">2</int>
1571
						</object>
1572
					</object>
1573
					<int key="connectionID">492</int>
1574
				</object>
1575
				<object class="IBConnectionRecord">
1576
					<object class="IBBindingConnection" key="connection">
1577
						<string key="label">value: values.authToken</string>
1578
						<reference key="source" ref="682758465"/>
1579
						<reference key="destination" ref="700105088"/>
1580
						<object class="NSNibBindingConnector" key="connector">
1581
							<reference key="NSSource" ref="682758465"/>
1582
							<reference key="NSDestination" ref="700105088"/>
1583
							<string key="NSLabel">value: values.authToken</string>
1584
							<string key="NSBinding">value</string>
1585
							<string key="NSKeyPath">values.authToken</string>
1586
							<object class="NSDictionary" key="NSOptions">
1587
								<string key="NS.key.0">NSValidatesImmediately</string>
1588
								<boolean value="YES" key="NS.object.0"/>
1589
							</object>
1590
							<int key="NSNibBindingConnectorVersion">2</int>
1591
						</object>
1592
					</object>
1593
					<int key="connectionID">496</int>
1594
				</object>
1513 1595
			</object>
1514 1596
			<object class="IBMutableOrderedSet" key="objectRecords">
1515 1597
				<object class="NSArray" key="orderedObjects">
......
1596 1678
							<reference ref="1017221490"/>
1597 1679
							<reference ref="992895966"/>
1598 1680
							<reference ref="701502029"/>
1599
							<reference ref="338834025"/>
1600 1681
							<reference ref="379730869"/>
1601 1682
							<reference ref="682758465"/>
1602 1683
							<reference ref="1054241470"/>
1684
							<reference ref="193312849"/>
1685
							<reference ref="823976873"/>
1686
							<reference ref="338834025"/>
1687
							<reference ref="443178290"/>
1603 1688
							<reference ref="892129196"/>
1604 1689
							<reference ref="852692720"/>
1605
							<reference ref="193312849"/>
1606 1690
						</object>
1607 1691
						<reference key="parent" ref="874188166"/>
1608 1692
					</object>
......
2008 2092
						<reference key="object" ref="238772973"/>
2009 2093
						<reference key="parent" ref="193312849"/>
2010 2094
					</object>
2095
					<object class="IBObjectRecord">
2096
						<int key="objectID">481</int>
2097
						<reference key="object" ref="193121877"/>
2098
						<reference key="parent" ref="0"/>
2099
					</object>
2100
					<object class="IBObjectRecord">
2101
						<int key="objectID">484</int>
2102
						<reference key="object" ref="823976873"/>
2103
						<object class="NSMutableArray" key="children">
2104
							<bool key="EncodedWithXMLCoder">YES</bool>
2105
							<reference ref="542365240"/>
2106
						</object>
2107
						<reference key="parent" ref="865103585"/>
2108
					</object>
2109
					<object class="IBObjectRecord">
2110
						<int key="objectID">485</int>
2111
						<reference key="object" ref="542365240"/>
2112
						<reference key="parent" ref="823976873"/>
2113
					</object>
2114
					<object class="IBObjectRecord">
2115
						<int key="objectID">487</int>
2116
						<reference key="object" ref="443178290"/>
2117
						<object class="NSMutableArray" key="children">
2118
							<bool key="EncodedWithXMLCoder">YES</bool>
2119
							<reference ref="943450840"/>
2120
						</object>
2121
						<reference key="parent" ref="865103585"/>
2122
					</object>
2123
					<object class="IBObjectRecord">
2124
						<int key="objectID">488</int>
2125
						<reference key="object" ref="943450840"/>
2126
						<reference key="parent" ref="443178290"/>
2127
					</object>
2011 2128
				</object>
2012 2129
			</object>
2013 2130
			<object class="NSMutableDictionary" key="flattenedProperties">
......
2084 2201
					<string>449.IBPluginDependency</string>
2085 2202
					<string>470.IBPluginDependency</string>
2086 2203
					<string>471.IBPluginDependency</string>
2204
					<string>481.IBPluginDependency</string>
2205
					<string>484.IBPluginDependency</string>
2206
					<string>485.IBPluginDependency</string>
2207
					<string>487.IBPluginDependency</string>
2208
					<string>488.IBPluginDependency</string>
2087 2209
					<string>5.IBPluginDependency</string>
2088 2210
					<string>6.IBPluginDependency</string>
2089 2211
				</object>
......
2161 2283
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2162 2284
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2163 2285
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2286
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2287
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2288
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2289
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2290
					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
2164 2291
				</object>
2165 2292
			</object>
2166 2293
			<object class="NSMutableDictionary" key="unlocalizedProperties">
......
2175 2302
				<reference key="dict.values" ref="0"/>
2176 2303
			</object>
2177 2304
			<nil key="sourceID"/>
2178
			<int key="maxID">477</int>
2305
			<int key="maxID">496</int>
2306
		</object>
2307
		<object class="IBClassDescriber" key="IBDocument.Classes">
2308
			<object class="NSMutableArray" key="referencedPartialClassDescriptions">
2309
				<bool key="EncodedWithXMLCoder">YES</bool>
2310
				<object class="IBPartialClassDescription">
2311
					<string key="className">GroupAndGroupMemberFormatter</string>
2312
					<string key="superclassName">NSFormatter</string>
2313
					<object class="IBClassDescriptionSource" key="sourceIdentifier">
2314
						<string key="majorKey">IBProjectSource</string>
2315
						<string key="minorKey">./Classes/GroupAndGroupMemberFormatter.h</string>
2316
					</object>
2317
				</object>
2318
				<object class="IBPartialClassDescription">
2319
					<string key="className">NonEmptyStringFormatter</string>
2320
					<string key="superclassName">NSFormatter</string>
2321
					<object class="IBClassDescriptionSource" key="sourceIdentifier">
2322
						<string key="majorKey">IBProjectSource</string>
2323
						<string key="minorKey">./Classes/NonEmptyStringFormatter.h</string>
2324
					</object>
2325
				</object>
2326
				<object class="IBPartialClassDescription">
2327
					<string key="className">PithosBrowserController</string>
2328
					<string key="superclassName">NSWindowController</string>
2329
					<object class="NSMutableDictionary" key="actions">
2330
						<bool key="EncodedWithXMLCoder">YES</bool>
2331
						<object class="NSArray" key="dict.sortedKeys">
2332
							<bool key="EncodedWithXMLCoder">YES</bool>
2333
							<string>forceRefresh:</string>
2334
							<string>refresh:</string>
2335
						</object>
2336
						<object class="NSMutableArray" key="dict.values">
2337
							<bool key="EncodedWithXMLCoder">YES</bool>
2338
							<string>id</string>
2339
							<string>id</string>
2340
						</object>
2341
					</object>
2342
					<object class="NSMutableDictionary" key="actionInfosByName">
2343
						<bool key="EncodedWithXMLCoder">YES</bool>
2344
						<object class="NSArray" key="dict.sortedKeys">
2345
							<bool key="EncodedWithXMLCoder">YES</bool>
2346
							<string>forceRefresh:</string>
2347
							<string>refresh:</string>
2348
						</object>
2349
						<object class="NSMutableArray" key="dict.values">
2350
							<bool key="EncodedWithXMLCoder">YES</bool>
2351
							<object class="IBActionInfo">
2352
								<string key="name">forceRefresh:</string>
2353
								<string key="candidateClassName">id</string>
2354
							</object>
2355
							<object class="IBActionInfo">
2356
								<string key="name">refresh:</string>
2357
								<string key="candidateClassName">id</string>
2358
							</object>
2359
						</object>
2360
					</object>
2361
					<object class="NSMutableDictionary" key="outlets">
2362
						<bool key="EncodedWithXMLCoder">YES</bool>
2363
						<object class="NSArray" key="dict.sortedKeys">
2364
							<bool key="EncodedWithXMLCoder">YES</bool>
2365
							<string>activityProgressIndicator</string>
2366
							<string>activityTextField</string>
2367
							<string>browser</string>
2368
							<string>browserMenu</string>
2369
							<string>horizontalSplitView</string>
2370
							<string>leftBottomView</string>
2371
							<string>leftTopView</string>
2372
							<string>outlineView</string>
2373
							<string>outlineViewMenu</string>
2374
							<string>verticalSplitView</string>
2375
						</object>
2376
						<object class="NSMutableArray" key="dict.values">
2377
							<bool key="EncodedWithXMLCoder">YES</bool>
2378
							<string>NSProgressIndicator</string>
2379
							<string>NSTextField</string>
2380
							<string>NSBrowser</string>
2381
							<string>NSMenu</string>
2382
							<string>NSSplitView</string>
2383
							<string>NSView</string>
2384
							<string>NSView</string>
2385
							<string>NSOutlineView</string>
2386
							<string>NSMenu</string>
2387
							<string>NSSplitView</string>
2388
						</object>
2389
					</object>
2390
					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
2391
						<bool key="EncodedWithXMLCoder">YES</bool>
2392
						<object class="NSArray" key="dict.sortedKeys">
2393
							<bool key="EncodedWithXMLCoder">YES</bool>
2394
							<string>activityProgressIndicator</string>
2395
							<string>activityTextField</string>
2396
							<string>browser</string>
2397
							<string>browserMenu</string>
2398
							<string>horizontalSplitView</string>
2399
							<string>leftBottomView</string>
2400
							<string>leftTopView</string>
2401
							<string>outlineView</string>
2402
							<string>outlineViewMenu</string>
2403
							<string>verticalSplitView</string>
2404
						</object>
2405
						<object class="NSMutableArray" key="dict.values">
2406
							<bool key="EncodedWithXMLCoder">YES</bool>
2407
							<object class="IBToOneOutletInfo">
2408
								<string key="name">activityProgressIndicator</string>
2409
								<string key="candidateClassName">NSProgressIndicator</string>
2410
							</object>
2411
							<object class="IBToOneOutletInfo">
2412
								<string key="name">activityTextField</string>
2413
								<string key="candidateClassName">NSTextField</string>
2414
							</object>
2415
							<object class="IBToOneOutletInfo">
2416
								<string key="name">browser</string>
2417
								<string key="candidateClassName">NSBrowser</string>
2418
							</object>
2419
							<object class="IBToOneOutletInfo">
2420
								<string key="name">browserMenu</string>
2421
								<string key="candidateClassName">NSMenu</string>
2422
							</object>
2423
							<object class="IBToOneOutletInfo">
2424
								<string key="name">horizontalSplitView</string>
2425
								<string key="candidateClassName">NSSplitView</string>
2426
							</object>
2427
							<object class="IBToOneOutletInfo">
2428
								<string key="name">leftBottomView</string>
2429
								<string key="candidateClassName">NSView</string>
2430
							</object>
2431
							<object class="IBToOneOutletInfo">
2432
								<string key="name">leftTopView</string>
2433
								<string key="candidateClassName">NSView</string>
2434
							</object>
2435
							<object class="IBToOneOutletInfo">
2436
								<string key="name">outlineView</string>
2437
								<string key="candidateClassName">NSOutlineView</string>
2438
							</object>
2439
							<object class="IBToOneOutletInfo">
2440
								<string key="name">outlineViewMenu</string>
2441
								<string key="candidateClassName">NSMenu</string>
2442
							</object>
2443
							<object class="IBToOneOutletInfo">
2444
								<string key="name">verticalSplitView</string>
2445
								<string key="candidateClassName">NSSplitView</string>
2446
							</object>
2447
						</object>
2448
					</object>
2449
					<object class="IBClassDescriptionSource" key="sourceIdentifier">
2450
						<string key="majorKey">IBProjectSource</string>
2451
						<string key="minorKey">./Classes/PithosBrowserController.h</string>
2452
					</object>
2453
				</object>
2454
				<object class="IBPartialClassDescription">
2455
					<string key="className">PithosPreferencesController</string>
2456
					<string key="superclassName">NSWindowController</string>
2457
					<object class="NSMutableDictionary" key="actions">
2458
						<bool key="EncodedWithXMLCoder">YES</bool>
2459
						<object class="NSArray" key="dict.sortedKeys">
2460
							<bool key="EncodedWithXMLCoder">YES</bool>
2461
							<string>authenticationApply:</string>
2462
							<string>authenticationLogin:</string>
2463
							<string>toolbarItemSelected:</string>
2464
						</object>
2465
						<object class="NSMutableArray" key="dict.values">
2466
							<bool key="EncodedWithXMLCoder">YES</bool>
2467
							<string>id</string>
2468
							<string>id</string>
2469
							<string>id</string>
2470
						</object>
2471
					</object>
2472
					<object class="NSMutableDictionary" key="actionInfosByName">
2473
						<bool key="EncodedWithXMLCoder">YES</bool>
2474
						<object class="NSArray" key="dict.sortedKeys">
2475
							<bool key="EncodedWithXMLCoder">YES</bool>
2476
							<string>authenticationApply:</string>
2477
							<string>authenticationLogin:</string>
2478
							<string>toolbarItemSelected:</string>
2479
						</object>
2480
						<object class="NSMutableArray" key="dict.values">
2481
							<bool key="EncodedWithXMLCoder">YES</bool>
2482
							<object class="IBActionInfo">
2483
								<string key="name">authenticationApply:</string>
2484
								<string key="candidateClassName">id</string>
2485
							</object>
2486
							<object class="IBActionInfo">
2487
								<string key="name">authenticationLogin:</string>
2488
								<string key="candidateClassName">id</string>
2489
							</object>
2490
							<object class="IBActionInfo">
2491
								<string key="name">toolbarItemSelected:</string>
2492
								<string key="candidateClassName">id</string>
2493
							</object>
2494
						</object>
2495
					</object>
2496
					<object class="NSMutableDictionary" key="outlets">
2497
						<bool key="EncodedWithXMLCoder">YES</bool>
2498
						<object class="NSArray" key="dict.sortedKeys">
2499
							<bool key="EncodedWithXMLCoder">YES</bool>
2500
							<string>authenticationRenewCheckBox</string>
2501
							<string>authenticationTokenTextField</string>
2502
							<string>authenticationUserTextField</string>
2503
							<string>groupsDictionaryController</string>
2504
							<string>pithosBrowserController</string>
2505
							<string>selectedGroupMembersDictionaryController</string>
2506
						</object>
2507
						<object class="NSMutableArray" key="dict.values">
2508
							<bool key="EncodedWithXMLCoder">YES</bool>
2509
							<string>NSButton</string>
2510
							<string>NSTextField</string>
2511
							<string>NSTextField</string>
2512
							<string>NSDictionaryController</string>
2513
							<string>PithosBrowserController</string>
2514
							<string>NSDictionaryController</string>
2515
						</object>
2516
					</object>
2517
					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
2518
						<bool key="EncodedWithXMLCoder">YES</bool>
2519
						<object class="NSArray" key="dict.sortedKeys">
2520
							<bool key="EncodedWithXMLCoder">YES</bool>
2521
							<string>authenticationRenewCheckBox</string>
2522
							<string>authenticationTokenTextField</string>
2523
							<string>authenticationUserTextField</string>
2524
							<string>groupsDictionaryController</string>
2525
							<string>pithosBrowserController</string>
2526
							<string>selectedGroupMembersDictionaryController</string>
2527
						</object>
2528
						<object class="NSMutableArray" key="dict.values">
2529
							<bool key="EncodedWithXMLCoder">YES</bool>
2530
							<object class="IBToOneOutletInfo">
2531
								<string key="name">authenticationRenewCheckBox</string>
2532
								<string key="candidateClassName">NSButton</string>
2533
							</object>
2534
							<object class="IBToOneOutletInfo">
2535
								<string key="name">authenticationTokenTextField</string>
2536
								<string key="candidateClassName">NSTextField</string>
2537
							</object>
2538
							<object class="IBToOneOutletInfo">
2539
								<string key="name">authenticationUserTextField</string>
2540
								<string key="candidateClassName">NSTextField</string>
2541
							</object>
2542
							<object class="IBToOneOutletInfo">
2543
								<string key="name">groupsDictionaryController</string>
2544
								<string key="candidateClassName">NSDictionaryController</string>
2545
							</object>
2546
							<object class="IBToOneOutletInfo">
2547
								<string key="name">pithosBrowserController</string>
2548
								<string key="candidateClassName">PithosBrowserController</string>
2549
							</object>
2550
							<object class="IBToOneOutletInfo">
2551
								<string key="name">selectedGroupMembersDictionaryController</string>
2552
								<string key="candidateClassName">NSDictionaryController</string>
2553
							</object>
2554
						</object>
2555
					</object>
2556
					<object class="IBClassDescriptionSource" key="sourceIdentifier">
2557
						<string key="majorKey">IBProjectSource</string>
2558
						<string key="minorKey">./Classes/PithosPreferencesController.h</string>
2559
					</object>
2560
				</object>
2561
			</object>
2179 2562
		</object>
2180
		<object class="IBClassDescriber" key="IBDocument.Classes"/>
2181 2563
		<int key="IBDocument.localizationMode">0</int>
2182 2564
		<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
2183 2565
		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
b/pithos-macos/PithosUtilities.m
909 909
    return YES;
910 910
}
911 911

  
912

  
913 912
// List of objects at the given container/object path, with prefix and or delimiter
914 913
+ (NSArray *)objectsWithContainerName:(NSString *)containerName objectNamePrefix:(NSString *)objectNamePrefix 
915 914
                            delimiter:(NSString *)delimiter sharingAccount:(NSString *)sharingAccount {
b/pithos-macos/pithos_macosAppDelegate.m
231 231
    NSString *authToken = [userDefaults stringForKey:@"authToken"];
232 232
    NSString *syncDirectoryPath = [userDefaults stringForKey:@"pithosSyncDirectoryPath"];
233 233
    NSLog(@"Authentication - storageURLPrefix:%@, authUser:%@, authToken:%@", storageURLPrefix, authUser, authToken);
234
    if ([authUser length] && [authToken length] && 
235
        (![[ASIPithosRequest authUser] isEqualToString:authUser] || ![[ASIPithosRequest authToken] isEqualToString:authToken])) {
234
    if (([authUser length] == 0) || ([authToken length] == 0)) {
235
        [self showPithosPreferences:self];
236
    } else if ([authUser length] && [authToken length] && 
237
               (![[ASIPithosRequest authUser] isEqualToString:authUser] || ![[ASIPithosRequest authToken] isEqualToString:authToken])) {
236 238
        [[ASIDownloadCache sharedCache] clearCachedResponsesForStoragePolicy:ASICacheForSessionDurationCacheStoragePolicy];
237 239
        [[ASIPithosRequest sharedQueue] cancelAllOperations];
238 240
        
......
248 250
                                                                 resetLocalState:NO] autorelease];
249 251
        
250 252
        [[NSNotificationCenter defaultCenter] postNotificationName:@"PithosAuthenticationCredentialsUpdated" object:self];
251
        return;
252
    }
253
    if (![pithosSyncDaemon.directoryPath isEqualToString:syncDirectoryPath])
253
    } else if (![pithosSyncDaemon.directoryPath isEqualToString:syncDirectoryPath]) {
254 254
        self.pithosSyncDaemon = [[[PithosSyncDaemon alloc] initWithDirectoryPath:syncDirectoryPath 
255 255
                                                                   containerName:syncContainerName 
256 256
                                                                    timeInterval:syncTimeInterval 
257 257
                                                                 resetLocalState:YES] autorelease];
258
    }
258 259
}
259 260

  
260 261
@end

Also available in: Unified diff