- activateShapeSelection(false);
- activateFilters(myWorkshop, false);
-}
-
-//********************************************************************
-void ModuleBase_WidgetMultiSelector::activateCustom()
-{
- ModuleBase_IViewer* aViewer = myWorkshop->viewer();
- connect(myWorkshop, SIGNAL(selectionChanged()),
- this, SLOT(onSelectionChanged()),
- Qt::UniqueConnection);
-
- activateShapeSelection(true);
- QList<ModuleBase_ViewerPrs> aSelected;
- // Restore selection in the viewer by the attribute selection list
- if(myFeature) {
- DataPtr aData = myFeature->data();
- AttributeSelectionListPtr aListAttr =
- std::dynamic_pointer_cast<ModelAPI_AttributeSelectionList>(aData->attribute(attributeID()));
- if (aListAttr) {
- for (int i = 0; i < aListAttr->size(); i++) {
- AttributeSelectionPtr anAttr = aListAttr->value(i);
- ResultPtr anObject = anAttr->context();
- if (anObject.get()) {
- TopoDS_Shape aShape;
- std::shared_ptr<GeomAPI_Shape> aShapePtr = anAttr->value();
- if (aShapePtr.get()) {
- aShape = aShapePtr->impl<TopoDS_Shape>();
- }
- aSelected.append(ModuleBase_ViewerPrs(anObject, aShape, NULL));
- }
- }
- }
- }
- myWorkshop->setSelected(aSelected);
-
- activateFilters(myWorkshop, true);
-}
-
-//********************************************************************
-void ModuleBase_WidgetMultiSelector::deactivate()
-{
- disconnect(myWorkshop, SIGNAL(selectionChanged()), this, SLOT(onSelectionChanged()));
- activateShapeSelection(false);
- activateFilters(myWorkshop, false);