2 * \file xforms/Timeout_pimpl.C
3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
6 * \author Lars Gullik Bjønnes
9 * Full author contact details are available in file CREDITS
14 #include FORMS_H_LOCATION
17 #pragma implementation
20 #include "Timeout_pimpl.h"
30 void C_intern_timeout_cb(int, void * data)
32 Timeout * to = static_cast<Timeout *>(data);
41 Timeout::Pimpl::Pimpl(Timeout * owner)
42 : owner_(owner), timeout_id(-1)
47 void Timeout::Pimpl::reset()
53 bool Timeout::Pimpl::running() const
55 return timeout_id != -1;
59 void Timeout::Pimpl::start()
62 lyxerr << "Timeout::start: already running!" << endl;
63 timeout_id = fl_add_timeout(owner_->timeout_ms,
64 C_intern_timeout_cb, owner_);
68 void Timeout::Pimpl::stop()
70 if (timeout_id != -1) {
71 fl_remove_timeout(timeout_id);