diff --git a/VistaCoreLibs/VistaAspects/VistaObserver.cpp b/VistaCoreLibs/VistaAspects/VistaObserver.cpp
index 6446208690cecf916334f9980ce933289d65fd8a..760baf8121b3124267f22aa28ee7abd145a9b610 100644
--- a/VistaCoreLibs/VistaAspects/VistaObserver.cpp
+++ b/VistaCoreLibs/VistaAspects/VistaObserver.cpp
@@ -34,28 +34,20 @@
 /* CONSTRUCTORS / DESTRUCTOR                                                  */
 /*============================================================================*/
 
-
-IVistaObserver::IVistaObserver(IVistaObserver &)
-{}
-
 IVistaObserver::IVistaObserver()
 : m_bObserverEnabled(true)
-{}
+{ }
 
 IVistaObserver::~IVistaObserver()
 {
 	// copy vector of observables, because the original (member) version
 	// is altered during the ReleaseObserveable call
-	std::vector<IVistaObserveable *> vecObs = m_vecObserveables;
+	std::vector< IVistaObserveable* > vecObs = m_vecObserveables;
 
-	std::vector<IVistaObserveable *>::iterator it;
-	for (it = vecObs.begin(); it != vecObs.end(); ++it)
+	for( IVistaObserveable* pObs : vecObs )
 	{
-		ReleaseObserveable(*it, IVistaObserveable::TICKET_NONE);
+		ReleaseObserveable( pObs, IVistaObserveable::TICKET_NONE );
 	}
-
-	m_vecObserveables.clear();
-
 }
 
 /*============================================================================*/
@@ -67,77 +59,73 @@ bool IVistaObserver::GetIsObserverEnabled() const
 	return m_bObserverEnabled;
 }
 
-void IVistaObserver::SetIsObserverEnabled(bool bEnabled)
+void IVistaObserver::SetIsObserverEnabled( bool bEnabled )
 {
 	m_bObserverEnabled = bEnabled;
 }
 
-void IVistaObserver::UpdateRequest(IVistaObserveable *pObserveable, int msg, int nTicket)
+void IVistaObserver::UpdateRequest( IVistaObserveable* pObserveable,
+									int msg,
+									int nTicket )
 {
-	if(m_bObserverEnabled)
-		ObserverUpdate(pObserveable, msg, nTicket);
+	if( m_bObserverEnabled )
+	{
+		ObserverUpdate( pObserveable, msg, nTicket );
+	}
 }
 
-bool IVistaObserver::ObserveableDeleteRequest(
-	IVistaObserveable* pObserveable, 
-	int nTicket /*= IVistaObserveable::TICKET_NONE */
-	)
+bool IVistaObserver::ObserveableDeleteRequest( IVistaObserveable* pObserveable,
+											   int nTicket )
 {
 	return true;
 }
 
-void IVistaObserver::ObserveableDelete(
-	IVistaObserveable* pObserveable, 
-	int nTicket /*= IVistaObserveable::TICKET_NONE */
-	)
+void IVistaObserver::ObserveableDelete( IVistaObserveable* pObserveable, int nTicket )
 {
-	// just delete pObserveable from list
-
-	std::vector<IVistaObserveable*>::iterator it =
-		std::find(m_vecObserveables.begin(), m_vecObserveables.end(), pObserveable);
+	ObserveablesVec::iterator it = std::find( m_vecObserveables.begin(),
+											  m_vecObserveables.end(),
+											  pObserveable );
 
-	if (it != m_vecObserveables.end())
+	if( it != m_vecObserveables.end() )
 	{
-		m_vecObserveables.erase(it);
+		m_vecObserveables.erase( it );
 	}
 }
 
-void IVistaObserver::ReleaseObserveable(
-	IVistaObserveable* pObserveable, 
-	int nTicket /*= IVistaObserveable::TICKET_NONE */
-	)
+void IVistaObserver::ReleaseObserveable( IVistaObserveable* pObserveable, int nTicket )
 {
-	if (Observes(pObserveable))
+	if( Observes( pObserveable ) )
 	{
-		pObserveable->DetachObserver(this);
+		pObserveable->DetachObserver( this );
 
-		std::vector<IVistaObserveable*>::iterator it =
-			std::find(m_vecObserveables.begin(), m_vecObserveables.end(), pObserveable);
+		ObserveablesVec::iterator it = std::find( m_vecObserveables.begin(),
+												  m_vecObserveables.end(),
+												  pObserveable );
 
-		if (it != m_vecObserveables.end())
+		if( it != m_vecObserveables.end() )
 		{
-			m_vecObserveables.erase(it);
+			m_vecObserveables.erase( it );
 		}
 	}
 }
 
-bool IVistaObserver::Observes(IVistaObserveable* pObserveable)
+bool IVistaObserver::Observes( IVistaObserveable* pObserveable )
 {
-	std::vector<IVistaObserveable *>::iterator it =
-		std::find(m_vecObserveables.begin(), m_vecObserveables.end(), pObserveable);
+	ObserveablesVec::iterator it = std::find( m_vecObserveables.begin(),
+											  m_vecObserveables.end(),
+											  pObserveable );
 
-	return (it != m_vecObserveables.end());
+	return ( it != m_vecObserveables.end() );
 }
 
-void IVistaObserver::Observe(
-	IVistaObserveable* pObserveable, 
-	int nTicket /*= IVistaObserveable::TICKET_NONE */
-	)
+void IVistaObserver::Observe( IVistaObserveable* pObserveable, int nTicket )
 {
-	if (!Observes(pObserveable))
+	if( !Observes( pObserveable ) )
 	{
-		if (pObserveable->AttachObserver(this, nTicket))
-			m_vecObserveables.push_back(pObserveable);
+		if( pObserveable->AttachObserver( this, nTicket ) )
+		{
+			m_vecObserveables.push_back( pObserveable );
+		}
 	}
 }
 
@@ -151,14 +139,13 @@ VistaSimpleObserver::VistaSimpleObserver( ObserverUpdateFunc fnObserverUpdate )
 { }
 
 void VistaSimpleObserver::ObserverUpdate( IVistaObserveable* pObserveable,
-										   int nMsg,
-										   int nTicket )
+										  int nMsg,
+										  int nTicket )
 {
 	m_fnObserverUpdate( pObserveable, nMsg, nTicket );
 }
 
 
-
 /*============================================================================*/
 /* LOCAL VARS AND FUNCS                                                       */
 /*============================================================================*/
diff --git a/VistaCoreLibs/VistaAspects/VistaObserver.h b/VistaCoreLibs/VistaAspects/VistaObserver.h
index 14174cf8eba58cf3202819da506a889e5d4b2bd2..f3ffa0bab1691fe53483dd8beb35ca102dfe1826 100644
--- a/VistaCoreLibs/VistaAspects/VistaObserver.h
+++ b/VistaCoreLibs/VistaAspects/VistaObserver.h
@@ -62,8 +62,7 @@ class VISTAASPECTSAPI IVistaObserver
 {
 public:
 	virtual ~IVistaObserver();
-
-
+	
 	/**
 	 * An observeable is about to be deleted, this can be forbidden by returning
 	 * false here.
@@ -78,8 +77,7 @@ public:
 	 * @return true iff pObserveable can be deleted
 	 */
 	virtual bool ObserveableDeleteRequest( IVistaObserveable* pObserveable,
-										int nTicket = IVistaObserveable::TICKET_NONE );
-
+										   int nTicket = IVistaObserveable::TICKET_NONE );
 
 	/**
 	 * This is sent to the observer before the observeable is deleted. Note that this
@@ -95,7 +93,7 @@ public:
 	 * @param pObserveable the observeable to be deleted
 	 */
 	virtual void ObserveableDelete( IVistaObserveable* pObserveable,
-										int nTicket = IVistaObserveable::TICKET_NONE );
+									int nTicket = IVistaObserveable::TICKET_NONE );
 
 	/**
 	 * This message is sent when pObserveable shall be released and not be observed anymore.
@@ -105,7 +103,7 @@ public:
 	 * @param pObserveable the observeable to be released.
 	 */
 	virtual void ReleaseObserveable( IVistaObserveable* pObserveable,
-										int nTicket = IVistaObserveable::TICKET_NONE );
+									 int nTicket = IVistaObserveable::TICKET_NONE );
 
 
 	/**
@@ -117,8 +115,8 @@ public:
 	 * is observed.
 	 * @param pObserveable the observeable that changed its state.
 	 */
-	virtual void ObserverUpdate(IVistaObserveable* pObserveable,
-									int nMsg, int nTicket) = 0;
+	virtual void ObserverUpdate( IVistaObserveable* pObserveable,
+								 int nMsg, int nTicket ) = 0;
 
 	/**
 	 * This method can be used to query whether pObserveable is observed by this observer or not.
@@ -134,32 +132,27 @@ public:
 	 * IsObserved(pObserveable) must return true after a call to this
 	 * @param pObserveable the observeable to be observed
 	 */
-	virtual void Observe( IVistaObserveable* pObserveable, 
-										int nTicket = IVistaObserveable::TICKET_NONE );
+	virtual void Observe( IVistaObserveable* pObserveable,
+						  int nTicket = IVistaObserveable::TICKET_NONE );
 
 
 	void UpdateRequest( IVistaObserveable* pObserveable, int nMsg, int nTicket );
 
 
 	bool GetIsObserverEnabled() const;
-	virtual void SetIsObserverEnabled(bool bEnabled);
+	virtual void SetIsObserverEnabled( bool bEnabled );
+
 protected:
 	IVistaObserver();
 
-	// list of objects observed by this observer
-	// Note: this is implemented as a vector (even though we have to perform
-	// operations like deleting arbitrary elements), as this is nevertheless
-	// way faster than on an std::list.
-	std::vector<IVistaObserveable *> m_vecObserveables;
+	typedef std::vector< IVistaObserveable* > ObserveablesVec;
+	ObserveablesVec m_vecObserveables;
 
 private:
-	/**
-	 * Copy-constructor. We prevent copying.
-	 */
-	IVistaObserver(IVistaObserver &);
+	IVistaObserver( const IVistaObserver& ) = delete;
+	IVistaObserver& operator=( const IVistaObserver& ) = delete;
 
 	bool m_bObserverEnabled;
-
 };
 
 /**
@@ -178,7 +171,7 @@ public:
 	VistaSimpleObserver( ObserverUpdateFunc fnObserverUpdate );
 	~VistaSimpleObserver() override = default;
 
-	void ObserverUpdate( IVistaObserveable* pObserveable, int nMsg, int nTicket );
+	void ObserverUpdate( IVistaObserveable* pObserveable, int nMsg, int nTicket ) override;
 
 private:
 	ObserverUpdateFunc m_fnObserverUpdate;