Commit 31f1c24b authored by Felix Paul Kühne's avatar Felix Paul Kühne

macosx/wizard: allow partial extract values to be entered in a sane manner (close #4991)

(cherry picked from commit 38faa0be67f7df1fa4eca218aa63782e66d7806c)
parent 6189b30c
......@@ -1259,21 +1259,36 @@ static VLCWizard *_o_sharedInstance = nil;
input_item_AddOption( p_input, [[o_t8_fld_mrl stringValue] UTF8String], VLC_INPUT_OPTION_TRUSTED );
if(! [[o_userSelections objectForKey:@"partExtractFrom"]
isEqualToString:@""] )
{
input_item_AddOption( p_input, [[NSString
stringWithFormat: @"start-time=%@", [o_userSelections
objectForKey: @"partExtractFrom"]] UTF8String],
VLC_INPUT_OPTION_TRUSTED );
isEqualToString:@""]) {
NSArray * components = [[o_userSelections objectForKey: @"partExtractFrom"] componentsSeparatedByString:@":"];
NSUInteger componentCount = [components count];
NSUInteger time = 0;
if (componentCount == 1)
time = 1000000 * ([[components objectAtIndex:0] intValue]);
else if (componentCount == 2)
time = 1000000 * ([[components objectAtIndex:0] intValue] * 60 + [[components objectAtIndex:1] intValue]);
else if (componentCount == 3)
time = 1000000 * ([[components objectAtIndex:0] intValue] * 3600 + [[components objectAtIndex:1] intValue] * 60 + [[components objectAtIndex:2] intValue]);
else
msg_Err(VLCIntf, "Invalid string format for time");
input_item_AddOption(p_input, [[NSString stringWithFormat: @"start-time=%lu", time] UTF8String], VLC_INPUT_OPTION_TRUSTED);
}
if(! [[o_userSelections objectForKey:@"partExtractTo"]
isEqualToString:@""] )
{
input_item_AddOption( p_input, [[NSString
stringWithFormat: @"stop-time=%@", [o_userSelections
objectForKey: @"partExtractTo"]] UTF8String],
VLC_INPUT_OPTION_TRUSTED );
isEqualToString:@""]) {
NSArray * components = [[o_userSelections
objectForKey: @"partExtractTo"] componentsSeparatedByString:@":"];
NSUInteger componentCount = [components count];
NSUInteger time = 0;
if (componentCount == 1)
time = 1000000 * ([[components objectAtIndex:0] intValue]);
else if (componentCount == 2)
time = 1000000 * ([[components objectAtIndex:0] intValue] * 60 + [[components objectAtIndex:1] intValue]);
else if (componentCount == 3)
time = 1000000 * ([[components objectAtIndex:0] intValue] * 3600 + [[components objectAtIndex:1] intValue] * 60 + [[components objectAtIndex:2] intValue]);
else
msg_Err(VLCIntf, "Invalid string format for time");
input_item_AddOption(p_input, [[NSString stringWithFormat: @"stop-time=%lu", time] UTF8String], VLC_INPUT_OPTION_TRUSTED);
}
input_item_AddOption( p_input, [[NSString stringWithFormat:
......@@ -1357,7 +1372,7 @@ static VLCWizard *_o_sharedInstance = nil;
if ([[o_userSelections objectForKey:@"partExtract"] isEqualToString: @"YES"])
{
[o_t8_fld_partExtract setStringValue: [NSString stringWithFormat:
_NS("yes: from %@ to %@ secs"),
_NS("yes: from %@ to %@"),
[o_userSelections objectForKey:@"partExtractFrom"],
[o_userSelections objectForKey:@"partExtractTo"]]];
} else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment