chatdialog: Fix issue of creating QObjects in different thread.

Change-Id: I2f0dc2006cc330cd9d4fc5973eb475d841103b59
diff --git a/src/digesttreescene.h b/src/digesttreescene.h
index e7600e8..c239a49 100644
--- a/src/digesttreescene.h
+++ b/src/digesttreescene.h
@@ -19,6 +19,7 @@
 #include <QMap>
 
 #ifndef Q_MOC_RUN
+#include <ndn-cpp-dev/util/scheduler.hpp>
 #include <sync-seq-no.h>
 #include <sync-logic.h>
 #include <ctime>
@@ -44,7 +45,8 @@
 typedef QMapIterator<QString, DisplayUserPtr> RosterIterator;
 
 public:
-  DigestTreeScene(QWidget *parent = 0);
+  DigestTreeScene(ndn::shared_ptr<boost::asio::io_service> ioService,
+                  QWidget *parent = 0);
   void processUpdate(const std::vector<Sync::MissingDataInfo> &v, QString digest);
   void msgReceived(QString prefix, QString nick);
   void clearAll();
@@ -65,12 +67,13 @@
   void plotEdge(const std::vector<TreeLayout::Coordinate> &v, int nodeSize);
   void plotNode(const std::vector<TreeLayout::Coordinate> &v, QString digest, int nodeSize);
   void reDrawNode(DisplayUserPtr p, QColor rimColor);
+
 private:
   Roster m_roster;
   QGraphicsTextItem *m_rootDigest; 
   DisplayUserPtr previouslyUpdatedUser;
   QString m_currentPrefix;
-
+  ndn::Scheduler m_scheduler;
 };
 
 class User