]> git.sesse.net Git - vlc/commitdiff
add rate-change variable in core to inform when rate changes, and change
authorIlkka Ollakka <ileoo@videolan.org>
Wed, 13 Feb 2008 08:29:35 +0000 (08:29 +0000)
committerIlkka Ollakka <ileoo@videolan.org>
Wed, 13 Feb 2008 08:29:35 +0000 (08:29 +0000)
qt4-interface to use it. var_Change doesn't trigger callback so earlier
version about adding callback to it worked someway as intented only by
luck ;)

modules/gui/qt4/input_manager.cpp
src/input/input.c
src/input/var.c

index 99454462bd7c9ff20cd46a6e1f5bc6e6bd02d2fb..af225703403c865fe8ecab450f0109ce115e02bd 100644 (file)
@@ -137,9 +137,7 @@ void InputManager::addCallbacks()
     /* src/input/es-out.c:551 */
     var_AddCallback( p_input, "video-es", ChangeVideo, this );
     /* src/input/input.c:1765 */
-    var_AddCallback( p_input, "rate", ItemRateChanged, this );
-    var_AddCallback( p_input, "rate-faster", ItemRateChanged, this );
-    var_AddCallback( p_input, "rate-slower", ItemRateChanged, this );
+    var_AddCallback( p_input, "rate-change", ItemRateChanged, this );
     /* src/input/input.c:2003 */
     var_AddCallback( p_input, "title", ItemTitleChanged, this );
     /* src/input/input.c:734 for timers update*/
@@ -152,9 +150,7 @@ void InputManager::delCallbacks()
     var_DelCallback( p_input, "audio-es", ChangeAudio, this );
     var_DelCallback( p_input, "video-es", ChangeVideo, this );
     var_DelCallback( p_input, "state", ItemStateChanged, this );
-    var_DelCallback( p_input, "rate", ItemRateChanged, this );
-    var_DelCallback( p_input, "rate-faster", ItemRateChanged, this );
-    var_DelCallback( p_input, "rate-slower", ItemRateChanged, this );
+    var_DelCallback( p_input, "rate-change", ItemRateChanged, this );
     var_DelCallback( p_input, "title", ItemTitleChanged, this );
     var_DelCallback( p_input, "intf-change", InterfaceChanged, this );
 }
index 4f2ede24c5510de613c8ae2b6ddcb1e7cc6e71b2..e3de5dbc2f99fc70cf98dedc6cc93e29fd529d7d 100644 (file)
@@ -116,6 +116,7 @@ static void AppendAttachment( int *pi_attachment, input_attachment_t ***ppp_atta
  *  - can-pause
  * * For intf callback upon changes
  *  - intf-change
+ *  - rate-change for when playback rate changes
  * TODO explain when Callback is called
  * TODO complete this list (?)
  *****************************************************************************/
@@ -1768,6 +1769,7 @@ static vlc_bool_t Control( input_thread_t *p_input, int i_type,
             {
                 val.i_int = i_rate;
                 var_Change( p_input, "rate", VLC_VAR_SETVALUE, &val, NULL );
+                var_SetBool( p_input, "rate-change", VLC_TRUE );
 
                 p_input->p->i_rate  = i_rate;
 
index ebb12c510cf20478e404ed6f04c8d3213de39f61..d807b26bf9d2f87515e63dc626f9e655e5aa6d39 100644 (file)
@@ -194,9 +194,14 @@ void input_ControlVarInit ( input_thread_t *p_input )
     {
         /* Special "intf-change" variable, it allows intf to set up a callback
          * to be notified of some changes.
+         *
+         * Add rate-change to inform about rate changin
+         *
          * TODO list all changes warn by this callbacks */
         var_Create( p_input, "intf-change", VLC_VAR_BOOL );
         var_SetBool( p_input, "intf-change", VLC_TRUE );
+        var_Create( p_input, "rate-change", VLC_VAR_BOOL );
+        var_SetBool( p_input, "rate-change", VLC_TRUE );
     }
 #undef ADD_CALLBACK
 }