summaryrefslogtreecommitdiffstats
path: root/macosx/Controller.mm
diff options
context:
space:
mode:
authorjohnallen <[email protected]>2007-01-07 15:34:07 +0000
committerjohnallen <[email protected]>2007-01-07 15:34:07 +0000
commit7c524f73450b318c1b45ac584e68f2abb88a5935 (patch)
tree796208600c3ac5eb6cea3cc9bf0067f913834a60 /macosx/Controller.mm
parent8a2e5021dd7f9d6cd8864a93da68009b62942542 (diff)
added HB_STATE_MUXING to hb_state_s and corresponding structure.
this state indicates the transition from the end of HB_STATE_WORKING to the beginning of HB_STATE_WORKDONE. This state can take as long a 10 minutes on a long conversion. The associated working structure contains a progress float. Once we determine how to get a proper progress from the call to av_write_trailer in libavformat, we can update this progress. HB, IHB, and HBTest are now using using HB_STATE_MUXING to provided feedback to the user. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@96 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'macosx/Controller.mm')
-rw-r--r--macosx/Controller.mm25
1 files changed, 25 insertions, 0 deletions
diff --git a/macosx/Controller.mm b/macosx/Controller.mm
index a38d0d062..a2e872a64 100644
--- a/macosx/Controller.mm
+++ b/macosx/Controller.mm
@@ -350,6 +350,31 @@ static int FormatSettings[3][4] =
}
#undef p
+#define p s.param.muxing
+ case HB_STATE_MUXING:
+ {
+ float progress_total;
+ NSMutableString * string;
+
+ /* Update text field */
+ string = [NSMutableString stringWithFormat:
+ _( @"Muxing: %.2f %%" ), 100.0 * p.progress];
+ [fStatusField setStringValue: string];
+
+ /* Update slider */
+ [fRipIndicator setDoubleValue: 100.0 * p.progress];
+
+ /* Update dock icon */
+ [self UpdateDockIcon: 100.0 * p.progress];
+
+ [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];