PropertySheet* PropertySheet::clone() { PropertySheet* pSheet = new PropertySheet(); Properties::iterator iter = m_mProperties.begin(); while (iter != m_mProperties.end()) { pSheet->addProperty(iter->second->clone()); iter++; } return pSheet; }