]> git.sesse.net Git - vlc/blobdiff - src/osd/osd.c
Removes trailing spaces. Removes tabs.
[vlc] / src / osd / osd.c
index 189a546850ace82c277449e9d2963f920c97318e..efebccd1f27a4b07871a27e08fa7b2ba168cd8c3 100644 (file)
@@ -24,8 +24,6 @@
 /*****************************************************************************
  * Preamble
  *****************************************************************************/
-#include <stdlib.h>
-#include <string.h>
 
 #include <vlc/vlc.h>
 #include <vlc_keys.h>
@@ -65,11 +63,12 @@ osd_menu_t *__osd_MenuCreate( vlc_object_t *p_this, const char *psz_file )
     var_Get( p_this->p_libvlc, "osd_mutex", &lockval );
     vlc_mutex_lock( lockval.p_address );
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         vlc_value_t val;
 
-        msg_Dbg( p_this, "creating osd menu object" );
+        msg_Dbg( p_this, "creating OSD menu object" );
         if( ( p_osd = vlc_object_create( p_this, VLC_OBJECT_OSDMENU ) ) == NULL )
         {
             msg_Err( p_this, "out of memory" );
@@ -88,17 +87,20 @@ osd_menu_t *__osd_MenuCreate( vlc_object_t *p_this, const char *psz_file )
         p_osd->i_width  = p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch;
         p_osd->i_height = p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_lines;
 
-        /* Update the volume state images to match the current volume */
-        i_volume = config_GetInt( p_this, "volume" );
-        i_steps = osd_VolumeStep( p_this, i_volume, p_osd->p_state->p_volume->i_ranges );
-        p_osd->p_state->p_volume->p_current_state = osd_VolumeStateChange( p_osd->p_state->p_volume->p_states, i_steps );
-
+        if( p_osd->p_state->p_volume )
+        {
+            /* Update the volume state images to match the current volume */
+            i_volume = config_GetInt( p_this, "volume" );
+            i_steps = osd_VolumeStep( p_this, i_volume, p_osd->p_state->p_volume->i_ranges );
+            p_osd->p_state->p_volume->p_current_state = osd_VolumeStateChange(
+                                    p_osd->p_state->p_volume->p_states, i_steps );
+        }
         /* Initialize OSD state */
         osd_UpdateState( p_osd->p_state, p_osd->i_x, p_osd->i_y,
                          p_osd->i_width, p_osd->i_height, NULL );
 
         vlc_object_yield( p_osd );
-        vlc_object_attach( p_osd, p_this->p_vlc );
+        vlc_object_attach( p_osd, p_this->p_libvlc );
 
         /* Signal when an update of OSD menu is needed */
         var_Create( p_osd, "osd-menu-update", VLC_VAR_BOOL );
@@ -112,7 +114,7 @@ osd_menu_t *__osd_MenuCreate( vlc_object_t *p_this, const char *psz_file )
     return p_osd;
 
 error:
-    msg_Err( p_this, "creating osd menu object failed" );
+    msg_Err( p_this, "creating OSD menu object failed" );
     vlc_mutex_unlock( lockval.p_address );
     vlc_object_destroy( p_osd );
     return NULL;
@@ -161,7 +163,7 @@ osd_state_t *__osd_StateChange( osd_state_t *p_states, const int i_state )
     return p_states;
 }
 
-/* The volume can be modified in another interface while the OSD Menu 
+/* The volume can be modified in another interface while the OSD Menu
  * has not been instantiated yet. This routines updates the "volume OSD menu item"
  * to reflect the current state of the GUI.
  */
@@ -198,7 +200,8 @@ void __osd_MenuShow( vlc_object_t *p_this )
     osd_button_t *p_button = NULL;
     vlc_value_t lockval;
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuNext failed" );
         return;
@@ -213,11 +216,11 @@ void __osd_MenuShow( vlc_object_t *p_this )
     p_button = p_osd->p_state->p_visible;
     if( p_button )
     {
-        if( !p_button->b_range ) 
+        if( !p_button->b_range )
             p_button->p_current_state = osd_StateChange( p_button->p_states, OSD_BUTTON_UNSELECT );
         p_osd->p_state->p_visible = p_osd->p_button;
 
-        if( !p_osd->p_state->p_visible->b_range ) 
+        if( !p_osd->p_state->p_visible->b_range )
             p_osd->p_state->p_visible->p_current_state =
                 osd_StateChange( p_osd->p_state->p_visible->p_states, OSD_BUTTON_SELECT );
 
@@ -239,7 +242,8 @@ void __osd_MenuHide( vlc_object_t *p_this )
     osd_menu_t *p_osd = NULL;
     vlc_value_t lockval;
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuNext failed" );
         return;
@@ -266,7 +270,8 @@ void __osd_MenuActivate( vlc_object_t *p_this )
     osd_button_t *p_button = NULL;
     vlc_value_t lockval;
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuNext failed" );
         return;
@@ -288,14 +293,14 @@ void __osd_MenuActivate( vlc_object_t *p_this )
     /*
      * Is there a menu item above or below? If so, then select it.
      */
-    if( p_button && p_button->p_up)
+    if( p_button && p_button->p_up )
     {
         vlc_object_release( (vlc_object_t*) p_osd );
         vlc_mutex_unlock( lockval.p_address );
         __osd_MenuUp( p_this );   /* "menu select" means go to menu item above. */
         return;
     }
-    if( p_button && p_button->p_down)
+    if( p_button && p_button->p_down )
     {
         vlc_object_release( (vlc_object_t*) p_osd );
         vlc_mutex_unlock( lockval.p_address );
@@ -313,7 +318,7 @@ void __osd_MenuActivate( vlc_object_t *p_this )
                 p_button->p_current_state->p_pic );
         osd_SetMenuUpdate( p_osd, VLC_TRUE );
         osd_SetMenuVisible( p_osd, VLC_TRUE );
-        osd_SetKeyPressed( VLC_OBJECT(p_osd->p_vlc), config_GetInt( p_osd, p_button->psz_action ) );
+        osd_SetKeyPressed( VLC_OBJECT(p_osd->p_libvlc), config_GetInt( p_osd, p_button->psz_action ) );
 #if defined(OSD_MENU_DEBUG)
         msg_Dbg( p_osd, "select (%d, %s)", config_GetInt( p_osd, p_button->psz_action ), p_button->psz_action );
 #endif
@@ -328,7 +333,8 @@ void __osd_MenuNext( vlc_object_t *p_this )
     osd_button_t *p_button = NULL;
     vlc_value_t lockval;
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuNext failed" );
         return;
@@ -346,18 +352,18 @@ void __osd_MenuNext( vlc_object_t *p_this )
     p_button = p_osd->p_state->p_visible;
     if( p_button )
     {
-        if( !p_button->b_range ) 
+        if( !p_button->b_range )
             p_button->p_current_state = osd_StateChange( p_button->p_states, OSD_BUTTON_UNSELECT );
         if( p_button->p_next )
             p_osd->p_state->p_visible = p_button->p_next;
         else
             p_osd->p_state->p_visible = p_osd->p_button;
 
-        if( !p_osd->p_state->p_visible->b_range ) 
+        if( !p_osd->p_state->p_visible->b_range )
             p_osd->p_state->p_visible->p_current_state =
                 osd_StateChange( p_osd->p_state->p_visible->p_states, OSD_BUTTON_SELECT );
 
-        osd_UpdateState( p_osd->p_state, 
+        osd_UpdateState( p_osd->p_state,
                 p_osd->p_state->p_visible->i_x, p_osd->p_state->p_visible->i_y,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_lines,
@@ -378,7 +384,8 @@ void __osd_MenuPrev( vlc_object_t *p_this )
     osd_button_t *p_button = NULL;
     vlc_value_t lockval;
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuPrev failed" );
         return;
@@ -396,18 +403,18 @@ void __osd_MenuPrev( vlc_object_t *p_this )
     p_button = p_osd->p_state->p_visible;
     if( p_button )
     {
-        if( !p_button->b_range ) 
+        if( !p_button->b_range )
             p_button->p_current_state = osd_StateChange( p_button->p_states, OSD_BUTTON_UNSELECT );
         if( p_button->p_prev )
             p_osd->p_state->p_visible = p_button->p_prev;
         else
             p_osd->p_state->p_visible = p_osd->p_last_button;
 
-        if( !p_osd->p_state->p_visible->b_range ) 
+        if( !p_osd->p_state->p_visible->b_range )
             p_osd->p_state->p_visible->p_current_state =
                 osd_StateChange( p_osd->p_state->p_visible->p_states, OSD_BUTTON_SELECT );
 
-        osd_UpdateState( p_osd->p_state, 
+        osd_UpdateState( p_osd->p_state,
                 p_osd->p_state->p_visible->i_x, p_osd->p_state->p_visible->i_y,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_lines,
@@ -430,8 +437,8 @@ void __osd_MenuUp( vlc_object_t *p_this )
 #if defined(OSD_MENU_DEBUG)
     vlc_value_t val;
 #endif
-
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuDown failed" );
         return;
@@ -449,14 +456,14 @@ void __osd_MenuUp( vlc_object_t *p_this )
     p_button = p_osd->p_state->p_visible;
     if( p_button )
     {
-        if( !p_button->b_range ) 
+        if( !p_button->b_range )
         {
             p_button->p_current_state = osd_StateChange( p_button->p_states, OSD_BUTTON_SELECT );
             if( p_button->p_up )
                 p_osd->p_state->p_visible = p_button->p_up;
         }
 
-        if( p_button->b_range && p_osd->p_state->p_visible->b_range ) 
+        if( p_button->b_range && p_osd->p_state->p_visible->b_range )
         {
             osd_state_t *p_temp = p_osd->p_state->p_visible->p_current_state;
             if( p_temp && p_temp->p_next )
@@ -468,18 +475,18 @@ void __osd_MenuUp( vlc_object_t *p_this )
                 osd_StateChange( p_osd->p_state->p_visible->p_states, OSD_BUTTON_SELECT );
         }
 
-        osd_UpdateState( p_osd->p_state, 
+        osd_UpdateState( p_osd->p_state,
                 p_osd->p_state->p_visible->i_x, p_osd->p_state->p_visible->i_y,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_lines,
                 p_osd->p_state->p_visible->p_current_state->p_pic );
         osd_SetMenuUpdate( p_osd, VLC_TRUE );
-        /* If this is a range style action with associated images of only one state, 
+        /* If this is a range style action with associated images of only one state,
             * then perform "menu select" on every menu navigation
             */
-        if( p_button->b_range ) 
+        if( p_button->b_range )
         {
-            osd_SetKeyPressed( VLC_OBJECT(p_osd->p_vlc), config_GetInt(p_osd, p_button->psz_action) );
+            osd_SetKeyPressed( VLC_OBJECT(p_osd->p_libvlc), config_GetInt(p_osd, p_button->psz_action) );
 #if defined(OSD_MENU_DEBUG)
             msg_Dbg( p_osd, "select (%d, %s)", val.i_int, p_button->psz_action );
 #endif
@@ -502,7 +509,8 @@ void __osd_MenuDown( vlc_object_t *p_this )
     vlc_value_t val;
 #endif
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "osd_MenuDown failed" );
         return;
@@ -520,14 +528,14 @@ void __osd_MenuDown( vlc_object_t *p_this )
     p_button = p_osd->p_state->p_visible;
     if( p_button )
     {
-        if( !p_button->b_range ) 
+        if( !p_button->b_range )
         {
             p_button->p_current_state = osd_StateChange( p_button->p_states, OSD_BUTTON_SELECT );
             if( p_button->p_down )
                 p_osd->p_state->p_visible = p_button->p_down;
         }
 
-        if( p_button->b_range && p_osd->p_state->p_visible->b_range ) 
+        if( p_button->b_range && p_osd->p_state->p_visible->b_range )
         {
             osd_state_t *p_temp = p_osd->p_state->p_visible->p_current_state;
             if( p_temp && p_temp->p_prev )
@@ -539,7 +547,7 @@ void __osd_MenuDown( vlc_object_t *p_this )
                 osd_StateChange( p_osd->p_state->p_visible->p_states, OSD_BUTTON_SELECT );
         }
 
-        osd_UpdateState( p_osd->p_state, 
+        osd_UpdateState( p_osd->p_state,
                 p_osd->p_state->p_visible->i_x, p_osd->p_state->p_visible->i_y,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch,
                 p_osd->p_state->p_visible->p_current_state->p_pic->p[Y_PLANE].i_visible_lines,
@@ -548,16 +556,16 @@ void __osd_MenuDown( vlc_object_t *p_this )
         /* If this is a range style action with associated images of only one state,
          * then perform "menu select" on every menu navigation
          */
-        if( p_button->b_range ) 
+        if( p_button->b_range )
         {
-            osd_SetKeyPressed( VLC_OBJECT(p_osd->p_vlc), config_GetInt(p_osd, p_button->psz_action_down) );
+            osd_SetKeyPressed( VLC_OBJECT(p_osd->p_libvlc), config_GetInt(p_osd, p_button->psz_action_down) );
 #if defined(OSD_MENU_DEBUG)
             msg_Dbg( p_osd, "select (%d, %s)", val.i_int, p_button->psz_action_down );
 #endif
         }
     }
 #if defined(OSD_MENU_DEBUG)
-    msg_Dbg( p_osd, "direction down [button %s]", p_osd->p_state->p_visible->psz_action ); 
+    msg_Dbg( p_osd, "direction down [button %s]", p_osd->p_state->p_visible->psz_action );
 #endif
 
     vlc_object_release( (vlc_object_t*) p_osd );
@@ -567,8 +575,9 @@ void __osd_MenuDown( vlc_object_t *p_this )
 static int osd_VolumeStep( vlc_object_t *p_this, int i_volume, int i_steps )
 {
     int i_volume_step = 0;
+    (void)i_steps;
 
-    i_volume_step = config_GetInt( p_this->p_vlc, "volume-step" );
+    i_volume_step = config_GetInt( p_this->p_libvlc, "volume-step" );
     return (i_volume/i_volume_step);
 }
 
@@ -586,33 +595,37 @@ void __osd_Volume( vlc_object_t *p_this )
     int i_volume = 0;
     int i_steps = 0;
 
-    if( ( p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE ) ) == NULL )
+    p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );
+    if( p_osd == NULL )
     {
         msg_Err( p_this, "OSD menu volume update failed" );
         return;
     }
 
-    var_Get( p_this->p_libvlc, "osd_mutex", &lockval );
-    vlc_mutex_lock( lockval.p_address );
-
-    p_button = p_osd->p_state->p_volume;
-    if( p_osd->p_state->p_volume ) 
-        p_osd->p_state->p_visible = p_osd->p_state->p_volume;
-    if( p_button && p_button->b_range )
+    if( p_osd->p_state && p_osd->p_state->p_volume )
     {
-        /* Update the volume state images to match the current volume */
-        i_volume = config_GetInt( p_this, "volume" );
-        i_steps = osd_VolumeStep( p_this, i_volume, p_button->i_ranges );
-        p_button->p_current_state = osd_VolumeStateChange( p_button->p_states, i_steps );
+        var_Get( p_this->p_libvlc, "osd_mutex", &lockval );
+        vlc_mutex_lock( lockval.p_address );
 
-        osd_UpdateState( p_osd->p_state,
-                p_button->i_x, p_button->i_y,
-                p_button->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch,
-                p_button->p_current_state->p_pic->p[Y_PLANE].i_visible_lines,
-                p_button->p_current_state->p_pic );
-        osd_SetMenuUpdate( p_osd, VLC_TRUE );
-        osd_SetMenuVisible( p_osd, VLC_TRUE );
+        p_button = p_osd->p_state->p_volume;
+        if( p_osd->p_state->p_volume )
+            p_osd->p_state->p_visible = p_osd->p_state->p_volume;
+        if( p_button && p_button->b_range )
+        {
+            /* Update the volume state images to match the current volume */
+            i_volume = config_GetInt( p_this, "volume" );
+            i_steps = osd_VolumeStep( p_this, i_volume, p_button->i_ranges );
+            p_button->p_current_state = osd_VolumeStateChange( p_button->p_states, i_steps );
+
+            osd_UpdateState( p_osd->p_state,
+                    p_button->i_x, p_button->i_y,
+                    p_button->p_current_state->p_pic->p[Y_PLANE].i_visible_pitch,
+                    p_button->p_current_state->p_pic->p[Y_PLANE].i_visible_lines,
+                    p_button->p_current_state->p_pic );
+            osd_SetMenuUpdate( p_osd, VLC_TRUE );
+            osd_SetMenuVisible( p_osd, VLC_TRUE );
+        }
+        vlc_object_release( (vlc_object_t*) p_osd );
+        vlc_mutex_unlock( lockval.p_address );
     }
-    vlc_object_release( (vlc_object_t*) p_osd );
-    vlc_mutex_unlock( lockval.p_address );
 }