summaryrefslogtreecommitdiffstats
path: root/kpovmodeler/pmprismmemento.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kpovmodeler/pmprismmemento.cpp')
-rw-r--r--kpovmodeler/pmprismmemento.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/kpovmodeler/pmprismmemento.cpp b/kpovmodeler/pmprismmemento.cpp
new file mode 100644
index 00000000..0f50449d
--- /dev/null
+++ b/kpovmodeler/pmprismmemento.cpp
@@ -0,0 +1,55 @@
+/*
+**************************************************************************
+ description
+ --------------------
+ copyright : (C) 2002 by Andreas Zehender
+ email : zehender@kde.org
+**************************************************************************
+
+**************************************************************************
+* *
+* This program is free software; you can redistribute it and/or modify *
+* it under the terms of the GNU General Public License as published by *
+* the Free Software Foundation; either version 2 of the License, or *
+* (at your option) any later version. *
+* *
+**************************************************************************/
+
+#include "pmprismmemento.h"
+
+PMPrismMemento::PMPrismMemento( PMObject* originator )
+ : PMMemento( originator )
+{
+ m_bPrismPointsSaved = false;
+}
+
+PMPrismMemento::~PMPrismMemento( )
+{
+}
+
+void PMPrismMemento::setPrismPoints( const QValueList< QValueList<PMVector> >& v )
+{
+ if( !m_bPrismPointsSaved )
+ {
+ // Direct assignment does not work with Qt 2.3.x
+ // The list will be changed later in a graphical
+ // change because QValueList::detach( ) is called
+ // too late!
+ // Copy the list by hand.
+
+ QValueList< QValueList< PMVector > >::ConstIterator sit = v.begin( );
+ for( ; sit != v.end( ); ++sit )
+ {
+ QValueList<PMVector> list;
+ QValueList<PMVector>::ConstIterator it = ( *sit ).begin( );
+ for( ; it != ( *sit ).end( ); ++it )
+ list.append( *it );
+ m_prismPoints.append( list );
+ }
+
+ m_bPrismPointsSaved = true;
+ addChange( PMCData );
+ }
+}
+
+