Changeset 5205

Show
Ignore:
Timestamp:
01/30/08 05:19:49 (8 months ago)
Author:
morris
Message:

Add ability to pause a transfer, which stops it without requesting the next transfer in the list

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • WiredClient/trunk/English.lproj/Localizable.strings

    r5188 r5205  
    160160"Broadcast from %@ on %@ at %@" = "Broadcast from %1$@ on %2$@ at %3$@"; 
    161161 
    162 /* Event */ 
    163 "Broadcast Received" = "Broadcast Received"; 
    164  
    165162/* Growl event broadcast received title */ 
    166163"Broadcast received" = "Broadcast received"; 
     164 
     165/* Event */ 
     166"Broadcast Received" = "Broadcast Received"; 
    167167 
    168168/* Messages item */ 
     
    191191"Chat" = "Chat"; 
    192192 
    193 /* Event */ 
    194 "Chat Received" = "Chat Received"; 
    195  
    196193/* Growl event chat received title */ 
    197194"Chat received" = "Chat received"; 
     195 
     196/* Event */ 
     197"Chat Received" = "Chat Received"; 
    198198 
    199199/* Wired Protocol error 522 title 
     
    328328"File or Folder Not Found" = "File or Folder Not Found"; 
    329329 
     330/* Files toolbar item */ 
     331"Files" = "Files"; 
     332 
    330333/* File plural */ 
    331334"files" = "files"; 
    332  
    333 /* Files toolbar item */ 
    334 "Files" = "Files"; 
    335335 
    336336/* Transfer finished (files, transferred, speed, time) */ 
     
    448448"News" = "News"; 
    449449 
    450 /* Event */ 
    451 "News Posted" = "News Posted"; 
    452  
    453450/* Growl event news posted title */ 
    454451"News posted" = "News posted"; 
     452 
     453/* Event */ 
     454"News Posted" = "News Posted"; 
    455455 
    456456/* 'No' */ 
     
    467467/* Transfers overwrite alert button */ 
    468468"Overwrite" = "Overwrite"; 
     469 
     470/* Transfers pause button title */ 
     471"Pause" = "Pause"; 
     472 
     473/* Transfer stopped (transferred, size) */ 
     474"Paused at %@ of %@" = "Paused at %1$@ of %2$@"; 
     475 
     476/* Transfer paused (files, transferred, size) */ 
     477"Paused at %lu of %lu files, %@ of %@" = "Paused at %1$lu of %2$lu files, %3$@ of %4$@"; 
     478 
     479/* Transfer pausing */ 
     480"Pausing" = "Pausing"; 
    469481 
    470482/* Wired Protocol error 516 title */ 
     
    554566/* Bookmarks toolbar item */ 
    555567"Sounds" = "Sounds"; 
     568 
     569/* Transfers start button title */ 
     570"Start" = "Start"; 
    556571 
    557572/* About box title */ 
     
    646661"Transfer Failed" = "Transfer Failed"; 
    647662 
     663/* Event */ 
     664"Transfer Finished" = "Transfer Finished"; 
     665 
    648666/* Growl event transfer started title */ 
    649667"Transfer finished" = "Transfer finished"; 
    650668 
    651 /* Event */ 
    652 "Transfer Finished" = "Transfer Finished"; 
    653  
    654669/* Error */ 
    655670"Transfer Not Supported" = "Transfer Not Supported"; 
    656671 
    657 /* Event */ 
    658 "Transfer Started" = "Transfer Started"; 
    659  
    660672/* Growl event transfer started title */ 
    661673"Transfer started" = "Transfer started"; 
     674 
     675/* Event */ 
     676"Transfer Started" = "Transfer Started"; 
    662677 
    663678/* Transfers window title 
     
    695710"User Changed Nick" = "User Changed Nick"; 
    696711 
    697 /* Event */ 
    698 "User Changed Status" = "User Changed Status"; 
    699  
    700712/* Growl event user changed status title */ 
    701713"User changed status" = "User changed status"; 
    702714 
    703715/* Event */ 
     716"User Changed Status" = "User Changed Status"; 
     717 
     718/* Event */ 
    704719"User Joined" = "User Joined"; 
    705720 
     
    707722"User joined" = "User joined"; 
    708723 
     724/* Event */ 
     725"User Left" = "User Left"; 
     726 
    709727/* Growl event user left title */ 
    710728"User left" = "User left"; 
    711729 
    712 /* Event */ 
    713 "User Left" = "User Left"; 
    714  
    715730/* User plural */ 
    716731"users" = "users"; 
  • WiredClient/trunk/English.lproj/ReleaseNotes.rtf

    r5200 r5205  
    3333 
    3434\b0 \cf0 - File info panel can now display info for multiple files, and set folder type for multiple folders at once\ 
     35- Add ability to pause a transfer, which stops it without requesting the next transfer in the list\ 
    3536- Add Reveal in Files button to transfers window\ 
    3637- Make Reveal in Finder button work on uploads\ 
  • WiredClient/trunk/French.lproj/Localizable.strings

    r5188 r5205  
    443443"Overwrite" = "Remplacer"; 
    444444 
     445/* Transfers pause button title */ 
     446"Pause" = "Pause"; 
     447 
     448/* Transfer stopped (transferred, size) */ 
     449"Paused at %@ of %@" = "Paused at %1$@ of %2$@"; 
     450 
     451/* Transfer paused (files, transferred, size) */ 
     452"Paused at %lu of %lu files, %@ of %@" = "Paused at %1$lu of %2$lu files, %3$@ of %4$@"; 
     453 
     454/* Transfer pausing */ 
     455"Pausing" = "Pausing"; 
     456 
    445457/* Wired Protocol error 516 title */ 
    446458"Permission Denied" = "Permission refusée"; 
     
    529541/* Bookmarks toolbar item */ 
    530542"Sounds" = "Sons"; 
     543 
     544/* Transfers start button title */ 
     545"Start" = "Start"; 
    531546 
    532547/* About box title */ 
  • WiredClient/trunk/German.lproj/Localizable.strings

    r5188 r5205  
    1010/* Growl event user changed status description (nick, status) 
    1111   Client status changed message (nick, status) */ 
    12  
    1312"%@ changed status to %@" = "%1$@ wechselte Status zu %2$@"; 
    1413 
     
    3130   File info window title (filename) 
    3231   User info window title (nick) */ 
    33  
    34  
    3532"%@ Info" = "%@ Info"; 
    3633 
    3734/* Client rename message (oldnick, newnick) 
    3835   Growl event user changed nick description (oldnick, newnick) */ 
    39  
    4036"%@ is now known as %@" = "%1$@ ist nun bekannt als %2$@"; 
    4137 
    4238/* User info transfer (transferred, total, speed, time) 
    4339   Transfer status (transferred, size, speed, time) */ 
    44  
    4540"%@ of %@, %@/s, %@" = "%1$@ of %2$@, %3$@/s, %4$@"; 
    4641 
     
    7772/* File info folder size (count, 'item(s)' 
    7873   Files folder size (count, 'item(s)' */ 
    79  
    8074"%llu %@" = "%1$llu %2$@"; 
    8175 
     
    112106/* Accounts toolbar item 
    113107   Accounts window title */ 
    114  
    115108"Accounts" = "Benutzer"; 
    116109 
     
    132125/* Delete file dialog title (count) 
    133126   Delete account dialog title (count) */ 
    134  
    135127"Are you sure you want to delete %lu items?" = "Sollen wirklich %lu Objekte gelöscht werden?"; 
    136128 
     
    139131   Delete file dialog title (filename) 
    140132   Delete tracker bookmark dialog title (bookmark) */ 
    141  
    142  
    143  
    144133"Are you sure you want to delete \"%@\"?" = "Soll \"%@\" wirklich gelöscht werden?"; 
    145134 
     
    193182   Restore layout to default dialog button title 
    194183   Delete highlight dialog button title */ 
    195  
    196  
    197  
    198  
    199  
    200  
    201  
    202  
    203  
    204  
    205  
    206  
    207184"Cancel" = "Abbrechen"; 
    208185 
     
    212189/* Chat toolbar item 
    213190   Chat window title */ 
    214  
    215191"Chat" = "Forum"; 
    216192 
     
    223199/* Error 
    224200   Wired Protocol error 522 title */ 
    225  
    226201"Checksum Mismatch" = "Prüfsumme ungleich"; 
    227202 
    228203/* Clear news button title 
    229204   Clear messages dialog button */ 
    230  
    231205"Clear" = "Löschen"; 
    232206 
     
    306280   Delete bookmark dialog button title 
    307281   Delete file button title */ 
    308  
    309  
    310  
    311  
    312  
    313282"Delete" = "Löschen"; 
    314283 
     
    316285   Disconnect menu item 
    317286   Disconnect dialog button */ 
    318  
    319  
    320287"Disconnect" = "Trennen"; 
    321288 
    322289/* Growl event disconnected title 
    323290   Chat window title */ 
    324  
    325291"Disconnected" = "Getrennt"; 
    326292 
     
    354320/* Error 
    355321   Transfers overwrite alert title */ 
    356  
    357322"File Exists" = "Datei bereits vorhanden"; 
    358323 
     
    413378/* User list menu title 
    414379   Private chat invite button title */ 
    415  
    416380"Ignore" = "Ignorieren"; 
    417381 
     
    472436/* Messages toolbar item 
    473437   Messages window title */ 
    474  
    475438"Messages" = "Nachrichten"; 
    476439 
     
    483446/* News toolbar item 
    484447   News window title */ 
    485  
    486448"News" = "Neuigkeiten"; 
    487449 
     
    498460   Make layout default dialog button title 
    499461   Restore layout to default dialog button title */ 
    500  
    501  
    502462"OK" = "OK"; 
    503463 
     
    505465"Open Failed" = "Öffnen fehlgeschlagen"; 
    506466 
     467/* Transfers pause button title */ 
     468"Pause" = "Pause"; 
     469 
     470/* Transfer stopped (transferred, size) */ 
     471"Paused at %@ of %@" = "Paused at %1$@ of %2$@"; 
     472 
     473/* Transfer paused (files, transferred, size) */ 
     474"Paused at %lu of %lu files, %@ of %@" = "Paused at %1$lu of %2$lu files, %3$@ of %4$@"; 
     475 
     476/* Transfer pausing */ 
     477"Pausing" = "Pausing"; 
     478 
    507479/* Transfers overwrite alert button */ 
    508480"Overwrite" = "Überschreiben"; 
     
    564536/* Search toolbar item 
    565537   Search window title */ 
    566  
    567538"Search" = "Suche"; 
    568539 
     
    575546/* Event 
    576547   WCWiredClientServerDisconnected title */ 
    577  
    578548"Server Disconnected" = "Server getrennt"; 
    579549 
     
    583553   Wired Protocol error 503 title 
    584554   Wired Protocol unknown error title */ 
    585  
    586  
    587  
    588  
    589555"Server Error" = "Server-Fehler"; 
    590556 
     
    600566/* Bookmarks toolbar item */ 
    601567"Sounds" = "Töne"; 
     568 
     569/* Transfers start button title */ 
     570"Start" = "Start"; 
    602571 
    603572/* About box title */ 
     
    666635   Delete account dialog description 
    667636   Delete highlight dialog description */ 
    668  
    669  
    670  
    671  
    672  
    673  
    674  
    675637"This cannot be undone." = "Das kann nicht widerrufen werden."; 
    676638 
     
    716678/* Transfers toolbar item 
    717679   Transfers window title */ 
    718  
    719680"Transfers" = "Übertragungen"; 
    720681 
     
    729690   Untitled tracker bookmark 
    730691   Untitled ignore */ 
    731  
    732  
    733  
    734692"Untitled" = "Ohne Namen"; 
    735693 
  • WiredClient/trunk/Japanese.lproj/Localizable.strings

    r5188 r5205  
    471471"Overwrite" = "上書き"; 
    472472 
     473/* Transfers pause button title */ 
     474"Pause" = "Pause"; 
     475 
     476/* Transfer stopped (transferred, size) */ 
     477"Paused at %@ of %@" = "Paused at %1$@ of %2$@"; 
     478 
     479/* Transfer paused (files, transferred, size) */ 
     480"Paused at %lu of %lu files, %@ of %@" = "Paused at %1$lu of %2$lu files, %3$@ of %4$@"; 
     481 
     482/* Transfer pausing */ 
     483"Pausing" = "Pausing"; 
     484 
    473485/* Wired Protocol error 516 title */ 
    474486"Permission Denied" = "アクセス権がありません"; 
     
    557569/* Bookmarks toolbar item */ 
    558570"Sounds" = "サウンド"; 
     571 
     572/* Transfers start button title */ 
     573"Start" = "Start"; 
    559574 
    560575/* About box title */ 
  • WiredClient/trunk/WCTransfer.h

    r5199 r5205  
    4040        WCTransferListing, 
    4141        WCTransferRunning, 
     42        WCTransferPausing, 
     43        WCTransferPaused, 
    4244        WCTransferStopping, 
    4345        WCTransferStopped, 
  • WiredClient/trunk/WCTransfer.m

    r5199 r5205  
    464464 
    465465- (NSString *)status { 
     466        NSString                        *format; 
    466467        NSTimeInterval          interval; 
    467468        WIFileOffset            bytes; 
     
    518519                        break; 
    519520                         
     521                case WCTransferPausing: 
     522                        return [NSSWF:@"%@%C", NSLS(@"Pausing", @"Transfer pausing"), 0x2026]; 
     523                        break; 
     524                         
     525                case WCTransferPaused: 
    520526                case WCTransferStopped: 
    521527                case WCTransferDisconnected: 
    522528                        if([self isFolder] && [self totalFiles] > 1) { 
    523                                 return [NSSWF: 
    524                                         NSLS(@"Stopped at %lu of %lu files, %@ of %@", @"Transfer stopped (files, transferred, size)"), 
     529                                if([self state] == WCTransferPaused) 
     530                                        format = NSLS(@"Paused at %lu of %lu files, %@ of %@", @"Transfer paused (files, transferred, size)"); 
     531                                else 
     532                                        format = NSLS(@"Stopped at %lu of %lu files, %@ of %@", @"Transfer stopped (files, transferred, size)"); 
     533 
     534                                return [NSSWF:format, 
    525535                                        [self transferredFiles], 
    526536                                        [self totalFiles], 
     
    528538                                        [NSString humanReadableStringForSizeInBytes:[self size]]]; 
    529539                        } else { 
    530                                 return [NSSWF: 
    531                                         NSLS(@"Stopped at %@ of %@", @"Transfer stopped (transferred, size)"), 
     540                                if([self state] == WCTransferPaused) 
     541                                        format = NSLS(@"Paused at %@ of %@", @"Transfer stopped (transferred, size)"); 
     542                                else 
     543                                        format = NSLS(@"Stopped at %@ of %@", @"Transfer stopped (transferred, size)"); 
     544 
     545                                return [NSSWF:format, 
    532546                                        [NSString humanReadableStringForSizeInBytes:[self transferred]], 
    533547                                        [NSString humanReadableStringForSizeInBytes:[self size]]]; 
  • WiredClient/trunk/WCTransfers.m

    r5204 r5205  
    173173                switch([transfer state]) { 
    174174                        case WCTransferLocallyQueued: 
     175                        case WCTransferPaused: 
    175176                        case WCTransferStopped: 
    176177                        case WCTransferDisconnected: 
     
    180181 
    181182                        case WCTransferRunning: 
    182                                 [_startButton setEnabled:NO]; 
     183                                [_startButton setEnabled:YES]; 
    183184                                [_stopButton setEnabled:YES]; 
    184185                                break; 
     
    186187                        case WCTransferWaiting: 
    187188                        case WCTransferQueued: 
     189                        case WCTransferPausing: 
    188190                        case WCTransferStopping: 
    189191                        case WCTransferRemoving: 
     
    198200                [_revealInFinderButton setEnabled:![transfer isPreview]]; 
    199201                [_revealInFilesButton setEnabled:YES]; 
     202        } 
     203         
     204        if(row < 0 || [[_transfers objectAtIndex:row] state] != WCTransferRunning) { 
     205                [_startButton setTitle:NSLS(@"Start", @"Transfers start button title")]; 
     206                [_startButton setImage:[NSImage imageNamed:@"Start"]]; 
     207        } else { 
     208                [_startButton setTitle:NSLS(@"Pause", @"Transfers pause button title")]; 
     209                [_startButton setImage:[NSImage imageNamed:@"Pause"]]; 
    200210        } 
    201211} 
     
    453463        WCError                         *error; 
    454464        NSUInteger                      files; 
     465        WCTransferState         state; 
    455466        BOOL                            next = YES; 
    456467         
     
    519530                } 
    520531        } else { 
    521                 if([transfer state] == WCTransferStopping) 
     532                state = [transfer state]; 
     533                 
     534                if(state == WCTransferPausing) { 
     535                        [transfer setState:WCTransferPaused]; 
     536                         
     537                        next = NO; 
     538                } 
     539                else if(state == WCTransferStopping) { 
    522540                        [transfer setState:WCTransferStopped]; 
    523                 else if([transfer state] == WCTransferRemoving) 
     541                } 
     542                else if(state == WCTransferRemoving) { 
    524543                        [_transfers removeObject:transfer]; 
     544                } 
    525545                 
    526546                _running--; 
     
    812832        state = [transfer state]; 
    813833         
    814         if(state != WCTransferRunning && state != WCTransferStopping && state != WCTransferRemoving) { 
     834        if(state != WCTransferRunning && state != WCTransferPausing && 
     835           state != WCTransferStopping && state != WCTransferRemoving) { 
    815836                [transfer setState:WCTransferRunning]; 
    816837                 
     
    832853                        pool = [[NSAutoreleasePool alloc] init]; 
    833854                 
    834                 if([transfer state] == WCTransferStopping || [transfer state] == WCTransferRemoving) 
     855                state = [transfer state]; 
     856                 
     857                if(state == WCTransferPausing || state == WCTransferStopping || state == WCTransferRemoving) 
    835858                        break; 
    836859 
     
    976999        state = [transfer state]; 
    9771000         
    978         if(state != WCTransferRunning && state != WCTransferStopping && state != WCTransferRemoving) { 
     1001        if(state != WCTransferRunning && state != WCTransferPausing && 
     1002           state != WCTransferStopping && state != WCTransferRemoving) { 
    9791003                [transfer setState:WCTransferRunning]; 
    9801004                 
     
    9961020                        pool = [[NSAutoreleasePool alloc] init]; 
    9971021 
    998                 if([transfer state] == WCTransferStopping || [transfer state] == WCTransferRemoving) 
     1022                state = [transfer state]; 
     1023                 
     1024                if(state == WCTransferPausing || state == WCTransferStopping || state == WCTransferRemoving) 
    9991025                        break; 
    10001026 
     
    14941520 
    14951521- (IBAction)start:(id)sender { 
     1522        WCTransfer              *transfer; 
     1523         
    14961524        if(![_startButton isEnabled]) 
    14971525                return; 
    14981526 
    1499         [self _requestTransfer:[self _selectedTransfer]]; 
     1527        transfer = [self _selectedTransfer]; 
     1528         
     1529        if([transfer state] == WCTransferRunning) 
     1530                [transfer setState:WCTransferPausing]; 
     1531        else 
     1532                [self _requestTransfer:[self _selectedTransfer]]; 
     1533                 
     1534        [_transfersTableView setNeedsDisplay:YES]; 
     1535 
     1536        [self _validate]; 
    15001537} 
    15011538