]> granicus.if.org Git - handbrake/commitdiff
MacGui: Added Main Menu commands, and set enabled states to prevent crashing due...
authordynaflash <dynaflashtech@gmail.com>
Sun, 19 Aug 2007 04:17:38 +0000 (04:17 +0000)
committerdynaflash <dynaflashtech@gmail.com>
Sun, 19 Aug 2007 04:17:38 +0000 (04:17 +0000)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@831 b64f7644-9d1e-0410-96f1-a4d463321fa5

macosx/Controller.h
macosx/Controller.mm
macosx/English.lproj/MainMenu.nib/classes.nib
macosx/English.lproj/MainMenu.nib/info.nib
macosx/English.lproj/MainMenu.nib/keyedobjects.nib

index cbb0181d0145bd9de546085b5112b52f95f463ba..4c4d4b4dc1e27b7bdc105fbc5bfdddf3e1e24fe6 100644 (file)
     IBOutlet NSPanel             * fQueuePanel;
     IBOutlet NSTextField         * fQueueStatus;
        
+       /* Menu Items */
+       /* File Menu */
+       IBOutlet NSMenu * fMenuBarFileMenu;
+       IBOutlet NSMenuItem * fMenuOpenSource;
+       IBOutlet NSMenuItem * fMenuAddToQueue;
+       IBOutlet NSMenuItem * fMenuStartEncode;
+       IBOutlet NSMenuItem * fMenuPauseEncode;
+       /* Window Menu */
+       IBOutlet NSMenu * fMenuBarWindowMenu;
+       IBOutlet NSMenuItem * fMenuPresetsDrawerToggle;
+       IBOutlet NSMenuItem * fMenuQueuePanelShow;
+       IBOutlet NSMenuItem * fMenuPicturePanelShow;
+       IBOutlet NSMenuItem * fMenuActivityWindowShow;
+       
     /* Source box */
        IBOutlet NSProgressIndicator * fScanIndicator;
        NSString                     * sourceDisplayName;
index 5fe74367b08f08c5e17c294775b2d4819c8dba9a..efe81509019fa466a343216faeec2a539abb5e58 100644 (file)
@@ -129,8 +129,14 @@ static NSString*       ChooseSourceIdentifier   = @"Choose Source Item Identifie
 - (void) awakeFromNib
 {
     [fWindow center];
-       
-    [self TranslateStrings];
+       /* set the main menu bar so it doesnt auto enable the menu items
+          so we can manually do it with setEnabled: This should be changed
+          to use validateUserInterfaceItem: along with setAutoEnablesItems: YES
+          in the next release */
+       [fMenuBarFileMenu setAutoenablesItems: NO];
+    [fMenuBarWindowMenu setAutoenablesItems: NO];
+       [fMenuPauseEncode setEnabled: NO];
+       [self TranslateStrings];
     /* Initialize currentScanCount so HB can use it to
                evaluate successive scans */
        currentScanCount = 0;
@@ -656,15 +662,22 @@ list = hb_get_titles( fHandle );
        int checkScanCount = hb_get_scancount( fHandle );
        if (checkScanCount > currentScanCount)
        {
-
+               
                currentScanCount = checkScanCount;
-                       [fScanController Cancel: NULL];
-                   [fScanIndicator setIndeterminate: NO];
-            [fScanIndicator setDoubleValue: 0.0];
-                       [fScanIndicator setHidden: YES];
-                       [fScanController Cancel: NULL];
-                       [self ShowNewScan: NULL];
-
+               [fScanController Cancel: NULL];
+               [fScanIndicator setIndeterminate: NO];
+               [fScanIndicator setDoubleValue: 0.0];
+               [fScanIndicator setHidden: YES];
+               [fScanController Cancel: NULL];
+               /* Enable/Disable Menu Controls Accordingly */
+               [fMenuOpenSource setEnabled: YES];
+               [fMenuStartEncode setEnabled: YES];
+               [fMenuAddToQueue setEnabled: YES];
+               
+               [fMenuPicturePanelShow setEnabled: YES];
+               [fMenuQueuePanelShow setEnabled: YES];
+               [self ShowNewScan: NULL];
+               
        }
        
        
@@ -731,6 +744,10 @@ list = hb_get_titles( fHandle );
             /* Update dock icon */
             [self UpdateDockIcon: progress_total];
                        
+                       /* Main Menu controls */
+                       [fMenuPauseEncode setTitle: @"Pause Encode"];
+                       [fMenuStartEncode setTitle: @"Cancel Encode"];
+                       
             /* new toolbar controls */
             pauseButtonEnabled = YES;
             resumeOrPause = NO;
@@ -758,20 +775,17 @@ list = hb_get_titles( fHandle );
             /* Update dock icon */
             [self UpdateDockIcon: 1.0];
                        
-            //[fPauseButton setEnabled: YES];
-            //[fPauseButton setTitle: _( @"Pause" )];
-            //[fRipButton setEnabled: YES];
-                       // [fRipButton setTitle: _( @"Cancel" )];
+                       
             break;
         }
 #undef p
                        
         case HB_STATE_PAUSED:
-                   //[fStatusField setStringValue: _( @"Paused" )];
-            //[fPauseButton setEnabled: YES];
-            //[fPauseButton setTitle: _( @"Resume" )];
-            //[fRipButton setEnabled: YES];
-            //[fRipButton setTitle: _( @"Cancel" )];
+                   [fStatusField setStringValue: _( @"Paused" )];
+            
+                       [fMenuPauseEncode setTitle: @"Resume Encode"];
+                       
+                       
                        /* new toolbar controls */
             pauseButtonEnabled = YES;
             resumeOrPause = YES;
@@ -784,8 +798,11 @@ list = hb_get_titles( fHandle );
             [fStatusField setStringValue: _( @"Done." )];
             [fRipIndicator setIndeterminate: NO];
             [fRipIndicator setDoubleValue: 0.0];
-            //[fRipButton setTitle: _( @"Start" )];
-                       
+            
+                       /* Main Menu Controls*/
+                       [fMenuPauseEncode setTitle: @"Pause Encode"];
+                       [fMenuPauseEncode setEnabled: NO];
+                       [fMenuStartEncode setTitle: @"Start Encode"];
             /* Restore dock icon */
             [self UpdateDockIcon: -1.0];
                        
@@ -1122,7 +1139,17 @@ list = hb_get_titles( fHandle );
 
 - (IBAction) ShowScanPanel: (id) sender
 {
-    [fScanController Show];
+    /* Enable/Disable Menu Controls Accordingly */
+       [fMenuOpenSource setEnabled: NO];
+       [fMenuStartEncode setEnabled: NO];
+       [fMenuAddToQueue setEnabled: NO];
+       
+       [fMenuPicturePanelShow setEnabled: NO];
+       [fMenuQueuePanelShow setEnabled: NO];
+       
+       
+       [fScanController Show];
+       
 }
 
 - (IBAction) OpenMainWindow: (id) sender
@@ -1220,7 +1247,15 @@ list = hb_get_titles( fHandle );
 
 - (IBAction) ShowPicturePanel: (id) sender
 {
-    hb_list_t  * list  = hb_get_titles( fHandle );
+    /* Enable/Disable Menu Controls Accordingly */
+       [fMenuOpenSource setEnabled: NO];
+       [fMenuStartEncode setEnabled: NO];
+       [fMenuAddToQueue setEnabled: NO];
+       
+       [fMenuPicturePanelShow setEnabled: NO];
+       [fMenuQueuePanelShow setEnabled: NO];
+       
+       hb_list_t  * list  = hb_get_titles( fHandle );
     hb_title_t * title = (hb_title_t *) hb_list_item( list,
             [fSrcTitlePopUp indexOfSelectedItem] );
 
@@ -1237,6 +1272,15 @@ list = hb_get_titles( fHandle );
     [NSApp runModalForWindow: fPicturePanel];
     [NSApp endSheet: fPicturePanel];
     [fPicturePanel orderOut: self];
+       
+       /* Enable/Disable Menu Controls Accordingly */
+       [fMenuOpenSource setEnabled: YES];
+       [fMenuStartEncode setEnabled: YES];
+       [fMenuAddToQueue setEnabled: YES];
+       
+       [fMenuPicturePanelShow setEnabled: YES];
+       [fMenuQueuePanelShow setEnabled: YES];
+       
        [self CalculatePictureSizing: sender];
 }
 
@@ -1602,6 +1646,9 @@ list = hb_get_titles( fHandle );
        // [fRipButton   setEnabled: NO];
        pauseButtonEnabled = NO;
        startButtonEnabled = NO;
+       
+       [fMenuPauseEncode setEnabled: YES];
+       
        NSRect frame = [fWindow frame];
     if (frame.size.width <= 591)
         frame.size.width = 591;
index 103826ac372dea7bec88db46ea739ac1cd409477..2d93f6edd32822407923c8fc609e595c6beddd73 100644 (file)
                 fDstFormatField = NSTextField; 
                 fDstFormatPopUp = NSPopUpButton; 
                 fDstMpgLargeFileCheck = NSButton; 
+                fMenuActivityWindowShow = NSMenuItem; 
+                fMenuAddToQueue = NSMenuItem; 
+                fMenuBarFileMenu = NSMenu; 
+                fMenuBarWindowMenu = NSMenu; 
+                fMenuOpenSource = NSMenuItem; 
+                fMenuPauseEncode = NSMenuItem; 
+                fMenuPicturePanelShow = NSMenuItem; 
+                fMenuPresetsDrawerToggle = NSMenuItem; 
+                fMenuQueuePanelShow = NSMenuItem; 
+                fMenuStartEncode = NSMenuItem; 
                 fPicLabelAnamorphic = NSTextField; 
                 fPicLabelAr = NSTextField; 
                 fPicLabelDeinter = NSTextField; 
index bf5d039c3fbbc6ce9dd4ae781179017518ee7f14..1a40317443e84d5f578203f2cab83d71b6d09d34 100644 (file)
@@ -3,15 +3,15 @@
 <plist version="1.0">
 <dict>
        <key>IBDocumentLocation</key>
-       <string>82 73 451 803 0 0 1440 878 </string>
+       <string>106 75 451 803 0 0 1440 878 </string>
        <key>IBEditorPositions</key>
        <dict>
                <key>1843</key>
                <string>540 238 200 530 0 0 1280 778 </string>
                <key>2436</key>
-               <string>268 316 192 68 0 0 1280 778 </string>
+               <string>307 361 192 68 0 0 1440 878 </string>
                <key>29</key>
-               <string>14 517 368 44 0 0 1280 778 </string>
+               <string>631 290 368 44 0 0 1440 878 </string>
        </dict>
        <key>IBFramework Version</key>
        <string>446.1</string>
@@ -27,9 +27,8 @@
        <integer>4</integer>
        <key>IBOpenObjects</key>
        <array>
-               <integer>29</integer>
-               <integer>21</integer>
                <integer>2436</integer>
+               <integer>29</integer>
        </array>
        <key>IBSystem Version</key>
        <string>8R2218</string>
index be194ed211bac53551407382a9d73969ccea50af..6d1c0a613c87f218dc926f6ad2f0b1f3f7fb8e5a 100644 (file)
Binary files a/macosx/English.lproj/MainMenu.nib/keyedobjects.nib and b/macosx/English.lproj/MainMenu.nib/keyedobjects.nib differ