Merge branch 'subs'
[dcpomatic.git] / src / wx / wx_util.h
index 555a3ab0ee84344b5c2a16a1d990a4154751ce47..12a6e8837d071b353d4536a18fc4c7634d4a53fb 100644 (file)
@@ -19,6 +19,7 @@
 
 #include <wx/wx.h>
 #include <boost/function.hpp>
+#include <boost/thread.hpp>
 
 /** @file src/wx/wx_util.h
  *  @brief Some utility functions and classes.
@@ -29,17 +30,23 @@ extern wxStaticText* add_label_to_sizer (wxSizer *, wxWindow *, std::string, int
 extern std::string wx_to_std (wxString);
 extern wxString std_to_wx (std::string);
 
-/** A wxStaticText whose content is computed in a separate thread, to avoid holding
+/** @class ThreadedStaticText
+ *
+ *  @brief A wxStaticText whose content is computed in a separate thread, to avoid holding
  *  up the GUI while work is done.
  */
 class ThreadedStaticText : public wxStaticText
 {
 public:
        ThreadedStaticText (wxWindow* parent, std::string initial, boost::function<std::string ()> fn);
+       ~ThreadedStaticText ();
 
 private:
        void run (boost::function<std::string ()> fn);
        void thread_finished (wxCommandEvent& ev);
 
+       /** Thread to do our work in */
+       boost::thread* _thread;
+       
        static const int _update_event_id;
 };