]> git.lyx.org Git - lyx.git/blob - src/frontends/gnome/Timeout_pimpl.h
Clean-up of the button controller.
[lyx.git] / src / frontends / gnome / Timeout_pimpl.h
1 // -*- C++ -*-
2 /**
3  * \file Timeout_pimpl.h
4  * Copyright 2001 LyX Team
5  * Read COPYING
6  *
7  * \author Baruch Even
8  */
9 #ifndef TIMEOUTPIMPL_H
10 #define TIMEOUTPIMPL_H
11
12 #include <config.h>
13
14 #include "frontends/Timeout.h"
15 #include "glib.h" // for gint
16
17 #include <sigc++/signal_system.h>
18
19 #ifdef __GNUG__
20 #pragma interface
21 #endif
22
23 /**
24  * This class executes the callback when the timeout expires
25  * using Gnome mechanisms
26  */
27 struct Timeout::Pimpl : public SigC::Object {
28 public:
29         ///
30         Pimpl(Timeout * owner_);
31         /// start the timer
32         void start();
33         /// stop the timer
34         void stop();
35         /// reset
36         void reset();
37
38 public:
39         /// The timeout signal, this gets called when the timeout passed.
40         gint timeoutEvent();
41 private:
42         /// the owning timer
43         Timeout * owner_;
44         /// Timer connection
45         SigC::Connection conn_;
46 };
47
48 #endif