]> git.sesse.net Git - vlc/commitdiff
* MacOS X: added deinterlace submenu
authorJon Lech Johansen <jlj@videolan.org>
Tue, 16 Jul 2002 20:41:48 +0000 (20:41 +0000)
committerJon Lech Johansen <jlj@videolan.org>
Tue, 16 Jul 2002 20:41:48 +0000 (20:41 +0000)
ChangeLog
extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib
extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib
extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib
plugins/macosx/intf_controls.m
plugins/macosx/intf_macosx.h
plugins/macosx/intf_macosx.m
plugins/macosx/vout_macosx.m

index 7ebeccc25128057b8958ef238f9a32027706165f..a8077091e36d4754fc2e4887e7293a9a60a2e9ee 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,7 @@
 0.5.0
 Not released yet
 
+  * ./plugins/access/http.c: fixed a double free bug and a memory leak.
   * MacOS X: added messages and playlist panel, dock menu, context menu 
     in video view and localization support.
   * ./README: removed much outdated data.
index 7bdd0996e77d6e498881e4ba2483a0d0543db42e..543b2c76dd4a08cc27868381c6145e642d7b6d46 100644 (file)
@@ -3,6 +3,7 @@
         {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, 
         {
             ACTIONS = {
+                deinterlace = id; 
                 faster = id; 
                 fullscreen = id; 
                 loop = id; 
@@ -42,6 +43,7 @@
                 o_mi_clear = id; 
                 o_mi_copy = id; 
                 o_mi_cut = id; 
+                o_mi_deinterlace = id; 
                 o_mi_faster = id; 
                 o_mi_fullscreen = id; 
                 o_mi_hide = id; 
index fc042d509f81ef7ebc81b426a827d43dae76f2b1..12ed86d51b136aa1e7bfa3e57a8420771387a7ed 100644 (file)
@@ -15,7 +15,6 @@
        <string>263.2</string>
        <key>IBOpenObjects</key>
        <array>
-               <integer>29</integer>
                <integer>21</integer>
        </array>
        <key>IBSystem Version</key>
index c17ec149f0e33dcc099cfaebba46f173a7436c2b..a039c53196567e2728234779b4227cfea4c535f8 100644 (file)
Binary files a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib and b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib differ
index 1ad6f07291e79d67efb5865ef320c362ef862bd5..337a61e91e05fad7ec1093a6661e9633feef1b51 100644 (file)
@@ -2,7 +2,7 @@
  * 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>
@@ -60,6 +60,7 @@
 - (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 );
 }
index 0a349d3191c28bdcb4688636c27ac87e1a981825..6c15069c26efa350fe8c1e5105bf98aeeed59fe9 100644 (file)
@@ -2,7 +2,7 @@
  * 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>
@@ -125,6 +125,7 @@ struct intf_sys_s
     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;
index 0d832a6b55cc316a032fe4176993e0a7f5969c23..7c4cae1d47f0592fa640bd3aa4af278b8c2acf0f 100644 (file)
@@ -2,7 +2,7 @@
  * 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>
@@ -223,6 +223,7 @@ static void intf_Run( intf_thread_t *p_intf )
     [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")];
index ff24fc0299a3d02c7fa41a68666f615fe8f28f29..7c03d5c344d1d088b51113270a580e717b7092a8 100644 (file)
@@ -2,7 +2,7 @@
  * 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>
@@ -32,6 +32,7 @@
 
 #include <vlc/vlc.h>
 #include <vlc/vout.h>
+#include <vlc/aout.h>
 #include <vlc/intf.h>
 
 #include <Cocoa/Cocoa.h>