]> git.sesse.net Git - vlc/blobdiff - modules/control/showintf.c
DBus: remove unused macro, check memory allocation
[vlc] / modules / control / showintf.c
index 3eb83a24fd1ba8b5a3494b7a4410b5690aab1335..a9321c9689dbb08030183a394c369b0a669ec06a 100644 (file)
@@ -1,8 +1,8 @@
 /*****************************************************************************
  * showintf.c: control the display of the interface in fullscreen mode
  *****************************************************************************
- * Copyright (C) 2004 VideoLAN
- * $Id:$
+ * Copyright (C) 2004 the VideoLAN team
+ * $Id$
  *
  * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>
  *
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
 /*****************************************************************************
  * Preamble
  *****************************************************************************/
-#include <stdlib.h>                                      /* malloc(), free() */
-#include <string.h>
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
 
 #include <vlc/vlc.h>
-#include <vlc/intf.h>
-#include <vlc/vout.h>
+#include <vlc_interface.h>
+#include <vlc_vout.h>
+#include <vlc_playlist.h>
 
 #ifdef HAVE_UNISTD_H
 #    include <unistd.h>
@@ -60,11 +63,12 @@ static int  MouseEvent( vlc_object_t *, char const *,
  * Module descriptor
  *****************************************************************************/
 #define THRESHOLD_TEXT N_( "Threshold" )
-#define THRESHOLD_LONGTEXT N_( "Height of the zone triggering the interface" )
+#define THRESHOLD_LONGTEXT N_( "Height of the zone triggering the interface." )
 
 vlc_module_begin();
+    set_shortname( "Showintf" );
     add_integer( "showintf-threshold", 10, NULL, THRESHOLD_TEXT, THRESHOLD_LONGTEXT, VLC_TRUE );
-    set_description( _("Interface showing control interface") );
+    set_description( _("Show interface with mouse") );
 
     set_capability( "interface", 0 );
     set_callbacks( E_(Open), E_(Close) );
@@ -110,29 +114,21 @@ static void RunIntf( intf_thread_t *p_intf )
 
     if( InitThread( p_intf ) < 0 )
     {
-        msg_Err( p_intf, "cannot initialize intf" );
+        msg_Err( p_intf, "cannot initialize interface" );
         return;
     }
 
     /* Main loop */
-    while( !p_intf->b_die )
+    while( !intf_ShouldDie( p_intf ) )
     {
         vlc_mutex_lock( &p_intf->change_lock );
 
         /* Notify the interfaces */
         if( p_intf->p_sys->b_triggered )
         {
-            playlist_t *p_playlist =
-                (playlist_t *)vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
-                                               FIND_ANYWHERE );
-
-            if( p_playlist != NULL )
-            {
-                vlc_value_t val;
-                val.b_bool = VLC_TRUE;
-                var_Set( p_playlist, "intf-show", val );
-                vlc_object_release( p_playlist );
-            }
+            playlist_t *p_playlist = pl_Yield( p_intf );
+            var_SetBool( p_playlist, "intf-show", VLC_TRUE );
+            vlc_object_release( p_playlist );
             p_intf->p_sys->b_triggered = VLC_FALSE;
         }
 
@@ -182,7 +178,7 @@ static void RunIntf( intf_thread_t *p_intf )
  *****************************************************************************/
 static int InitThread( intf_thread_t * p_intf )
 {
-    if( !p_intf->b_die )
+    if( !intf_ShouldDie( p_intf ) )
     {
         vlc_mutex_lock( &p_intf->change_lock );
 
@@ -207,6 +203,7 @@ static int InitThread( intf_thread_t * p_intf )
 static int MouseEvent( vlc_object_t *p_this, char const *psz_var,
                        vlc_value_t oldval, vlc_value_t newval, void *p_data )
 {
+    VLC_UNUSED(p_this); VLC_UNUSED(oldval); VLC_UNUSED(newval);
     vlc_value_t val;
 
     int i_mouse_x, i_mouse_y;