Commit adde68fa authored by Felix Paul Kühne's avatar Felix Paul Kühne

macosx/messages: replace deprecated API call with modern blocks-based counterpart

Additionally, fix a leak
parent dd9ef423
......@@ -2145,28 +2145,25 @@ unsigned int CocoaKeyToVLC( unichar i_key )
[saveFolderPanel setCanSelectHiddenExtension: NO];
[saveFolderPanel setCanCreateDirectories: YES];
[saveFolderPanel setAllowedFileTypes: [NSArray arrayWithObject:@"rtf"]];
[saveFolderPanel beginSheetForDirectory:nil file: [NSString stringWithFormat: _NS("VLC Debug Log (%s).rtf"), VERSION_MESSAGE] modalForWindow: o_msgs_panel modalDelegate:self didEndSelector:@selector(saveDebugLogAsRTF:returnCode:contextInfo:) contextInfo:nil];
}
- (void)saveDebugLogAsRTF: (NSSavePanel *)sheet returnCode: (int)returnCode contextInfo: (void *)contextInfo
{
if( returnCode == NSOKButton )
{
NSUInteger count = [o_msg_arr count];
NSMutableAttributedString * string = [[NSMutableAttributedString alloc] init];
for (NSUInteger i = 0; i < count; i++)
[saveFolderPanel setNameFieldStringValue:[NSString stringWithFormat: _NS("VLC Debug Log (%s).rtf"), VERSION_MESSAGE]];
[saveFolderPanel beginSheetModalForWindow: o_msgs_panel completionHandler:^(NSInteger returnCode) {
if( returnCode == NSOKButton )
{
[string appendAttributedString: [o_msg_arr objectAtIndex: i]];
}
NSUInteger count = [o_msg_arr count];
NSMutableAttributedString * string = [[NSMutableAttributedString alloc] init];
for (NSUInteger i = 0; i < count; i++)
[string appendAttributedString: [o_msg_arr objectAtIndex: i]];
NSData *data = [string RTFFromRange:NSMakeRange( 0, [string length] )
documentAttributes:[NSDictionary dictionaryWithObject: NSRTFTextDocumentType forKey: NSDocumentTypeDocumentAttribute]];
NSData *data = [string RTFFromRange:NSMakeRange( 0, [string length] )
documentAttributes:[NSDictionary dictionaryWithObject: NSRTFTextDocumentType forKey: NSDocumentTypeDocumentAttribute]];
if( [data writeToFile: [[sheet URL] path] atomically: YES] == NO )
msg_Warn( p_intf, "Error while saving the debug log" );
if( [data writeToFile: [[saveFolderPanel URL] path] atomically: YES] == NO )
msg_Warn( p_intf, "Error while saving the debug log" );
[string release];
}
[string release];
}
}];
[saveFolderPanel release];
}
#pragma mark -
......
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