mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
Make the GUI instantiation invisible to Timeout.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6230 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
7f006d50db
commit
a4276f27f7
@ -1,3 +1,10 @@
|
||||
2003-02-21 Angus Leeming <leeming@lyx.org>
|
||||
|
||||
* Timeout.[Ch]: define a Timeout::Impl abstract base class from
|
||||
which the GUIs will derive their implementations. Means that
|
||||
we no longer have to look into the GUIs to write the class.
|
||||
Store the implementation in a boost::scoped_ptr, not a raw pointer.
|
||||
|
||||
2003-02-21 Angus Leeming <leeming@lyx.org>
|
||||
|
||||
* Dialogs.h: remove forward declarations of InsetBibKey, InsetBibtex.
|
||||
|
@ -12,22 +12,12 @@
|
||||
#include <config.h>
|
||||
|
||||
#include "Timeout.h"
|
||||
#include "debug.h"
|
||||
|
||||
#include "Timeout_pimpl.h"
|
||||
|
||||
|
||||
Timeout::Timeout(unsigned int msec, Type t)
|
||||
: type(t), timeout_ms(msec)
|
||||
{
|
||||
pimpl_ = new Pimpl(this);
|
||||
}
|
||||
#include "support/LAssert.h"
|
||||
|
||||
|
||||
Timeout::~Timeout()
|
||||
{
|
||||
pimpl_->stop();
|
||||
delete pimpl_;
|
||||
}
|
||||
|
||||
|
||||
@ -42,17 +32,20 @@ void Timeout::start()
|
||||
pimpl_->start();
|
||||
}
|
||||
|
||||
|
||||
void Timeout::stop()
|
||||
{
|
||||
pimpl_->stop();
|
||||
}
|
||||
|
||||
|
||||
void Timeout::restart()
|
||||
{
|
||||
pimpl_->stop();
|
||||
pimpl_->start();
|
||||
}
|
||||
|
||||
|
||||
void Timeout::emit()
|
||||
{
|
||||
pimpl_->reset();
|
||||
@ -61,6 +54,7 @@ void Timeout::emit()
|
||||
pimpl_->start();
|
||||
}
|
||||
|
||||
|
||||
Timeout & Timeout::setType(Type t)
|
||||
{
|
||||
type = t;
|
||||
@ -70,6 +64,9 @@ Timeout & Timeout::setType(Type t)
|
||||
|
||||
Timeout & Timeout::setTimeout(unsigned int msec)
|
||||
{
|
||||
// Can't have a timeout of zero!
|
||||
lyx::Assert(msec);
|
||||
|
||||
timeout_ms = msec;
|
||||
return * this;
|
||||
}
|
||||
|
@ -13,9 +13,9 @@
|
||||
#ifndef TIMEOUT_H
|
||||
#define TIMEOUT_H
|
||||
|
||||
|
||||
#include <boost/signals/signal0.hpp>
|
||||
|
||||
|
||||
/**
|
||||
* This class executes the callback when the timeout expires.
|
||||
*/
|
||||
@ -26,7 +26,7 @@ public:
|
||||
ONETIME, //< one-shot timer
|
||||
CONTINUOUS //< repeating
|
||||
};
|
||||
///
|
||||
/// Note that the c-tor is implemented in the GUI-specific frontends
|
||||
Timeout(unsigned int msec, Type = ONETIME);
|
||||
///
|
||||
~Timeout();
|
||||
@ -47,13 +47,42 @@ public:
|
||||
/// set the timeout value
|
||||
Timeout & setTimeout(unsigned int msec);
|
||||
|
||||
/** Base class for the GUI implementation.
|
||||
It must be public so that C callback functions can access its
|
||||
daughter classes.
|
||||
*/
|
||||
class Impl
|
||||
{
|
||||
public:
|
||||
///
|
||||
Impl(Timeout & owner) : owner_(owner) {}
|
||||
///
|
||||
virtual ~Impl() {}
|
||||
/// Is the timer running?
|
||||
virtual bool running() const = 0;
|
||||
/// start the timer
|
||||
virtual void start() = 0;
|
||||
/// stop the timer
|
||||
virtual void stop() = 0;
|
||||
/// reset
|
||||
virtual void reset() = 0;
|
||||
|
||||
protected:
|
||||
///
|
||||
void emit() { owner_.emit(); }
|
||||
///
|
||||
unsigned int timeout_ms() const { return owner_.timeout_ms; }
|
||||
|
||||
private:
|
||||
///
|
||||
Timeout & owner_;
|
||||
};
|
||||
|
||||
private:
|
||||
///
|
||||
struct Pimpl;
|
||||
friend class Impl;
|
||||
///
|
||||
friend struct Pimpl;
|
||||
/// implementation
|
||||
Pimpl * pimpl_;
|
||||
boost::scoped_ptr<Impl> const pimpl_;
|
||||
/// one-shot or repeating
|
||||
Type type;
|
||||
/// timeout value in milliseconds
|
||||
|
@ -1,3 +1,9 @@
|
||||
2003-02-21 Angus Leeming <leeming@lyx.org>
|
||||
|
||||
* Timeout_pimpl.[Ch]: removed.
|
||||
* gnomeTimeout.[Ch]: new files, replacing the above.
|
||||
The gnomeTimeout class derives from Timeout::Impl.
|
||||
|
||||
2003-02-21 Angus Leeming <leeming@lyx.org>
|
||||
|
||||
* FileDialog.C (FileDialog): no need for LyXView *.
|
||||
|
@ -152,8 +152,8 @@ libgnome_la_SOURCES = \
|
||||
gnomeBC.C \
|
||||
gnomeBC.h \
|
||||
lyx_gui.C \
|
||||
Timeout_pimpl.C \
|
||||
Timeout_pimpl.h \
|
||||
gnomeTimeout.C \
|
||||
gnomeTimeout.h \
|
||||
pixbutton.h
|
||||
|
||||
libgnome.la: xforms.lo $(libgnome_la_OBJECTS) $(libgnome_la_DEPENDENCIES)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/**
|
||||
* \file gnome/Timeout_pimpl.C
|
||||
* \file gnomeTimeout.C
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
@ -11,27 +11,34 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
#include <glibmm/main.h>
|
||||
#include "Timeout_pimpl.h"
|
||||
#include "gnomeTimeout.h"
|
||||
#include "debug.h"
|
||||
|
||||
Timeout::Pimpl::Pimpl(Timeout * owner)
|
||||
: owner_(owner)
|
||||
{
|
||||
}
|
||||
|
||||
void Timeout::Pimpl::reset()
|
||||
Timeout::Timeout(unsigned int msec, Type t)
|
||||
: pimpl_(new gnomeTimeout(*this)), type(t), timeout_ms(msec)
|
||||
{}
|
||||
|
||||
|
||||
gnomeTimeout::(gnomeTimeoutTimeout * owner)
|
||||
: Timeout::Impl(owner), timeout_id(-1)
|
||||
{}
|
||||
|
||||
|
||||
void gnomeTimeout::reset()
|
||||
{
|
||||
stop();
|
||||
}
|
||||
|
||||
bool Timeout::Pimpl::running() const
|
||||
|
||||
bool gnomeTimeout::running() const
|
||||
{
|
||||
return running_;
|
||||
}
|
||||
|
||||
void Timeout::Pimpl::start()
|
||||
|
||||
void gnomeTimeout::start()
|
||||
{
|
||||
if (conn_.connected()) {
|
||||
lyxerr << "Timeout::start: already running!" << std::endl;
|
||||
@ -40,21 +47,21 @@ void Timeout::Pimpl::start()
|
||||
|
||||
conn_ = Glib::signal_timeout().connect(
|
||||
SigC::slot(*this, &Timeout::Pimpl::timeoutEvent),
|
||||
owner_->timeout_ms
|
||||
timeout_ms()
|
||||
);
|
||||
running_ = true;
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::stop()
|
||||
void gnomeTimeout::stop()
|
||||
{
|
||||
conn_.disconnect();
|
||||
running_ = false;
|
||||
}
|
||||
|
||||
|
||||
bool Timeout::Pimpl::timeoutEvent()
|
||||
bool gnomeTimeout::timeoutEvent()
|
||||
{
|
||||
owner_->emit();
|
||||
emit();
|
||||
return false; // discontinue emitting timeouts.
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
/**
|
||||
* \file gnome/Timeout_pimpl.h
|
||||
* \file gnomeTimeout.h
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
@ -8,8 +8,8 @@
|
||||
*
|
||||
* Full author contact details are available in file CREDITS
|
||||
*/
|
||||
#ifndef TIMEOUTPIMPL_H
|
||||
#define TIMEOUTPIMPL_H
|
||||
#ifndef GNOMETIMEOUT_H
|
||||
#define GNOMETIMEOUT_H
|
||||
|
||||
#include "frontends/Timeout.h"
|
||||
#include "glib.h" // for gint
|
||||
@ -21,10 +21,10 @@
|
||||
* This class executes the callback when the timeout expires
|
||||
* using Gnome mechanisms
|
||||
*/
|
||||
struct Timeout::Pimpl : public SigC::Object {
|
||||
struct gnomeTimeout : public SigC::Object, public Timeout::Impl {
|
||||
public:
|
||||
///
|
||||
Pimpl(Timeout * owner_);
|
||||
gnomeTimeout(Timeout * owner_);
|
||||
/// start the timer
|
||||
void start();
|
||||
/// stop the timer
|
||||
@ -39,12 +39,10 @@ public:
|
||||
/// The timeout signal, this gets called when the timeout passed.
|
||||
bool timeoutEvent();
|
||||
private:
|
||||
/// the owning timer
|
||||
Timeout * owner_;
|
||||
/// Timer connection
|
||||
SigC::Connection conn_;
|
||||
/// Used for running as SigC::Connection::connected() isn't const
|
||||
bool running_;
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif // GNOMETIMEOUT
|
@ -1,3 +1,9 @@
|
||||
2003-02-21 Angus Leeming <leeming@lyx.org>
|
||||
|
||||
* Timeout_pimpl.[Ch]: removed.
|
||||
* qtTimeout.[Ch]: new files, replacing the above.
|
||||
The qtTimeout class derives from Timeout::Impl.
|
||||
|
||||
2003-02-21 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
|
||||
|
||||
* qfont_loader.C (addFontPath): make debug messages quieter
|
||||
|
@ -24,7 +24,7 @@ libqt2_la_SOURCES = \
|
||||
LyXKeySymFactory.C \
|
||||
LyXScreenFactory.C \
|
||||
Menubar_pimpl.C Menubar_pimpl.h \
|
||||
Timeout_pimpl.C Timeout_pimpl.h \
|
||||
qtTimeout.C qtTimeout.h \
|
||||
QAbout.C QAbout.h \
|
||||
QBibitem.C QBibitem.h \
|
||||
QBibtex.C QBibtex.h \
|
||||
|
@ -1,56 +0,0 @@
|
||||
/**
|
||||
* \file qt2/Timeout_pimpl.C
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
* \author John Levon
|
||||
*
|
||||
* Full author contact details are available in file CREDITS
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
#include "Timeout_pimpl.h"
|
||||
#include "debug.h"
|
||||
|
||||
using std::endl;
|
||||
|
||||
Timeout::Pimpl::Pimpl(Timeout * owner)
|
||||
: owner_(owner), timeout_id(-1)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::timerEvent(QTimerEvent *)
|
||||
{
|
||||
owner_->emit();
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::reset()
|
||||
{
|
||||
killTimers();
|
||||
timeout_id = -1;
|
||||
}
|
||||
|
||||
|
||||
bool Timeout::Pimpl::running() const
|
||||
{
|
||||
return timeout_id != -1;
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::start()
|
||||
{
|
||||
if (running())
|
||||
lyxerr << "Timeout::start: already running!" << endl;
|
||||
timeout_id = startTimer(owner_->timeout_ms);
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::stop()
|
||||
{
|
||||
if (running())
|
||||
reset();
|
||||
}
|
58
src/frontends/qt2/qtTimeout.C
Normal file
58
src/frontends/qt2/qtTimeout.C
Normal file
@ -0,0 +1,58 @@
|
||||
/**
|
||||
* \file qtTimeout.C
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
* \author John Levon
|
||||
*
|
||||
* Full author contact details are available in file CREDITS
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "qtTimeout.h"
|
||||
#include "debug.h"
|
||||
|
||||
|
||||
Timeout::Timeout(unsigned int msec, Type t)
|
||||
: pimpl_(new qtTimeout(*this)), type(t), timeout_ms(msec)
|
||||
{}
|
||||
|
||||
|
||||
qtTimeout::qtTimeout(Timeout & owner)
|
||||
: Timeout::Impl(owner), timeout_id(-1)
|
||||
{}
|
||||
|
||||
|
||||
void qtTimeout::timerEvent(QTimerEvent *)
|
||||
{
|
||||
emit();
|
||||
}
|
||||
|
||||
|
||||
void qtTimeout::reset()
|
||||
{
|
||||
killTimers();
|
||||
timeout_id = -1;
|
||||
}
|
||||
|
||||
|
||||
bool qtTimeout::running() const
|
||||
{
|
||||
return timeout_id != -1;
|
||||
}
|
||||
|
||||
|
||||
void qtTimeout::start()
|
||||
{
|
||||
if (running())
|
||||
lyxerr << "Timeout::start: already running!" << std::endl;
|
||||
timeout_id = startTimer(timeout_ms());
|
||||
}
|
||||
|
||||
|
||||
void qtTimeout::stop()
|
||||
{
|
||||
if (running())
|
||||
reset();
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
/**
|
||||
* \file qt2/Timeout_pimpl.h
|
||||
* \file qtTimeout.h
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
@ -9,12 +9,11 @@
|
||||
* Full author contact details are available in file CREDITS
|
||||
*/
|
||||
|
||||
#ifndef TIMEOUTPIMPL_H
|
||||
#define TIMEOUTPIMPL_H
|
||||
|
||||
#ifndef QTTIMEOUT_H
|
||||
#define QTTIMEOUT_H
|
||||
|
||||
#include "frontends/Timeout.h"
|
||||
#include <qobject.h>
|
||||
#include <qobject.h>
|
||||
|
||||
// stupid Qt
|
||||
#undef emit
|
||||
@ -23,26 +22,26 @@
|
||||
* This class executes the callback when the timeout expires
|
||||
* using Qt mechanisms
|
||||
*/
|
||||
struct Timeout::Pimpl : QObject {
|
||||
struct qtTimeout : QObject, public Timeout::Impl {
|
||||
public:
|
||||
///
|
||||
Pimpl(Timeout * owner_);
|
||||
qtTimeout(Timeout & owner_);
|
||||
///
|
||||
virtual bool running() const;
|
||||
/// start the timer
|
||||
void start();
|
||||
virtual void start();
|
||||
/// stop the timer
|
||||
void stop();
|
||||
virtual void stop();
|
||||
/// reset
|
||||
void reset();
|
||||
/// is the timer running ?
|
||||
bool running() const;
|
||||
virtual void reset();
|
||||
|
||||
protected:
|
||||
/// slot
|
||||
virtual void timerEvent(QTimerEvent *);
|
||||
|
||||
private:
|
||||
/// the owning timer
|
||||
Timeout * owner_;
|
||||
/// QTimer id
|
||||
/// timout id
|
||||
int timeout_id;
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif // QTTIMEOUT_H
|
@ -1,3 +1,9 @@
|
||||
2003-02-21 Angus Leeming <leeming@lyx.org>
|
||||
|
||||
* Timeout_pimpl.[Ch]: removed.
|
||||
* xformsTimeout.[Ch]: new files, replacing the above.
|
||||
The xformsTimeout class derives from Timeout::Impl.
|
||||
|
||||
2003-02-21 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
|
||||
|
||||
* xfont_loader.C (addFontPath): make debug messages quieter
|
||||
|
@ -9,8 +9,6 @@ INCLUDES = -I$(top_srcdir)/images -I$(top_srcdir)/src \
|
||||
|
||||
SUBDIRS = forms
|
||||
|
||||
EXTRA_DIST = xformsImage.C xformsImage.h
|
||||
|
||||
# Alphabetical order please. It makes it easier to figure out what's missing.
|
||||
libxforms_la_SOURCES = \
|
||||
forms_fwd.h \
|
||||
@ -35,10 +33,12 @@ libxforms_la_SOURCES = \
|
||||
xforms_helpers.h \
|
||||
xforms_resize.C \
|
||||
xforms_resize.h \
|
||||
xformsImage.C \
|
||||
xformsImage.h \
|
||||
xformsBC.C \
|
||||
xformsBC.h \
|
||||
xformsImage.C \
|
||||
xformsImage.h \
|
||||
xformsTimeout.C \
|
||||
xformsTimeout.h \
|
||||
xscreen.C \
|
||||
xscreen.h \
|
||||
Alert_pimpl.C \
|
||||
@ -146,8 +146,6 @@ libxforms_la_SOURCES = \
|
||||
Menubar_pimpl.h \
|
||||
RadioButtonGroup.C \
|
||||
RadioButtonGroup.h \
|
||||
Timeout_pimpl.C \
|
||||
Timeout_pimpl.h \
|
||||
Toolbar_pimpl.C \
|
||||
Toolbar_pimpl.h \
|
||||
Tooltips.C \
|
||||
|
@ -1,71 +0,0 @@
|
||||
/**
|
||||
* \file xforms/Timeout_pimpl.C
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
* \author Lars Gullik Bjønnes
|
||||
* \author John Levon
|
||||
*
|
||||
* Full author contact details are available in file CREDITS
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include FORMS_H_LOCATION
|
||||
|
||||
|
||||
#include "Timeout_pimpl.h"
|
||||
#include "debug.h"
|
||||
|
||||
using std::endl;
|
||||
|
||||
namespace {
|
||||
|
||||
extern "C" {
|
||||
|
||||
static
|
||||
void C_intern_timeout_cb(int, void * data)
|
||||
{
|
||||
Timeout * to = static_cast<Timeout *>(data);
|
||||
to->emit();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
} // namespace anon
|
||||
|
||||
|
||||
Timeout::Pimpl::Pimpl(Timeout * owner)
|
||||
: owner_(owner), timeout_id(-1)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::reset()
|
||||
{
|
||||
timeout_id = -1;
|
||||
}
|
||||
|
||||
|
||||
bool Timeout::Pimpl::running() const
|
||||
{
|
||||
return timeout_id != -1;
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::start()
|
||||
{
|
||||
if (timeout_id != -1)
|
||||
lyxerr << "Timeout::start: already running!" << endl;
|
||||
timeout_id = fl_add_timeout(owner_->timeout_ms,
|
||||
C_intern_timeout_cb, owner_);
|
||||
}
|
||||
|
||||
|
||||
void Timeout::Pimpl::stop()
|
||||
{
|
||||
if (timeout_id != -1) {
|
||||
fl_remove_timeout(timeout_id);
|
||||
timeout_id = -1;
|
||||
}
|
||||
}
|
77
src/frontends/xforms/xformsTimeout.C
Normal file
77
src/frontends/xforms/xformsTimeout.C
Normal file
@ -0,0 +1,77 @@
|
||||
/**
|
||||
* \file xformsTimeout.C
|
||||
* Copyright 2001 LyX Team
|
||||
* Read COPYING
|
||||
*
|
||||
* \author Lars Gullik Bjønnes
|
||||
* \author John Levon
|
||||
* \author Angus Leeming
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "xformsTimeout.h"
|
||||
#include "debug.h"
|
||||
|
||||
#include FORMS_H_LOCATION
|
||||
|
||||
|
||||
Timeout::Timeout(unsigned int msec, Type t)
|
||||
: pimpl_(new xformsTimeout(*this)), type(t), timeout_ms(msec)
|
||||
{}
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
extern "C"
|
||||
void C_TimeoutCB(int, void * data)
|
||||
{
|
||||
xformsTimeout * to = static_cast<xformsTimeout *>(data);
|
||||
to->emitCB();
|
||||
}
|
||||
|
||||
} // namespace anon
|
||||
|
||||
|
||||
xformsTimeout::xformsTimeout(Timeout & owner)
|
||||
: Timeout::Impl(owner), timeout_id(-1)
|
||||
{}
|
||||
|
||||
|
||||
void xformsTimeout::emitCB()
|
||||
{
|
||||
emit();
|
||||
}
|
||||
|
||||
|
||||
bool xformsTimeout::running() const
|
||||
{
|
||||
return timeout_id != -1;
|
||||
}
|
||||
|
||||
|
||||
void xformsTimeout::start()
|
||||
{
|
||||
if (running()) {
|
||||
lyxerr << "Timeout::start: already running!" << std::endl;
|
||||
|
||||
} else {
|
||||
timeout_id = fl_add_timeout(timeout_ms(),
|
||||
C_TimeoutCB, this);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void xformsTimeout::stop()
|
||||
{
|
||||
if (running()) {
|
||||
fl_remove_timeout(timeout_id);
|
||||
timeout_id = -1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void xformsTimeout::reset()
|
||||
{
|
||||
timeout_id = -1;
|
||||
}
|
@ -1,42 +1,44 @@
|
||||
// -*- C++ -*-
|
||||
/**
|
||||
* \file xforms/Timeout_pimpl.h
|
||||
* \file xformsTimeout.h
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
* \author Lars Gullik Bjønnes
|
||||
* \author John Levon
|
||||
* \author Angus Leeming
|
||||
*
|
||||
* Full author contact details are available in file CREDITS
|
||||
*/
|
||||
#ifndef TIMEOUTPIMPL_H
|
||||
#define TIMEOUTPIMPL_H
|
||||
|
||||
#ifndef XFORMSTIMEOUT_H
|
||||
#define XFORMSTIMEOUT_H
|
||||
|
||||
#include "frontends/Timeout.h"
|
||||
|
||||
|
||||
/**
|
||||
* This class executes the callback when the timeout expires
|
||||
* using XForms mechanisms
|
||||
* using xforms mechanisms
|
||||
*/
|
||||
struct Timeout::Pimpl {
|
||||
class xformsTimeout : public Timeout::Impl {
|
||||
public:
|
||||
///
|
||||
Pimpl(Timeout * owner_);
|
||||
/// Is the timer running?
|
||||
bool running() const;
|
||||
/// start the timer
|
||||
void start();
|
||||
/// stop the timer
|
||||
void stop();
|
||||
/// reset
|
||||
void reset();
|
||||
xformsTimeout(Timeout &);
|
||||
///
|
||||
virtual bool running() const;
|
||||
///
|
||||
virtual void start();
|
||||
///
|
||||
virtual void stop();
|
||||
///
|
||||
virtual void reset();
|
||||
/// xforms callback function
|
||||
void emitCB();
|
||||
|
||||
private:
|
||||
/// the owning timer
|
||||
Timeout * owner_;
|
||||
/// xforms id
|
||||
///
|
||||
int timeout_id;
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif // XFORMSTIMEOUT_H
|
Loading…
Reference in New Issue
Block a user