Index: molecuilder/src/Makefile.am
===================================================================
--- molecuilder/src/Makefile.am	(revision 7cb300945f5515374535460ea0985a4c349c1afe)
+++ molecuilder/src/Makefile.am	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -8,6 +8,9 @@
 ACTIONSHEADER = Actions/Action.hpp Actions/MethodAction.hpp
 
-MENUSOURCE = ${ACTIONSSOURCE} Menu/Menu.cpp Menu/TextMenu.cpp Menu/MenuItem.cpp Menu/SubMenuItem.cpp Menu/ActionMenuItem.cpp Menu/SeperatorItem.cpp
-MENUHEADER = ${ACTIONSHEADER} Menu/Menu.hpp Menu/TextMenu.hpp Menu/MenuItem.hpp Menu/SubMenuItem.hpp Menu/ActionMenuItem.hpp Menu/SeperatorItem.hpp
+VIEWSOURCE = Views/View.cpp Views/StringView.cpp Views/MethodStringView.cpp Views/StreamStringView.cpp
+VIEWHEADER = Views/View.hpp Views/StringView.hpp Views/MethodStringView.hpp Views/StreamStringView.hpp
+
+MENUSOURCE = ${ACTIONSSOURCE} ${VIEWSOURCE} Menu/Menu.cpp Menu/TextMenu.cpp Menu/MenuItem.cpp Menu/SubMenuItem.cpp Menu/ActionMenuItem.cpp Menu/SeperatorItem.cpp Menu/DisplayMenuItem.cpp
+MENUHEADER = ${ACTIONSHEADER} ${VIEWHEADER} Menu/Menu.hpp Menu/TextMenu.hpp Menu/MenuItem.hpp Menu/SubMenuItem.hpp Menu/ActionMenuItem.hpp Menu/SeperatorItem.hpp Menu/DisplayMenuItem.hpp
 
 SOURCE = ${ANALYSISSOURCE} ${ATOMSOURCE} ${MENUSOURCE} bond.cpp bondgraph.cpp boundary.cpp config.cpp element.cpp ellipsoid.cpp errorlogger.cpp graph.cpp helpers.cpp leastsquaremin.cpp linkedcell.cpp log.cpp logger.cpp memoryusageobserver.cpp moleculelist.cpp molecule.cpp molecule_dynamics.cpp molecule_fragmentation.cpp molecule_geometry.cpp molecule_graph.cpp molecule_pointcloud.cpp parser.cpp periodentafel.cpp tesselation.cpp tesselationhelpers.cpp vector.cpp verbose.cpp menu.cpp
Index: molecuilder/src/Menu/DisplayMenuItem.cpp
===================================================================
--- molecuilder/src/Menu/DisplayMenuItem.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Menu/DisplayMenuItem.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,36 @@
+/*
+ * DisplayMenuItem.cpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#include "Menu/DisplayMenuItem.hpp"
+#include "Views/StringView.hpp"
+
+#include <iostream>
+
+DisplayMenuItem::DisplayMenuItem(Menu* _menu, StringView *_view):
+MenuItem('\0',"",_menu),
+view(_view)
+{
+
+}
+
+DisplayMenuItem::~DisplayMenuItem()
+{
+  // TODO Auto-generated destructor stub
+}
+
+
+void DisplayMenuItem::doTrigger(){}
+void DisplayMenuItem::checkTrigger(char c){}
+
+const string DisplayMenuItem::formatEntry(){
+  return view->toString();
+}
+
+
+const string DisplayMenuItem::getDescription(){
+  return string("");
+}
Index: molecuilder/src/Menu/DisplayMenuItem.hpp
===================================================================
--- molecuilder/src/Menu/DisplayMenuItem.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Menu/DisplayMenuItem.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,32 @@
+/*
+ * DisplayMenuItem.hpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#ifndef DISPLAYMENUITEM_HPP_
+#define DISPLAYMENUITEM_HPP_
+
+#include "Menu/MenuItem.hpp"
+
+class StringView;
+
+class DisplayMenuItem : public MenuItem
+{
+public:
+  DisplayMenuItem(Menu* _menu, StringView *_view);
+  virtual ~DisplayMenuItem();
+
+  virtual void doTrigger();
+  virtual void checkTrigger(char);
+
+  virtual const string formatEntry();
+
+  virtual const string getDescription();
+
+private:
+  StringView *view;
+};
+
+#endif /* DISPLAYMENUITEM_HPP_ */
Index: molecuilder/src/Views/MethodStringView.cpp
===================================================================
--- molecuilder/src/Views/MethodStringView.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/MethodStringView.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,26 @@
+/*
+ * MethodStringView.cpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#include "MethodStringView.hpp"
+
+MethodStringView::MethodStringView(boost::function<string()> _displayMethod) :
+StringView(),
+displayMethod(_displayMethod)
+{
+  // TODO Auto-generated constructor stub
+
+}
+
+MethodStringView::~MethodStringView()
+{
+  // TODO Auto-generated destructor stub
+}
+
+
+const string MethodStringView::toString() {
+  return displayMethod();
+}
Index: molecuilder/src/Views/MethodStringView.hpp
===================================================================
--- molecuilder/src/Views/MethodStringView.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/MethodStringView.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,27 @@
+/*
+ * MethodStringView.hpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#ifndef METHODSTRINGVIEW_HPP_
+#define METHODSTRINGVIEW_HPP_
+
+#include <boost/function.hpp>
+
+#include "Views/StringView.hpp"
+
+class MethodStringView : public StringView
+{
+public:
+  MethodStringView(boost::function<string()>);
+  virtual ~MethodStringView();
+
+  virtual const string toString();
+
+private:
+  boost::function<string()> displayMethod;
+};
+
+#endif /* METHODSTRINGVIEW_HPP_ */
Index: molecuilder/src/Views/StreamStringView.cpp
===================================================================
--- molecuilder/src/Views/StreamStringView.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/StreamStringView.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,29 @@
+/*
+ * StreamStringView.cpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#include <sstream>
+
+#include "StreamStringView.hpp"
+
+StreamStringView::StreamStringView(boost::function<void(ofstream *)> _displayMethod) :
+StringView(),
+displayMethod(_displayMethod)
+{
+  // TODO Auto-generated constructor stub
+
+}
+
+StreamStringView::~StreamStringView()
+{
+  // TODO Auto-generated destructor stub
+}
+
+const string StreamStringView::toString() {
+  stringstream s;
+  displayMethod((ofstream *)&s);
+  return s.str();
+}
Index: molecuilder/src/Views/StreamStringView.hpp
===================================================================
--- molecuilder/src/Views/StreamStringView.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/StreamStringView.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,27 @@
+/*
+ * StreamStringView.hpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#ifndef STREAMSTRINGVIEW_HPP_
+#define STREAMSTRINGVIEW_HPP_
+
+#include <boost/function.hpp>
+
+#include "Views/StringView.hpp"
+
+class StreamStringView : public StringView
+{
+public:
+  StreamStringView(boost::function<void(ofstream *)>);
+  virtual ~StreamStringView();
+
+  virtual const string toString();
+
+private:
+  boost::function<void(ofstream *)> displayMethod;
+};
+
+#endif /* STREAMSTRINGVIEW_HPP_ */
Index: molecuilder/src/Views/StringView.cpp
===================================================================
--- molecuilder/src/Views/StringView.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/StringView.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,19 @@
+/*
+ * StringView.cpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#include "StringView.hpp"
+
+StringView::StringView()
+{
+  // TODO Auto-generated constructor stub
+
+}
+
+StringView::~StringView()
+{
+  // TODO Auto-generated destructor stub
+}
Index: molecuilder/src/Views/StringView.hpp
===================================================================
--- molecuilder/src/Views/StringView.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/StringView.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,25 @@
+/*
+ * StringView.hpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#ifndef STRINGVIEW_HPP_
+#define STRINGVIEW_HPP_
+
+#include <string>
+#include "Views/View.hpp"
+
+using namespace std;
+
+class StringView : public View
+{
+public:
+  StringView();
+  virtual ~StringView();
+
+  virtual const string toString()=0;
+};
+
+#endif /* STRINGVIEW_HPP_ */
Index: molecuilder/src/Views/View.cpp
===================================================================
--- molecuilder/src/Views/View.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/View.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,19 @@
+/*
+ * View.cpp
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#include "View.hpp"
+
+View::View()
+{
+  // TODO Auto-generated constructor stub
+
+}
+
+View::~View()
+{
+  // TODO Auto-generated destructor stub
+}
Index: molecuilder/src/Views/View.hpp
===================================================================
--- molecuilder/src/Views/View.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
+++ molecuilder/src/Views/View.hpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -0,0 +1,18 @@
+/*
+ * View.h
+ *
+ *  Created on: Dec 14, 2009
+ *      Author: crueger
+ */
+
+#ifndef VIEW_H_
+#define VIEW_H_
+
+class View
+{
+public:
+  View();
+  virtual ~View();
+};
+
+#endif /* VIEW_H_ */
Index: molecuilder/src/menu.cpp
===================================================================
--- molecuilder/src/menu.cpp	(revision 7cb300945f5515374535460ea0985a4c349c1afe)
+++ molecuilder/src/menu.cpp	(revision df55a0410dea6c4f437ffacd9b012130774df8cf)
@@ -28,5 +28,8 @@
 #include "Menu/ActionMenuItem.hpp"
 #include "Menu/SeperatorItem.hpp"
+#include "Menu/DisplayMenuItem.hpp"
 #include "Actions/MethodAction.hpp"
+#include "Views/StreamStringView.hpp"
+#include "Views/MethodStringView.hpp"
 
 
@@ -1225,4 +1228,9 @@
   TextMenu *main_menu = new TextMenu(Log() << Verbose(0), "Main Menu");
 
+  StringView *moleculeView = new StreamStringView(boost::bind(&MoleculeListClass::Enumerate,molecules,_1));
+  new DisplayMenuItem(main_menu,moleculeView);
+
+  new SeperatorItem(main_menu);
+
   MethodAction *setMoleculeAction = new MethodAction(boost::bind(&oldmenu::notImplementedYet,this));
   new ActionMenuItem('a',"set molecule (in)active",main_menu,setMoleculeAction);
