{
[spinner startAnimation: self];
[self setStatusText: @"Getting image list..."];
- [browserData removeAllObjects];
NSMutableArray *images = [currentGallery listImages];
if ([images count] == 0) {
- [browserView reloadData];
//TODO: Show a panel showing there are no images? Or just disable the
// view gallery button?
{
[NSApp endSheet: mviewGallerySheet];
[mviewGallerySheet orderOut: nil];
+ [browserData removeAllObjects];
+ [browserView reloadData];
}
// Put up the newGallerySheet NSPanel
[self showNewServerSheet];
} else if (![[[mServersPopUp selectedItem] title] isEqual:@"(None)"]) {
// Connect to a server
- if (currentServer == [[mServersPopUp selectedItem] representedObject]) {
- return;
+ if (currentServer != nil) {
+ [self disconnect];
}
- [self disconnect];
currentServer = [[mServersPopUp selectedItem] representedObject];
[self doConnect];
}
}
// These seem to be called when the plugin panel is actived/deactivated while
-// export screen is open, not when the plugin is finished.
+// export screen is open, not when the plugin is finished or the export window
+// is clsoed from the Cancel button
- (void)viewWillBeActivated
{
[self canExport];
// Make sure we clean up from any previous connection
-(void)disconnect
{
+ [galleryCombo deselectItemAtIndex: [galleryCombo indexOfSelectedItem]];
[galleryCombo setDelegate: nil];
[galleryCombo setDataSource: nil];
+ [galleryCombo reloadData];
[galleryCombo setEnabled: NO];
[mNewGalleryButton setEnabled: NO];
[viewGallery setEnabled: NO];
NSDictionary *p = [[NSDictionary alloc] initWithObjects: [NSArray arrayWithObjects:
[currentServer objectForKey:TURAnselServerEndpointKey],
[currentServer objectForKey:TURAnselServerUsernameKey],
- [currentServer objectForKey:TURAnselServerPasswordKey]]
+ [currentServer objectForKey:TURAnselServerPasswordKey],
+ nil]
forKeys: [NSArray arrayWithObjects:@"endpoint", @"username", @"password", nil]];
// Create our controller
anselController = [[TURAnsel alloc] initWithConnectionParameters:p];
[anselController setDelegate:self];
// Set up the galleryCombo
- [galleryCombo setUsesDataSource:YES];
[galleryCombo setDataSource:anselController];
[galleryCombo setDelegate:self];
[spinner startAnimation:self];
NSString *imageDescription = [mExportMgr imageTitleAtIndex:i];
NSArray *keywords = [mExportMgr imageKeywordsAtIndex: i];
- NSLog(@"Keywords: %@", keywords);
NSArray *keys = [[NSArray alloc] initWithObjects:
@"filename", @"description", @"data", @"type", @"tags", nil];
// Need to do this ourselves since we aren't using iPhoto's progress bar.
// Not really cancelling the export, but all this method does is close
// the export interface and notify iPhoto that we are done.
+ [mServersPopUp selectItemAtIndex: 0];
+ [self disconnect];
[mExportMgr cancelExportBeforeBeginning];
}
[self canExport];
[viewGallery setEnabled: YES];
[spinner stopAnimation: self];
- // TODO: Check this. Assume we can set back to connected since we obviously
- // are connected if we're getting gallery info.
[self setStatusText: @"Connected" withColor: [NSColor greenColor]];
}
}
#pragma mark export notifications
+
+- (void)exportWindowWillClose: (NSNotification *)notification
+{
+ [mServersPopUp selectItemAtIndex: 0];
+ [self disconnect];
+ [[NSNotificationCenter defaultCenter] removeObserver: self
+ name: NSWindowWillCloseNotification
+ object: nil];
+}
+
- (void)exportWindowDidBecomeKey: (NSNotification *)notification
{
- // We only want to do this once...
+
+ // Register for the close notification
+ [[NSNotificationCenter defaultCenter] addObserver: self
+ selector: @selector(exportWindowWillClose:)
+ name: NSWindowWillCloseNotification
+ object :nil];
+
+ // Only do this once
[[NSNotificationCenter defaultCenter] removeObserver: self
- name: NSWindowDidBecomeKeyNotification
+ name: NSWindowDidBecomeKeyNotification
object: nil];
+
[self updateServersPopupMenu];
-
+
// Register for notifications
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(NSPopUpWillPopUp:)
name:@"NSPopUpButtonWillPopUpNotification"
object: nil];
-
if ([anselServers count] == 0) {
[self showNewServerSheet];
} else {
[self doConnect];
}
-
}
}
+
- (void)sizeChoiceWillChange: (NSNotification *)notification
{
NSInteger newSize = [mSizePopUp selectedTag];
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.02">
<data>
<int key="IBDocument.SystemTarget">1050</int>
- <string key="IBDocument.SystemVersion">9G55</string>
+ <string key="IBDocument.SystemVersion">9J61</string>
<string key="IBDocument.InterfaceBuilderVersion">672</string>
- <string key="IBDocument.AppKitVersion">949.43</string>
+ <string key="IBDocument.AppKitVersion">949.46</string>
<string key="IBDocument.HIToolboxVersion">353.00</string>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
+ <integer value="137"/>
<integer value="577"/>
- <integer value="581"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference key="NSSuperview" ref="675618554"/>
<bool key="NSEnabled">YES</bool>
<object class="NSComboBoxCell" key="NSCell" id="487568130">
- <int key="NSCellFlags">879885888</int>
+ <int key="NSCellFlags">611450433</int>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents"/>
<reference key="NSSupport" ref="1065031457"/>
<reference key="NSTextColor" ref="428586510"/>
<int key="NSVisibleItemCount">5</int>
<bool key="NSHasVerticalScroller">YES</bool>
+ <bool key="NSUsesDataSource">YES</bool>
+ <bool key="NSCompletes">YES</bool>
+ <nil key="NSDataSource"/>
<reference key="NSDelegate" ref="553805234"/>
<object class="NSComboTableView" key="NSTableView" id="562062983">
<reference key="NSNextResponder"/>
<string key="NSAction">tableViewAction:</string>
<int key="NSTvFlags">-767524864</int>
<reference key="NSDelegate" ref="487568130"/>
- <reference key="NSDataSource" ref="487568130"/>
<reference key="NSTarget" ref="487568130"/>
<int key="NSColumnAutoresizingStyle">1</int>
<int key="NSDraggingSourceMaskForLocal">15</int>
<bool key="NSAllowsTypeSelect">YES</bool>
</object>
</object>
+ <nil key="NSDataSource"/>
</object>
<object class="NSTextField" id="530084779">
<reference key="NSNextResponder" ref="675618554"/>