*/
// EXTERNAL INCLUDES
-#include <list>
+#include <set>
// INTERNAL INCLUDES
#include <dali/internal/system/common/callback-manager.h>
-
namespace Dali
{
/**
* @copydoc CallbackManager::AddIdleCallback()
*/
- virtual bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue );
+ bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue ) override;
/**
* @copydoc CallbackManager::RemoveIdleCallback()
*/
- virtual void RemoveIdleCallback( CallbackBase* callback );
+ void RemoveIdleCallback( CallbackBase* callback ) override;
+
+ /**
+ * @copydoc CallbackManager::ProcessIdle()
+ */
+ bool ProcessIdle() override;
+
+ /**
+ * @copydoc CallbackManager::ClearIdleCallbacks()
+ */
+ void ClearIdleCallbacks() override;
/**
* @brief Adds a @p callback to be run when entering an idle state.
*
* @return true on success
*/
- virtual bool AddIdleEntererCallback( CallbackBase* callback );
+ bool AddIdleEntererCallback( CallbackBase* callback ) override;
/**
* @brief Removes a previously added the idle enterer callback.
*
* @param[in] callback The callback to be removed.
*/
- virtual void RemoveIdleEntererCallback( CallbackBase* callback );
+ void RemoveIdleEntererCallback( CallbackBase* callback ) override;
/**
* @copydoc CallbackManager::Start()
*/
- virtual void Start();
+ void Start() override;
/**
* @copydoc CallbackManager::Stop()
*/
- virtual void Stop();
+ void Stop() override;
private:
+ std::set<CallbackBase*> mCallbacks;
bool mRunning; ///< flag is set to true if when running
};