+void PartSet_WidgetSketchCreator::setSketchObjectToList(const CompositeFeaturePtr& theCompositeFeature,
+ const AttributePtr& theAttribute)
+{
+ if (!theCompositeFeature.get() || theCompositeFeature->numberOfSubs() != 1)
+ return;
+
+ AttributeSelectionListPtr aBaseObjectsSelectionList =
+ std::dynamic_pointer_cast<ModelAPI_AttributeSelectionList>(theAttribute);
+ if(!aBaseObjectsSelectionList.get() || aBaseObjectsSelectionList->isInitialized()) {
+ return;
+ }
+
+ FeaturePtr aSketchFeature = theCompositeFeature->subFeature(0);
+ if(!aSketchFeature.get() || aSketchFeature->results().empty()) {
+ return;
+ }
+
+ ResultPtr aSketchRes = aSketchFeature->results().front();
+ ResultConstructionPtr aConstruction = std::dynamic_pointer_cast<ModelAPI_ResultConstruction>(aSketchRes);
+ if(!aConstruction.get()) {
+ return;
+ }
+
+ if(aBaseObjectsSelectionList->size() == 0) {
+ aBaseObjectsSelectionList->append(aSketchRes, GeomShapePtr());
+ }
+}
+