+ // 3. the method should not filter the objects, which are not related to the current operation.
+ // The object is filtered just if it is a current operation feature or this feature result
+ bool isObjectFound = false;
+ ModuleBase_Operation* anOperation = getCurrentOperation();
+ if (anOperation) {
+ FeaturePtr aFeature = anOperation->feature();
+ if (aFeature.get()) {
+ std::list<ResultPtr> aResults = aFeature->results();
+ if (theObject == aFeature)
+ isObjectFound = true;
+ else {
+ std::list<ResultPtr>::const_iterator anIt = aResults.begin(), aLast = aResults.end();
+ for (; anIt != aLast; anIt++) {
+ isObjectFound = *anIt == theObject;
+ }
+ }
+ }
+ }
+ if (!isObjectFound)
+ return aCanDisplay;
+
+ // 4. For created nested feature operation do not display the created feature if