#include <QMouseEvent>
#include <QApplication>
+#include <QCursor>
//#define DEBUG_DO_NOT_BY_ENTER
#endif
if (canChangeCursor(getCurrentOperation())) {
+ QCursor* aCurrentCursor = QApplication::overrideCursor();
+ if (!aCurrentCursor || aCurrentCursor->shape() != Qt::CrossCursor) {
+ QApplication::setOverrideCursor(QCursor(Qt::CrossCursor));
#ifdef DEBUG_CURSOR
- qDebug("onEnterViewPort() : Qt::CrossCursor");
+ qDebug("onEnterViewPort() : Qt::CrossCursor");
#endif
- QApplication::setOverrideCursor(QCursor(Qt::CrossCursor));
+ }
}
if (!isNestedCreateOperation(getCurrentOperation()))
void PartSet_SketcherMgr::startNestedSketch(ModuleBase_Operation* theOperation)
{
if (canChangeCursor(theOperation) && myIsMouseOverWindow) {
- QApplication::setOverrideCursor(QCursor(Qt::CrossCursor));
+ QCursor* aCurrentCursor = QApplication::overrideCursor();
+ if (!aCurrentCursor || aCurrentCursor->shape() != Qt::CrossCursor) {
+ QApplication::setOverrideCursor(QCursor(Qt::CrossCursor));
#ifdef DEBUG_CURSOR
- qDebug("startNestedSketch() : Qt::CrossCursor");
+ qDebug("startNestedSketch() : Qt::CrossCursor");
#endif
+ }
}
}
#include <ModelAPI_AttributeSelection.h>
#include <ModelAPI_AttributeSelectionList.h>
#include <ModelAPI_Validator.h>
+#include <ModelAPI_Events.h>
#include <SketchPlugin_SketchEntity.h>
#include <FeaturesPlugin_CompositeBoolean.h>
#include <ModuleBase_OperationFeature.h>
#include <Config_WidgetAPI.h>
+#include <Events_Loop.h>
+
#include <QLabel>
#include <QLineEdit>
#include <QFormLayout>
}
}
}
+ else {
+ // this is a workarount to display the feature results in the operation selection mode
+ // if this is absent, sketch point/line local selection is available on extrusion cut result
+ static Events_ID anUpdateEvent = Events_Loop::eventByName(EVENT_OBJECT_UPDATED);
+ ModelAPI_EventCreator::get()->sendUpdated(feature(), anUpdateEvent);
+ updateObject(feature());
+ }
}
}