Commit d5d09d94 authored by Erwan Tulou's avatar Erwan Tulou

skins2: factorize some code

parent 9e52153f
...@@ -453,27 +453,7 @@ void VlcProc::on_intf_event_changed( vlc_object_t* p_obj, vlc_value_t newVal ) ...@@ -453,27 +453,7 @@ void VlcProc::on_intf_event_changed( vlc_object_t* p_obj, vlc_value_t newVal )
getIntf()->p_sys->p_input = pInput; getIntf()->p_sys->p_input = pInput;
vlc_object_hold( pInput ); vlc_object_hold( pInput );
input_item_t *p_item = input_GetItem( pInput ); update_current_input();
if( p_item )
{
// Update short name
char *psz_name = input_item_GetName( p_item );
SET_TEXT( m_cVarStreamName, UString( getIntf(), psz_name ) );
free( psz_name );
// Update local path (if possible) or full uri
char *psz_uri = input_item_GetURI( p_item );
char *psz_path = make_path( psz_uri );
char *psz_save = psz_path ? psz_path : psz_uri;
SET_TEXT( m_cVarStreamURI, UString( getIntf(), psz_save ) );
free( psz_path );
free( psz_uri );
// Update art uri
char *psz_art = input_item_GetArtURL( p_item );
SET_STRING( m_cVarStreamArt, string( psz_art ? psz_art : "" ) );
free( psz_art );
}
} }
switch( newVal.i_int ) switch( newVal.i_int )
...@@ -794,6 +774,36 @@ void VlcProc::init_variables() ...@@ -794,6 +774,36 @@ void VlcProc::init_variables()
update_equalizer(); update_equalizer();
} }
void VlcProc::update_current_input()
{
input_thread_t* pInput = getIntf()->p_sys->p_input;
if( !pInput )
return;
input_item_t *p_item = input_GetItem( pInput );
if( p_item )
{
// Update short name
char *psz_name = input_item_GetName( p_item );
SET_TEXT( m_cVarStreamName, UString( getIntf(), psz_name ) );
free( psz_name );
// Update local path (if possible) or full uri
char *psz_uri = input_item_GetURI( p_item );
char *psz_path = make_path( psz_uri );
char *psz_save = psz_path ? psz_path : psz_uri;
SET_TEXT( m_cVarStreamURI, UString( getIntf(), psz_save ) );
free( psz_path );
free( psz_uri );
// Update art uri
char *psz_art = input_item_GetArtURL( p_item );
SET_STRING( m_cVarStreamArt, string( psz_art ? psz_art : "" ) );
free( psz_art );
}
}
void VlcProc::update_equalizer() void VlcProc::update_equalizer()
{ {
......
...@@ -98,6 +98,9 @@ public: ...@@ -98,6 +98,9 @@ public:
/// update equalizer /// update equalizer
void update_equalizer( ); void update_equalizer( );
/// update global variables for the current input
void update_current_input( );
void on_intf_event_changed( vlc_object_t* p_obj, vlc_value_t newVal ); void on_intf_event_changed( vlc_object_t* p_obj, vlc_value_t newVal );
void on_bit_rate_changed( vlc_object_t* p_obj, vlc_value_t newVal ); void on_bit_rate_changed( vlc_object_t* p_obj, vlc_value_t newVal );
void on_sample_rate_changed( vlc_object_t* p_obj, vlc_value_t newVal ); void on_sample_rate_changed( vlc_object_t* p_obj, vlc_value_t newVal );
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment