std::shared_ptr<GeomAPI_Shape> Model_AttributeSelection::value()
{
std::shared_ptr<GeomAPI_Shape> aResult;
- if (myIsInitialized) {
+ if (myRef.isInitialized()) {
TDF_Label aSelLab = selectionLabel();
if (aSelLab.IsAttribute(kSIMPLE_REF_ID)) { // it is just reference to shape, not sub-shape
ResultPtr aContext = context();
#include <SelectMgr_ListIteratorOfListOfFilter.hxx>
#include <SelectMgr_EntityOwner.hxx>
+#include <Events_Loop.h>
+
#include <QWidget>
ModuleBase_WidgetValidated::ModuleBase_WidgetValidated(QWidget* theParent,
AttributePtr anAttribute = myFeature->attribute(attributeID());
// stores the current values of the widget attribute
+ Events_Loop* aLoop = Events_Loop::loop();
+ // blocks the flush signals to avoid the temporary objects visualization in the viewer
+ // they should not be shown in order to do not lose highlight by erasing them
+ aLoop->activateFlushes(false);
+
aData->blockSendAttributeUpdated(true);
bool isAttributeBlocked = anAttribute->blockSetInitialized(true);
storeAttributeValue();
restoreAttributeValue(aValid);
aData->blockSendAttributeUpdated(false);
anAttribute->blockSetInitialized(isAttributeBlocked);
+ aLoop->activateFlushes(true);
return aValid;
}