Diff for /chimera/ProgressDlgController.mm between versions 1.1 and 1.5

version 1.1, 2002/02/03 05:53:12 version 1.5, 2002/02/04 00:14:25
Line 8 Line 8
   
 #import "ProgressDlgController.h"  #import "ProgressDlgController.h"
   
   #include "nsIWebBrowserPersist.h"
   #include "nsIInputStream.h"
   #include "nsIURL.h"
   #include "nsIDOMDocument.h"
   
   static NSString *SaveFileToolbarIdentifier                      = @"Save File Dialog Toolbar";
   static NSString *CancelToolbarItemIdentifier            = @"Cancel Toolbar Item";
   static NSString *PauseResumeToolbarItemIdentifier       = @"Pause and Resume Toggle Toolbar Item";
   static NSString *ShowFileToolbarItemIdentifier          = @"Show File Toolbar Item";
   static NSString *OpenFileToolbarItemIdentifier          = @"Open File Toolbar Item";
   static NSString *LeaveOpenToolbarItemIdentifier         = @"Leave Open Toggle Toolbar Item";
   
   @interface ProgressDlgController(Private)
   -(void)setupToolbar;
   @end
   
 @implementation ProgressDlgController  @implementation ProgressDlgController
   
   - (id)init
   {
       if ((self = [super init])) {
           mDownloadIsPaused = NO;  //Get this value from preferences instead of hardcoding NO.
           mSaveFileDialogShouldStayOpen = NO;
       }
       return self;
   }
   
   -(void)setWebPersist:(nsIWebBrowserPersist*)aPersist 
                 source:(nsISupports*)aSource
            destination:(NSString*)aDestination
            contentType:(const char*)aContentType
               postData:(nsIInputStream*)aInputStream
            bypassCache:(BOOL)aBypassCache
   {
   
   }
   
   - (void)windowDidLoad
   {
       [self setupToolbar];
   }
   
   - (void)setupToolbar
   {
       NSToolbar *toolbar = [[[NSToolbar alloc] initWithIdentifier:SaveFileToolbarIdentifier] autorelease];
   
       [toolbar setDisplayMode:NSToolbarDisplayModeDefault];
       [toolbar setAllowsUserCustomization:YES];
       [toolbar setAutosavesConfiguration:YES];
       [toolbar setDelegate:self];
       [[self window] setToolbar:toolbar];
   }
   
   - (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar
   {
       return [NSArray arrayWithObjects: CancelToolbarItemIdentifier,
           PauseResumeToolbarItemIdentifier,
           ShowFileToolbarItemIdentifier,
           OpenFileToolbarItemIdentifier,
           LeaveOpenToolbarItemIdentifier,
           NSToolbarCustomizeToolbarItemIdentifier,
           NSToolbarFlexibleSpaceItemIdentifier,
           NSToolbarSpaceItemIdentifier,
           NSToolbarSeparatorItemIdentifier,
           nil];
   }
   
   - (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar *)toolbar
   {
       return [NSArray arrayWithObjects: CancelToolbarItemIdentifier,
           PauseResumeToolbarItemIdentifier,
           NSToolbarFlexibleSpaceItemIdentifier,
           LeaveOpenToolbarItemIdentifier,
           ShowFileToolbarItemIdentifier,
           OpenFileToolbarItemIdentifier,
           nil];
   }
   
   - (NSToolbarItem *) toolbar:(NSToolbar *)toolbar
         itemForItemIdentifier:(NSString *)itemIdent
     willBeInsertedIntoToolbar:(BOOL)willBeInserted
   {
       NSToolbarItem *toolbarItem = [[[NSToolbarItem alloc] initWithItemIdentifier:itemIdent] autorelease];
   
       if ( [itemIdent isEqual:CancelToolbarItemIdentifier] ) {
           [toolbarItem setLabel:@"Cancel"];
           [toolbarItem setPaletteLabel:@"Cancel Download"];
           [toolbarItem setToolTip:@"Cancel this file download"];
           [toolbarItem setImage:[NSImage imageNamed:@"saveCancel"]];
           [toolbarItem setTarget:self];
           [toolbarItem setAction:@selector(cancel)];
       } else if ( [itemIdent isEqual:PauseResumeToolbarItemIdentifier] ) {
           [toolbarItem setLabel:@"Pause"];
           [toolbarItem setPaletteLabel:@"Pause Download"];
           [toolbarItem setToolTip:@"Pause this FTP file download"];
           [toolbarItem setImage:[NSImage imageNamed:@"savePause"]];
           [toolbarItem setTarget:self];
           [toolbarItem setAction:@selector(pauseAndResumeDownload)];
           pauseResumeToggleToolbarItem = toolbarItem; //establish reference
       } else if ( [itemIdent isEqual:ShowFileToolbarItemIdentifier] ) {
           [toolbarItem setLabel:@"Show File"];
           [toolbarItem setPaletteLabel:@"Show File"];
           [toolbarItem setToolTip:@"Show the saved file in the Finder"];
           [toolbarItem setImage:[NSImage imageNamed:@"saveShowFile"]];
           [toolbarItem setTarget:self];
           [toolbarItem setAction:@selector(showFile)];
       } else if ( [itemIdent isEqual:OpenFileToolbarItemIdentifier] ) {
           [toolbarItem setLabel:@"Open File"];
           [toolbarItem setPaletteLabel:@"Open File"];
           [toolbarItem setToolTip:@"Open the saved file in its default application."];
           [toolbarItem setImage:[NSImage imageNamed:@"saveOpenFile"]];
           [toolbarItem setTarget:self];
           [toolbarItem setAction:@selector(openFile)];
       } else if ( [itemIdent isEqual:LeaveOpenToolbarItemIdentifier] ) {
           if ( mSaveFileDialogShouldStayOpen ) {
               [toolbarItem setLabel:@"Leave Open"];
               [toolbarItem setPaletteLabel:@"Toggle Close Behavior"];
               [toolbarItem setToolTip:@"Window will stay open when download finishes."];
               [toolbarItem setImage:[NSImage imageNamed:@"saveLeaveOpenYES"]];
               [toolbarItem setTarget:self];
               [toolbarItem setAction:@selector(toggleLeaveOpen)];
           } else {
               [toolbarItem setLabel:@"Close When Done"];
               [toolbarItem setPaletteLabel:@"Toggle Close Behavior"];
               [toolbarItem setToolTip:@"Window will close automatically when download finishes."];
               [toolbarItem setImage:[NSImage imageNamed:@"saveLeaveOpenNO"]];
               [toolbarItem setTarget:self];
               [toolbarItem setAction:@selector(toggleLeaveOpen)];
           }
           leaveOpenToggleToolbarItem = toolbarItem; //establish reference
       } else {
           toolbarItem = nil;
       }
   
       return toolbarItem;
   }
   
   -(void)cancel
   {
       NSLog(@"Request to cancel download.");
       //Put logic here!
   }
   
   -(void)pauseAndResumeDownload
   {
       if ( ! mDownloadIsPaused ) {
           //Do logic to pause download
           mDownloadIsPaused = YES;
           [pauseResumeToggleToolbarItem setLabel:@"Resume"];
           [pauseResumeToggleToolbarItem setPaletteLabel:@"Resume Download"];
           [pauseResumeToggleToolbarItem setToolTip:@"Resume the paused FTP download"];
           [pauseResumeToggleToolbarItem setImage:[NSImage imageNamed:@"saveResume"]];
       } else {
           //Do logic to resume download
           mDownloadIsPaused = NO;
           [pauseResumeToggleToolbarItem setLabel:@"Pause"];
           [pauseResumeToggleToolbarItem setPaletteLabel:@"Pause Download"];
           [pauseResumeToggleToolbarItem setToolTip:@"Pause this FTP file download"];
           [pauseResumeToggleToolbarItem setImage:[NSImage imageNamed:@"savePause"]];
       }
   }
   
   -(void)showFile
   {
       NSLog(@"Request to show file.");
   }
   
   -(void)openFile
   {
       NSLog(@"Request to open file.");
   }
   
   -(void)toggleLeaveOpen
   {
       if ( ! mSaveFileDialogShouldStayOpen ) {
           //Do logic to set the preference and make it take effect
           mSaveFileDialogShouldStayOpen = YES;
           [leaveOpenToggleToolbarItem setLabel:@"Leave Open"];
           [leaveOpenToggleToolbarItem setPaletteLabel:@"Toggle Close Behavior"];
           [leaveOpenToggleToolbarItem setToolTip:@"Window will stay open when download finishes."];
           [leaveOpenToggleToolbarItem setImage:[NSImage imageNamed:@"saveLeaveOpenYES"]];
       } else {
           //Do logic to set the preference and make it take effect
           mSaveFileDialogShouldStayOpen = NO;
           [leaveOpenToggleToolbarItem setLabel:@"Close When Done"];
           [leaveOpenToggleToolbarItem setPaletteLabel:@"Toggle Close Behavior"];
           [leaveOpenToggleToolbarItem setToolTip:@"Window will close automatically when download finishes."];
           [leaveOpenToggleToolbarItem setImage:[NSImage imageNamed:@"saveLeaveOpenNO"]];
       }
   }
   
 @end  @end

Removed from v.1.1  
changed lines
  Added in v.1.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>