/[svn]/libgig/trunk/src/Serialization.cpp
ViewVC logotype

Diff of /libgig/trunk/src/Serialization.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3150 by schoenebeck, Fri May 5 18:42:06 2017 UTC revision 3153 by schoenebeck, Sat May 6 13:43:43 2017 UTC
# Line 236  namespace Serialization { Line 236  namespace Serialization {
236          return Member();          return Member();
237      }      }
238    
239        Member Object::memberByUID(const UID& uid) const {
240            if (!uid) return Member();
241            for (int i = 0; i < m_members.size(); ++i)
242                if (m_members[i].uid() == uid)
243                    return m_members[i];
244            return Member();
245        }
246    
247      void Object::remove(const Member& member) {      void Object::remove(const Member& member) {
248          for (int i = 0; i < m_members.size(); ++i) {          for (int i = 0; i < m_members.size(); ++i) {
249              if (m_members[i] == member) {              if (m_members[i] == member) {
# Line 745  namespace Serialization { Line 753  namespace Serialization {
753          m_isModified = false;          m_isModified = false;
754      }      }
755    
756        void Archive::removeMember(Object& parent, const Member& member) {
757            parent.remove(member);
758            m_isModified = true;
759        }
760    
761      void Archive::remove(const Object& obj) {      void Archive::remove(const Object& obj) {
762            //FIXME: Should traverse from root object and remove all members associated with this object
763          if (!obj.uid()) return;          if (!obj.uid()) return;
764          m_allObjects.erase(obj.uid());          m_allObjects.erase(obj.uid());
765          m_isModified = true;          m_isModified = true;

Legend:
Removed from v.3150  
changed lines
  Added in v.3153

  ViewVC Help
Powered by ViewVC