diff --git a/modules/gui/src/scene_win/render_mode_node.cc b/modules/gui/src/scene_win/render_mode_node.cc
index 63789cd3748647cf9b595cc57c2a2826e48defe1..52836c04362844e8689f28ba3d18d91cfd1f6ce5 100644
--- a/modules/gui/src/scene_win/render_mode_node.cc
+++ b/modules/gui/src/scene_win/render_mode_node.cc
@@ -77,9 +77,9 @@ gfx::RenderMode::Type RenderModeNode::GetRenderMode() const {
   return render_mode_;
 }
 
-void RenderModeNode::SetQueryView(mol::QueryViewWrapper part)
+void RenderModeNode::Update()
 {
-  //Do Nothing
+  this->SetQueryView(mol::QueryViewWrapper(entity_->GetRenderView(this->GetRenderMode())));
 }
 
 }}
diff --git a/modules/gui/src/scene_win/render_mode_node.hh b/modules/gui/src/scene_win/render_mode_node.hh
index 68bf5300ee720a5becd74a2e0b07e890d4801d68..f5de2d0842fe62a6052518409fcd06a3e63458b6 100644
--- a/modules/gui/src/scene_win/render_mode_node.hh
+++ b/modules/gui/src/scene_win/render_mode_node.hh
@@ -54,8 +54,7 @@ public:
 
   gfx::RenderMode::Type GetRenderMode() const;
 
-  virtual void SetQueryView(mol::QueryViewWrapper part);
-
+  virtual void Update();
 private:
   gfx::EntityP entity_;
   gfx::RenderMode::Type render_mode_;
diff --git a/modules/gui/src/scene_win/render_modes_node.cc b/modules/gui/src/scene_win/render_modes_node.cc
index 0e46a1a03ea6ef71b9d8a1f2d352cf0542547071..4c551f6b79b0eb5f649a03adb9eb0727693ced7d 100644
--- a/modules/gui/src/scene_win/render_modes_node.cc
+++ b/modules/gui/src/scene_win/render_modes_node.cc
@@ -54,6 +54,9 @@ void RenderModesNode::Update(){
       model->AddNode(this, node);
       render_types_.insert(render_modes[i],node);
     }
+    else{
+      render_types_[render_modes[i]]->Update();
+    }
   }
   QSet<gfx::RenderMode::Type> types_to_delete;
   QMap<gfx::RenderMode::Type,RenderModeNode*>::iterator type;