OSDN Git Service

x264: bump to r1159-3da3f95
[handbrake-jp/handbrake-jp-git.git] / macosx / HBQueueController.mm
index 6874104..39fb40c 100644 (file)
@@ -142,9 +142,7 @@ static NSString*    HBQueuePauseResumeToolbarIdentifier       = @"HBQueuePauseRe
      */
     
        int i = 0;
-    NSEnumerator *enumerator = [fJobGroups objectEnumerator];
-       id tempObject;
-       while (tempObject = [enumerator nextObject])
+       for(id tempObject in fJobGroups)
        {
                NSDictionary *thisQueueDict = tempObject;
                if ([[thisQueueDict objectForKey:@"Status"] intValue] == 0) // Completed
@@ -478,12 +476,14 @@ static NSString*    HBQueuePauseResumeToolbarIdentifier       = @"HBQueuePauseRe
 - (IBAction)removeSelectedQueueItem: (id)sender
 {
     NSIndexSet * selectedRows = [fOutlineView selectedRowIndexes];
-    int row = [selectedRows firstIndex];
+    NSUInteger row = [selectedRows firstIndex];
+    if( row == NSNotFound )
+        return;
     /* if this is a currently encoding job, we need to be sure to alert the user,
      * to let them decide to cancel it first, then if they do, we can come back and
      * remove it */
     
-    if ([[[fJobGroups objectAtIndex:row] objectForKey:@"Status"] intValue] == 1)
+    if ([[[fJobGroups objectAtIndex:row] objectForKey:@"Status"] integerValue] == 1)
     {
        /* We pause the encode here so that it doesn't finish right after and then
         * screw up the sync while the window is open
@@ -491,7 +491,7 @@ static NSString*    HBQueuePauseResumeToolbarIdentifier       = @"HBQueuePauseRe
        [fHBController Pause:NULL];
          NSString * alertTitle = [NSString stringWithFormat:NSLocalizedString(@"Stop This Encode and Remove It ?", nil)];
         // Which window to attach the sheet to?
-        NSWindow * docWindow;
+        NSWindow * docWindow = nil;
         if ([sender respondsToSelector: @selector(window)])
             docWindow = [sender window];
         
@@ -582,14 +582,20 @@ static NSString*    HBQueuePauseResumeToolbarIdentifier       = @"HBQueuePauseRe
 - (IBAction)togglePauseResume: (id)sender
 {
     if (!fQueueEncodeLibhb) return;
-
+    
     hb_state_t s;
     hb_get_state2 (fQueueEncodeLibhb, &s);
-
+    
     if (s.state == HB_STATE_PAUSED)
+    {
         hb_resume (fQueueEncodeLibhb);
+        [self startAnimatingCurrentWorkingEncodeInQueue];
+    }
     else if ((s.state == HB_STATE_WORKING) || (s.state == HB_STATE_MUXING))
+    {
         hb_pause (fQueueEncodeLibhb);
+        [self stopAnimatingCurrentJobGroupInQueue];
+    }
 }
 
 #pragma mark -
@@ -1039,16 +1045,16 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
         
         NSString * pictureFilters = @"";
         BOOL pictureFiltersPresent = NO;
-        if( [[item objectForKey:@"VFR"] intValue] == 1)
+        
+        if( [[item objectForKey:@"PictureDetelecine"] intValue] == 1)
         {
             pictureFiltersPresent = YES;
-            pictureFilters = [pictureFilters stringByAppendingString:@" - VFR"];
+            pictureFilters = [pictureFilters stringByAppendingString:@" - Detelecine (Default)"];
         }
-        
-        if( [[item objectForKey:@"PictureDetelecine"] intValue] == 1 )
+        else if( [[item objectForKey:@"PictureDetelecine"] intValue] == 2)
         {
             pictureFiltersPresent = YES;
-            pictureFilters = [pictureFilters stringByAppendingString:@" - Detelecine"];
+            pictureFilters = [pictureFilters stringByAppendingString:[NSString stringWithFormat:@" - Detelecine (%@)",[item objectForKey:@"PictureDetelecineCustom"]]];
         }
         
         if( [[item objectForKey:@"PictureDecombDeinterlace"] intValue] == 1)
@@ -1059,12 +1065,12 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
                 if( [[item objectForKey:@"PictureDecomb"] intValue] == 1)
                 {
                     pictureFiltersPresent = YES;
-                    pictureFilters = [pictureFilters stringByAppendingString:@" - Decomb Default "];
+                    pictureFilters = [pictureFilters stringByAppendingString:@" - Decomb (Default)"];
                 }
                 if( [[item objectForKey:@"PictureDecomb"] intValue] == 2)
                 {
                     pictureFiltersPresent = YES;
-                    pictureFilters = [pictureFilters stringByAppendingString:@" - Decomb Custom "];
+                    pictureFilters = [pictureFilters stringByAppendingString:[NSString stringWithFormat:@" - Decomb (%@)",[item objectForKey:@"PictureDecombCustom"]]];
                 }
             }
         }
@@ -1075,19 +1081,19 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
                 pictureFiltersPresent = YES;
                 if ([[item objectForKey:@"PictureDeinterlace"] intValue] == 1)
                 {
-                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace: Fast "];
+                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace (Fast)"];
                 }
                 else if ([[item objectForKey:@"PictureDeinterlace"] intValue] == 2)
                 {
-                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace: Slow "];           
+                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace (Slow)"];           
                 }
                 else if ([[item objectForKey:@"PictureDeinterlace"] intValue] == 3)
                 {
-                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace: Slower "];            
+                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace (Slower)"];            
                 }
                 else if ([[item objectForKey:@"PictureDeinterlace"] intValue] == 4)
                 {
-                    pictureFilters = [pictureFilters stringByAppendingString:@" - Deinterlace: Custom "];            
+                    pictureFilters = [pictureFilters stringByAppendingString:[NSString stringWithFormat:@" - Deinterlace (%@)",[item objectForKey:@"PictureDeinterlaceCustom"]]];            
                 }
                 
             }
@@ -1097,27 +1103,34 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
             pictureFiltersPresent = YES;
             if ([[item objectForKey:@"PictureDenoise"] intValue] == 1)
             {
-                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise: Weak "];
+                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise (Weak)"];
             }
             else if ([[item objectForKey:@"PictureDenoise"] intValue] == 2)
             {
-                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise: Medium "];           
+                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise (Medium)"];           
             }
             else if ([[item objectForKey:@"PictureDenoise"] intValue] == 3)
             {
-                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise: Strong "];            
+                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise (Strong)"];            
             }
             else if ([[item objectForKey:@"PictureDenoise"] intValue] == 4)
             {
-                pictureFilters = [pictureFilters stringByAppendingString:@" - Denoise: Custom "];            
+                pictureFilters = [pictureFilters stringByAppendingString:[NSString stringWithFormat:@" - Denoise (%@)",[item objectForKey:@"PictureDenoiseCustom"]]];            
             }
             
         }
         if ([[item objectForKey:@"PictureDeblock"] intValue] != 0)
         {
             pictureFiltersPresent = YES;
-            pictureFilters = [pictureFilters stringByAppendingString: [NSString stringWithFormat:@" - Deblock (pp7) (%d) ",[[item objectForKey:@"PictureDeblock"] intValue]]];
+            pictureFilters = [pictureFilters stringByAppendingString: [NSString stringWithFormat:@" - Deblock (pp7) (%d)",[[item objectForKey:@"PictureDeblock"] intValue]]];
+        }
+        
+        if ([[item objectForKey:@"VideoGrayScale"] intValue] == 1)
+        {
+            pictureFiltersPresent = YES;
+            pictureFilters = [pictureFilters stringByAppendingString:@" - Grayscale"];
         }
+        
         if (pictureFiltersPresent == YES)
         {
             [finalString appendString: @"Filters: " withAttributes:detailBoldAttr];
@@ -1159,7 +1172,7 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
         }
         else // CRF
         {
-            videoInfo = [NSString stringWithFormat:@"%@ Constant Quality: %.0f %%", videoInfo ,[[item objectForKey:@"VideoQualitySlider"] floatValue] * 100];
+            videoInfo = [NSString stringWithFormat:@"%@ Constant Quality: %.2f", videoInfo ,[[item objectForKey:@"VideoQualitySlider"] floatValue]];
         }
         
         [finalString appendString: @"Video: " withAttributes:detailBoldAttr];
@@ -1280,7 +1293,7 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
 - (BOOL)outlineView:(NSOutlineView *)outlineView writeItems:(NSArray *)items toPasteboard:(NSPasteboard *)pboard
 {
     // Dragging is only allowed of the pending items.
-    if ([[[fJobGroups objectAtIndex:[outlineView selectedRow]] objectForKey:@"Status"] intValue] != 2) // 2 is pending
+    if ([[[items objectAtIndex:0] objectForKey:@"Status"] integerValue] != 2) // 2 is pending
     {
         return NO;
     }
@@ -1330,18 +1343,13 @@ return ![(HBQueueOutlineView*)outlineView isDragging];
     return NSDragOperationGeneric;
 }
 
-
-
 - (BOOL)outlineView:(NSOutlineView *)outlineView acceptDrop:(id <NSDraggingInfo>)info item:(id)item childIndex:(NSInteger)index
 {
-        NSMutableIndexSet *moveItems = [NSMutableIndexSet indexSet];
-    
-    id obj;
-    NSEnumerator *enumerator = [fDraggedNodes objectEnumerator];
-    while (obj = [enumerator nextObject])
-    {
+    NSMutableIndexSet *moveItems = [NSMutableIndexSet indexSet];
+
+    for( id obj in fDraggedNodes )
         [moveItems addIndex:[fJobGroups indexOfObject:obj]];
-    }
+
     // Successful drop, we use moveObjectsInQueueArray:... in fHBController
     // to properly rearrange the queue array, save it to plist and then send it back here.
     // since Controller.mm is handling all queue array manipulation.