aboutsummaryrefslogtreecommitdiff
path: root/src/FbTk/AutoReloadHelper.hh
diff options
context:
space:
mode:
authorPavel Labath <pavelo@centrum.sk>2011-08-09 08:25:28 (GMT)
committerPaul Tagliamonte <paultag@fluxbox.org>2012-04-07 02:13:13 (GMT)
commit657eb02f063fe6d046cefaecc5982b0b5ae35bf6 (patch)
treef4cd50787576f8130ac2069e4462f85d5aa82df5 /src/FbTk/AutoReloadHelper.hh
parentbc41a7240a53f0c5e0a1a5715ab703689280a0e2 (diff)
downloadfluxbox_paul-657eb02f063fe6d046cefaecc5982b0b5ae35bf6.zip
fluxbox_paul-657eb02f063fe6d046cefaecc5982b0b5ae35bf6.tar.bz2
Make AutoReloadHelper truly "automatic"
by adding the ability to automatically check for modifications at specified intervals. Using inotify() would be better, but that's not always present.
Diffstat (limited to 'src/FbTk/AutoReloadHelper.hh')
-rw-r--r--src/FbTk/AutoReloadHelper.hh8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/FbTk/AutoReloadHelper.hh b/src/FbTk/AutoReloadHelper.hh
index b337a4a..216b3f5 100644
--- a/src/FbTk/AutoReloadHelper.hh
+++ b/src/FbTk/AutoReloadHelper.hh
@@ -28,11 +28,16 @@
28 28
29#include "Command.hh" 29#include "Command.hh"
30#include "RefCount.hh" 30#include "RefCount.hh"
31#include "Timer.hh"
31 32
32namespace FbTk { 33namespace FbTk {
33 34
34class AutoReloadHelper { 35class AutoReloadHelper: private NotCopyable {
35public: 36public:
37 /**
38 * @param interval time interval (in seconds) between automatic reload checks
39 */
40 AutoReloadHelper(int interval = 0);
36 41
37 void setMainFile(const std::string& filename); 42 void setMainFile(const std::string& filename);
38 void addFile(const std::string& filename); 43 void addFile(const std::string& filename);
@@ -44,6 +49,7 @@ public:
44private: 49private:
45 RefCount<Command<void> > m_reload_cmd; 50 RefCount<Command<void> > m_reload_cmd;
46 std::string m_main_file; 51 std::string m_main_file;
52 Timer m_timer;
47 53
48 typedef std::map<std::string, time_t> TimestampMap; 54 typedef std::map<std::string, time_t> TimestampMap;
49 TimestampMap m_timestamps; 55 TimestampMap m_timestamps;