i_time = var_GetTime( p_input, "time") / 1000000;
f_pos = var_GetFloat( p_input, "position" );
emit positionUpdated( f_pos, i_time, i_length );
+
+ /* Update rate */
+ emit rateChanged( var_GetInteger( p_input, "rate") );
- /* Update disc status */
+ /* Update navigation status */
vlc_value_t val; val.i_int = 0;
var_Change( p_input, "title", VLC_VAR_CHOICESCOUNT, &val, NULL );
if( val.i_int > 0 )
signals:
/// Send new position, new time and new length
void positionUpdated( float , int, int );
+ void rateChanged( int );
void nameChanged( QString );
/// Used to signal whether we should show navigation buttons
void navigationChanged( int );
/* Connect the input manager to the GUI elements it manages */
/* It is also connected to the control->slider, see the ControlsWidget */
CONNECT( THEMIM->getIM(), positionUpdated( float, int, int ),
- this, setDisplay( float, int, int ) );
-
+ this, setDisplayPosition( float, int, int ) );
+
+ CONNECT( THEMIM->getIM(), rateChanged( int ), this, setRate( int ) );
+
/** Connects on nameChanged() */
/* Naming in the controller statusbar */
CONNECT( THEMIM->getIM(), nameChanged( QString ), this,
/************************************************************************
* Other stuff
************************************************************************/
-void MainInterface::setDisplay( float pos, int time, int length )
+void MainInterface::setDisplayPosition( float pos, int time, int length )
{
char psz_length[MSTRTIME_MAX_SIZE], psz_time[MSTRTIME_MAX_SIZE];
secstotimestr( psz_length, length );
updateSystrayMenu( status );
}
+void MainInterface::setRate( int rate )
+{
+ msg_Dbg( p_intf, "raaahhh %i", rate );
+ QString str;
+ str.setNum( ( 1000/(double)rate), 'f', 2 );
+ str.append( "x" );
+ speedLabel->setText( str );
+}
+
void MainInterface::updateOnTimer()
{
/* \todo Make this event-driven */