* intf_controls.m: MacOS X interface plugin
*****************************************************************************
* Copyright (C) 2002 VideoLAN
- * $Id: intf_controls.m,v 1.1 2002/07/15 01:54:03 jlj Exp $
+ * $Id: intf_controls.m,v 1.2 2002/07/16 20:41:48 jlj Exp $
*
* Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
* Christophe Massiot <massiot@via.ecp.fr>
- (IBAction)volumeDown:(id)sender;
- (IBAction)mute:(id)sender;
- (IBAction)fullscreen:(id)sender;
+- (IBAction)deinterlace:(id)sender;
- (IBAction)toggleProgram:(id)sender;
- (IBAction)toggleTitle:(id)sender;
}
}
+- (IBAction)deinterlace:(id)sender
+{
+ intf_thread_t * p_intf = [NSApp getIntf];
+ BOOL bEnable = [sender state] == NSOffState;
+
+ if( bEnable )
+ {
+ config_PutPsz( p_intf, "filter", "deinterlace" );
+ config_PutPsz( p_intf, "deinterlace-mode",
+ [[sender title] lossyCString] );
+ }
+ else
+ {
+ config_PutPsz( p_intf, "filter", NULL );
+ }
+}
+
- (IBAction)toggleProgram:(id)sender
{
NSMenuItem * o_mi = (NSMenuItem *)sender;
- (BOOL)validateMenuItem:(NSMenuItem *)o_mi
{
BOOL bEnabled = TRUE;
+ NSMenu * o_menu = [o_mi menu];
intf_thread_t * p_intf = [NSApp getIntf];
if( [[o_mi title] isEqualToString: _NS("Pause")] ||
if( [[o_window className] isEqualToString: @"VLCWindow"] )
{
- [o_mi setState: [o_window isFullscreen]];
+ [o_mi setState: [o_window isFullscreen] ?
+ NSOnState : NSOffState];
}
else
{
bEnabled = FALSE;
}
}
+ else if( o_menu != nil &&
+ [[o_menu title] isEqualToString: _NS("Deinterlace")] )
+ {
+ char * psz_filter = config_GetPsz( p_intf, "filter" );
+
+ if( psz_filter != NULL )
+ {
+ free( psz_filter );
+
+ psz_filter = config_GetPsz( p_intf, "deinterlace-mode" );
+ }
+
+ if( psz_filter != NULL )
+ {
+ if( strcmp( psz_filter, [[o_mi title] lossyCString] ) == 0 )
+ {
+ [o_mi setState: NSOnState];
+ }
+ else
+ {
+ [o_mi setState: NSOffState];
+ }
+
+ free( psz_filter );
+ }
+ else
+ {
+ [o_mi setState: NSOffState];
+ }
+ }
return( bEnabled );
}
* intf_macosx.h: MacOS X interface plugin
*****************************************************************************
* Copyright (C) 2002 VideoLAN
- * $Id: intf_macosx.h,v 1.1 2002/07/15 01:54:03 jlj Exp $
+ * $Id: intf_macosx.h,v 1.2 2002/07/16 20:41:48 jlj Exp $
*
* Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
* Christophe Massiot <massiot@via.ecp.fr>
IBOutlet id o_mi_vol_down;
IBOutlet id o_mi_mute;
IBOutlet id o_mi_fullscreen;
+ IBOutlet id o_mi_deinterlace;
IBOutlet id o_mi_program;
IBOutlet id o_mi_title;
IBOutlet id o_mi_chapter;
* intf_macosx.m: MacOS X interface plugin
*****************************************************************************
* Copyright (C) 2002 VideoLAN
- * $Id: intf_macosx.m,v 1.7 2002/07/15 20:09:31 sam Exp $
+ * $Id: intf_macosx.m,v 1.8 2002/07/16 20:41:48 jlj Exp $
*
* Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
* Christophe Massiot <massiot@via.ecp.fr>
[o_mi_vol_down setTitle: _NS("Volume Down")];
[o_mi_mute setTitle: _NS("Mute")];
[o_mi_fullscreen setTitle: _NS("Fullscreen")];
+ [o_mi_deinterlace setTitle: _NS("Deinterlace")];
[o_mi_program setTitle: _NS("Program")];
[o_mi_title setTitle: _NS("Title")];
[o_mi_chapter setTitle: _NS("Chapter")];
* vout_macosx.m: MacOS X video output plugin
*****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN
- * $Id: vout_macosx.m,v 1.11 2002/07/15 20:09:31 sam Exp $
+ * $Id: vout_macosx.m,v 1.12 2002/07/16 20:41:48 jlj Exp $
*
* Authors: Colin Delacroix <colin@zoy.org>
* Florian G. Pflug <fgp@phlo.org>
#include <vlc/vlc.h>
#include <vlc/vout.h>
+#include <vlc/aout.h>
#include <vlc/intf.h>
#include <Cocoa/Cocoa.h>