19.3. Funciones de Inactividad

¿Qué pasa si quieres que se llame a una función cuando no esté pasando nada? Usa la función:

  source_id = gobject.idle_add(callback, ...)
    

Cualquier argumento tras el primero (indicados con ...) se pasan a la función callback en orden. El valor de retorno source_id se utiliza como una referencia al manejador.

Esta función hace que GTK llame a la función especificada cuando no está pasando nada más.

Y la función ha ser llamada debe ser parecida a:

  def callback(...):
      

donde los argumentos pasados a callback son los mismos especificados en la función gobject.idle_add(). Al igual que en otras funciones, devolviendo FALSE (falso) dejará de ser llamada de nuevo, y devolviendo TRUE (verdadero) se la seguirá llamando la próxima ocasión que haya un tiempo de inactividad.

Se puede eliminar una función de inactividad de la cola llamando la función siguiente:

  gobject.source_remove(source_id)
     

siendo source_id el valor devuelto por la función gobject.idle_add().