#import "ControlsBar.h"
#import "ExtensionsManager.h"
#import "ConvertAndSave.h"
+#import "DebugMessageVisualizer.h"
@implementation VLCMainMenu
static VLCMainMenu *_o_sharedInstance = nil;
[mi setTarget:self];
[mi setAction:selector];
[mi setTag:p_item->list.i[i]];
- [mi setRepresentedObject:@(psz_name)];
+ [mi setRepresentedObject:[NSString stringWithUTF8String:psz_name]];
[menu addItem: [mi autorelease]];
if (p_item->value.i == p_item->list.i[i])
[mi setState:NSOnState];
[o_mi_open_net setTitle: _NS("Open Network...")];
[o_mi_open_capture setTitle: _NS("Open Capture Device...")];
[o_mi_open_recent setTitle: _NS("Open Recent")];
+ [o_mi_close_window setTitle: _NS("Close Window")];
[o_mi_open_wizard setTitle: _NS("Streaming/Exporting Wizard...")];
[o_mi_convertandsave setTitle: _NS("Convert / Stream...")];
+ [o_mi_save_playlist setTitle: _NS("Save Playlist...")];
[o_mu_edit setTitle: _NS("Edit")];
[o_mi_cut setTitle: _NS("Cut")];
[o_mi_toggleSidebar setTitle: _NS("Show Sidebar")];
[o_mi_toggleSidebar setState: config_GetInt(VLCIntf, "macosx-show-sidebar")];
[o_mu_playlistTableColumns setTitle: _NS("Playlist Table Columns")];
+ [o_mi_playlistTableColumns setTitle: _NS("Playlist Table Columns")];
[o_mu_controls setTitle: _NS("Playback")];
[o_mi_play setTitle: _NS("Play")];
[o_mi_teletext_blue setTitle: _NS("Blue")];
[o_mu_window setTitle: _NS("Window")];
- [o_mi_minimize setTitle: _NS("Minimize Window")];
- [o_mi_close_window setTitle: _NS("Close Window")];
+ [o_mi_minimize setTitle: _NS("Minimize")];
+ [o_mi_zoom_window setTitle: _NS("Zoom")];
[o_mi_player setTitle: _NS("Player...")];
[o_mi_controller setTitle: _NS("Main Window...")];
[o_mi_audioeffects setTitle: _NS("Audio Effects...")];
[self setupVarMenuItem: o_mi_deinterlace_mode target: (vlc_object_t *)p_vout
var: "deinterlace-mode" selector: @selector(toggleVar:)];
-#if 1
- [self setupVarMenuItem: o_mi_ffmpeg_pp target:
- (vlc_object_t *)p_vout var:"postprocess" selector:
- @selector(toggleVar:)];
-#endif
+ [self setupVarMenuItem: o_mi_ffmpeg_pp target: (vlc_object_t *)p_vout
+ var:"postprocess" selector: @selector(toggleVar:)];
+
vlc_object_release(p_vout);
[self refreshVoutDeviceMenu:nil];
{
BOOL b_value = !config_GetInt(VLCIntf, "macosx-show-playback-buttons");
config_PutInt(VLCIntf, "macosx-show-playback-buttons", b_value);
+
[[[[VLCMain sharedInstance] mainWindow] controlsBar] toggleJumpButtons];
+ [[[VLCMain sharedInstance] voutController] updateWindowsUsingBlock:^(VLCVideoWindowCommon *o_window) {
+ [[o_window controlsBar] toggleForwardBackwardMode: b_value];
+ }];
+
[o_mi_toggleJumpButtons setState: b_value];
}
NSMenuItem * o_mi_tmp;
for (NSUInteger x = 0; x < n; x++) {
- o_mi_tmp = [o_mu_device addItemWithTitle:[NSString stringWithFormat:@"%s", names[x]] action:@selector(toggleAudioDevice:) keyEquivalent:@""];
+ o_mi_tmp = [o_mu_device addItemWithTitle:toNSStr(names[x]) action:@selector(toggleAudioDevice:) keyEquivalent:@""];
[o_mi_tmp setTarget:self];
[o_mi_tmp setTag:[[NSString stringWithFormat:@"%s", ids[x]] intValue]];
}
}
char *path = input_item_GetURI(p_item);
+
if (!path)
path = strdup("");
[openPanel setCanChooseFiles: YES];
[openPanel setCanChooseDirectories: NO];
[openPanel setAllowsMultipleSelection: YES];
- [openPanel setAllowedFileTypes: @[@"cdg",@"@idx",@"srt",@"sub",@"utf",@"ass",@"ssa",@"aqt",@"jss",@"psb",@"rt",@"smi",@"txt",@"smil"]];
- [openPanel setDirectoryURL:[NSURL fileURLWithPath:[@(path) stringByExpandingTildeInPath]]];
- i_returnValue = [openPanel runModal];
+
+ [openPanel setAllowedFileTypes: [NSArray arrayWithObjects:@"cdg",@"idx",@"srt",@"sub",@"utf",@"ass",@"ssa",@"aqt",@"jss",@"psb",@"rt",@"smi",@"txt",@"smil",nil]];
+
+ NSURL *o_url = [NSURL URLWithString:[[NSString stringWithUTF8String:path] stringByExpandingTildeInPath]];
+ o_url = [o_url URLByDeletingLastPathComponent];
+ [openPanel setDirectoryURL: o_url];
free(path);
+ i_returnValue = [openPanel runModal];
+
if (i_returnValue == NSOKButton) {
NSUInteger c = 0;
if (!p_input)
- (IBAction)switchSubtitleOption:(id)sender
{
- vlc_object_t *p_freetype;
- p_freetype = (vlc_object_t *) vlc_object_find_name(pl_Get(VLCIntf), "freetype");
int intValue = [sender tag];
NSString *representedObject = [sender representedObject];
- if (p_freetype) {
- var_SetInteger(p_freetype, [representedObject UTF8String], intValue);
- NSMenu *menu = [sender menu];
- NSUInteger count = [menu numberOfItems];
- for (NSUInteger x = 0; x < count; x++)
- [[menu itemAtIndex:x] setState:NSOffState];
- [[menu itemWithTag:intValue] setState:NSOnState];
- vlc_object_release(p_freetype);
- }
config_PutInt(p_intf, [representedObject UTF8String], intValue);
+
+ NSMenu *menu = [sender menu];
+ NSUInteger count = [menu numberOfItems];
+ for (NSUInteger x = 0; x < count; x++)
+ [[menu itemAtIndex:x] setState:NSOffState];
+ [[menu itemWithTag:intValue] setState:NSOnState];
}
- (IBAction)switchSubtitleBackgroundOpacity:(id)sender
{
- vlc_object_t *p_freetype;
- p_freetype = (vlc_object_t *) vlc_object_find_name(pl_Get(VLCIntf), "freetype");
- int intValue = [sender intValue];
-
- if (p_freetype) {
- var_SetInteger(p_freetype, "freetype-background-opacity", intValue);
- vlc_object_release(p_freetype);
- }
- config_PutInt(p_intf, "freetype-background-opacity", intValue);
+ config_PutInt(p_intf, "freetype-background-opacity", [sender intValue]);
}
- (IBAction)telxTransparent:(id)sender
[[[VLCMain sharedInstance] wizard] showWizard];
}
+- (IBAction)savePlaylist:(id)sender
+{
+ [[[VLCMain sharedInstance] playlist] savePlaylist:sender];
+}
+
- (IBAction)showConvertAndSave:(id)sender
{
if (o_convertandsave == nil)
[[[VLCMain sharedInstance] simplePreferences] showSimplePrefsWithLevel:i_level];
}
+- (IBAction)showMessagesPanel:(id)showMessagesPanel
+{
+ [[VLCDebugMessageVisualizer sharedInstance] showPanel];
+}
+
+- (IBAction)showMainWindow:(id)sender
+{
+ [[VLCMainWindow sharedInstance] makeKeyAndOrderFront:sender];
+}
+
+- (IBAction)showPlaylist:(id)sender
+{
+ [[VLCMainWindow sharedInstance] changePlaylistState: psUserMenuEvent];
+}
+
#pragma mark -
#pragma mark Help and Docs
break;
default:
/* Variable doesn't exist or isn't handled */
+ msg_Warn(p_object, "variable %s doesn't exist or isn't handled", psz_variable);
return;
}
return;
}
- if (var_Get(p_object, psz_variable, &val) < 0) {
+ if (var_Get(p_object, psz_variable, &val) < 0)
return;
- }
VLCAutoGeneratedMenuContent *o_data;
switch(i_type & VLC_VAR_TYPE) {