diff --git a/modules/gui/src/sequence_viewer/sequence_viewer.cc b/modules/gui/src/sequence_viewer/sequence_viewer.cc
index 9f9ea2750f31328d5bf17a28af21ccab18631a05..05d5d03cf1c64f68a374105eee97fe1bafb3b979 100644
--- a/modules/gui/src/sequence_viewer/sequence_viewer.cc
+++ b/modules/gui/src/sequence_viewer/sequence_viewer.cc
@@ -23,6 +23,9 @@
 
 #include <ost/gfx/entity.hh>
 #include <ost/gfx/scene.hh>
+#include <ost/gfx/gfx_node_visitor.hh>
+#include <ost/gfx/gfx_node.hh>
+#include <ost/gfx/gfx_object.hh>
 
 #include <ost/gui/widget_registry.hh>
 #include <ost/gui/gosty_app.hh>
@@ -32,6 +35,15 @@
 
 namespace ost { namespace gui {
 
+struct GetNodesVisitor: public gfx::GfxNodeVisitor {
+  GetNodesVisitor(): nodes_() {}
+  virtual void VisitObject(gfx::GfxObj* o, const Stack& st) {
+    nodes_.push_back(o->shared_from_this());
+  }
+  gfx::NodePtrList nodes_;
+  gfx::NodePtrList GetNodes(){return nodes_;}
+};
+
 class SequenceViewerFactory: public WidgetFactory {
 public:
 	SequenceViewerFactory() :
@@ -50,6 +62,14 @@ SequenceViewer::SequenceViewer(QWidget* parent):
 {
   gfx::Scene::Instance().AttachObserver(this);
   this->SetDisplayStyle(SequenceViewer::LOOSE);
+
+  gfx::GfxNodeP root_node = gfx::Scene::Instance().GetRootNode();
+  GetNodesVisitor gnv;
+  gfx::Scene::Instance().Apply(gnv);
+  gfx::NodePtrList list = gnv.GetNodes();
+  for(unsigned int i=0; i<list.size();i++){
+    this->NodeAdded(list[i]);
+  }
 }
 
 SequenceViewer::~SequenceViewer()