Index: src/UIElements/Views/Qt4/MoleculeList/QtMoleculeItem.cpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/QtMoleculeItem.cpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/QtMoleculeItem.cpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -65,5 +65,8 @@
   emitDirtyState(_emitDirtyState)
 {
-  signOnToMolecule();
+  // BUG: We cannot sign on here as then and again we catch "pure virtual function called"
+  // this makes no sense as both the Observer part (which also has a recievedNotification())
+  // nor QtMoleculeItem's vtable have been fully created.
+//  signOnToMolecule();
   setFlags(flags() | Qt::ItemIsSelectable);
 }
@@ -93,5 +96,8 @@
 QtMoleculeItem::~QtMoleculeItem()
 {
-  signOffFromMolecule();
+  // BUG: We cannot sign off here as then and again we catch "pure virtual function called"
+  // this makes no sense as neither the Observer part (which also has a recievedNotification())
+  // nor QtMoleculeItem's vtable have yet been destroyed.
+//  signOffFromMolecule();
 }
 
Index: src/UIElements/Views/Qt4/MoleculeList/QtMoleculeItem.hpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/QtMoleculeItem.hpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/QtMoleculeItem.hpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -93,4 +93,5 @@
   void subjectKilled(Observable *publisher);
 
+protected:
   void signOnToMolecule();
   void signOffFromMolecule();
Index: src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_atomcount.hpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_atomcount.hpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_atomcount.hpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -44,6 +44,12 @@
             channellist_atomcount)
   {
+    signOnToMolecule();
     // cannot call pure virtual function in QtMoleculeItem's cstor
     internal_updateState();
+  }
+
+  ~QtMoleculeItem_atomcount()
+  {
+    signOffFromMolecule();
   }
 
Index: src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_formula.hpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_formula.hpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_formula.hpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -47,6 +47,12 @@
             channellist_formula)
   {
+    signOnToMolecule();
     // cannot call pure virtual function in QtMoleculeItem's cstor
     internal_updateState();
+  }
+
+  ~QtMoleculeItem_formula()
+  {
+    signOffFromMolecule();
   }
 
Index: src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_name.hpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_name.hpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_name.hpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -44,6 +44,12 @@
             channellist_name)
   {
+    signOnToMolecule();
     // cannot call pure virtual function in QtMoleculeItem's cstor
     internal_updateState();
+  }
+
+  ~QtMoleculeItem_name()
+  {
+    signOffFromMolecule();
   }
 
Index: src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_occurrence.hpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_occurrence.hpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_occurrence.hpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -31,6 +31,12 @@
         QtMoleculeItem(_molid, channellist_occurrence, QtMoleculeItem::DoesNotMove, _emitDirtyState)
   {
+    signOnToMolecule();
     // cannot call pure virtual function in QtMoleculeItem's cstor
     internal_updateState();
+  }
+
+  ~QtMoleculeItem_occurrence()
+  {
+    signOffFromMolecule();
   }
 
Index: src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_visibility.hpp
===================================================================
--- src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_visibility.hpp	(revision 54bdaae692392765ace3b38c8635806888d0c8b5)
+++ src/UIElements/Views/Qt4/MoleculeList/SpecificItems/QtMoleculeItem_visibility.hpp	(revision b9680b48b3c408eb08fa28771d7f329859cf047b)
@@ -29,9 +29,16 @@
       const moleculeId_t _molid,
       emitDirtyState_t _emitDirtyState) :
-        QtMoleculeItem(_molid, channellist_visibility, QtMoleculeItem::DoesNotMove, _emitDirtyState)  {
+        QtMoleculeItem(_molid, channellist_visibility, QtMoleculeItem::DoesNotMove, _emitDirtyState)
+  {
+    signOnToMolecule();
     setFlags(flags() | Qt::ItemIsUserCheckable);
     setCheckState(Qt::Unchecked);
     // cannot call pure virtual function in QtMoleculeItem's cstor
     internal_updateState();
+  }
+
+  ~QtMoleculeItem_visibility()
+  {
+    signOffFromMolecule();
   }
 
