349 cellPtr->setComments(inCell.getComments());
351 std::list < std::string > userData;
352 inCell.getUserData(userData);
353 cellPtr->setUserData(userData);
355 std::vector<StatusSharedPtr> outStatus;
356 inCell.getStatuses(outStatus);
357 for(std::vector<StatusSharedPtr>::iterator it = outStatus.begin();
358 it != outStatus.end(); ++it) {
360 cellPtr->addStatus(clonedStatus);
363 cellPtr->setIsExtern(inCell.getIsExtern());
364 cellPtr->setName(inCell.getName());
365 cellPtr->setParent(inCell.getParent());
367 std::map<std::string, PropertySharedPtr> outProperties;
368 std::vector<PropertySharedPtr> properties;
369 inCell.getProperties(outProperties);
370 for(std::map<std::string, PropertySharedPtr>::iterator it = outProperties.begin();
371 it != outProperties.end(); ++it) {
373 properties.push_back(clonedProperty);
375 for(std::vector<PropertySharedPtr>::iterator it = properties.begin();
376 it != properties.end(); ++it) {
377 cellPtr->setProperty((*it)->getName(), *it);
380 cellPtr->setType(inCell.getType());
381 cellPtr->setOriginalName(inCell.getOriginalName());
382 std::vector<ViewSharedPtr> outViews;
383 inCell.getViews(outViews);
384 std::vector<ViewSharedPtr>::iterator viewIt = outViews.begin();
385 for(; viewIt != outViews.end(); ++viewIt) {
387 cellPtr->addView(newView);
391 e.setCurrentLocation(__FUNCTION__, __FILE__, __LINE__);
boost::shared_ptr< _Tp > clone(const boost::shared_ptr< _Tp > &inPointer, const ObjectFactorySharedPtr &inFactory)
ObjectFactorySharedPtr mFactory
boost::shared_ptr< View > ViewSharedPtr
boost::shared_ptr< Cell > CellSharedPtr
boost::shared_ptr< Property > PropertySharedPtr
boost::shared_ptr< Status > StatusSharedPtr