Changeset 2118

Show
Ignore:
Timestamp:
11/14/04 21:52:59 (4 years ago)
Author:
timothy
Message:

Enabled the Send File context menu for private chat panels.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/JVDirectChat.m

    r2109 r2118  
    2626#import "JVDirectChat.h" 
    2727#import "MVBuddyListController.h" 
     28#import "MVFileTransferController.h" 
    2829#import "JVBuddy.h" 
    2930#import "MVTextView.h" 
     
    422423        NSMenuItem *item = nil; 
    423424 
    424       item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( @"Get Info", "get info contextual menu item title" ) action:NULL keyEquivalent:@""] autorelease]; 
     425/*    item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( @"Get Info", "get info contextual menu item title" ) action:NULL keyEquivalent:@""] autorelease]; 
    425426        [item setTarget:self]; 
    426427        [menu addItem:item]; 
     
    428429        item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( @"Add to Favorites", "add to favorites contextual menu") action:@selector( addToFavorites: ) keyEquivalent:@""] autorelease]; 
    429430        [item setTarget:self]; 
    430         [menu addItem:item]; 
    431  
    432         item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( @"Send File...", "send file contextual menu") action:@selector( sendFileToSelectedUser: ) keyEquivalent:@""] autorelease]; 
     431        [menu addItem:item]; */ 
     432 
     433        item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( @"Send File...", "send file contextual menu") action:@selector( _sendFile: ) keyEquivalent:@""] autorelease]; 
    433434        [item setTarget:self]; 
    434435        [menu addItem:item]; 
     
    501502 
    502503- (void) handleDraggedFile:(NSString *) path { 
    503         [[self connection] sendFile:path toUser:_target]; 
     504        BOOL passive = [[NSUserDefaults standardUserDefaults] boolForKey:@"JVSendFilesPassively"]; 
     505        [[MVFileTransferController defaultManager] addFileTransfer:[[self connection] sendFile:path toUser:_target passively:passive]]; 
    504506} 
    505507 
     
    20772079        [_windowController reloadListItem:self andChildren:NO]; 
    20782080} 
     2081 
     2082- (IBAction) _sendFile:(id) sender { 
     2083        BOOL passive = [[NSUserDefaults standardUserDefaults] boolForKey:@"JVSendFilesPassively"]; 
     2084        NSString *path = nil; 
     2085        NSOpenPanel *panel = [NSOpenPanel openPanel]; 
     2086        [panel setResolvesAliases:YES]; 
     2087        [panel setCanChooseFiles:YES]; 
     2088        [panel setCanChooseDirectories:NO]; 
     2089        [panel setAllowsMultipleSelection:YES]; 
     2090 
     2091        NSView *view = [[[NSView alloc] initWithFrame:NSMakeRect( 0., 0., 200., 28. )] autorelease]; 
     2092        [view setAutoresizingMask:( NSViewWidthSizable | NSViewMaxXMargin )]; 
     2093 
     2094        NSButton *passiveButton = [[[NSButton alloc] initWithFrame:NSMakeRect( 0., 6., 200., 18. )] autorelease]; 
     2095        [[passiveButton cell] setButtonType:NSSwitchButton]; 
     2096        [passiveButton setState:passive]; 
     2097        [passiveButton setTitle:NSLocalizedString( @"Send File Passively", "send files passively file send open dialog button" )]; 
     2098        [passiveButton sizeToFit]; 
     2099 
     2100        NSRect frame = [view frame]; 
     2101        frame.size.width = NSWidth( [passiveButton frame] ); 
     2102 
     2103        [view setFrame:frame]; 
     2104        [view addSubview:passiveButton]; 
     2105 
     2106        [panel setAccessoryView:view]; 
     2107 
     2108        if( [panel runModalForTypes:nil] == NSOKButton ) { 
     2109                NSEnumerator *enumerator = [[panel filenames] objectEnumerator]; 
     2110                passive = [passiveButton state]; 
     2111                while( ( path = [enumerator nextObject] ) ) 
     2112                        [[MVFileTransferController defaultManager] addFileTransfer:[[self connection] sendFile:path toUser:_target passively:passive]]; 
     2113        } 
     2114} 
    20792115@end 
    20802116