#include "ModuleBase_Operation.h"
#include "ModuleBase_IWorkshop.h"
#include "ModuleBase_IModule.h"
+#include "ModuleBase_OperationDescription.h"
#include "ModelAPI_CompositeFeature.h"
#include "ModelAPI_Session.h"
{
myIsApplyEnabled = theEnabled;
emit validationStateChanged(theEnabled);
+}
- bool aParentValid = true;//isParentOperationValid();
- emit nestedStateChanged(aParentValid);
+void XGUI_OperationMgr::updateApplyOfOperations(ModuleBase_Operation* theOperation)
+{
+ if (theOperation)
+ emit nestedStateChanged(theOperation->getDescription()->operationId().toStdString(),
+ theOperation->isValid());
+ else {
+ foreach(ModuleBase_Operation* anOperation, myOperations) {
+ emit nestedStateChanged(anOperation->getDescription()->operationId().toStdString(),
+ anOperation->isValid());
+ }
+ }
}
bool XGUI_OperationMgr::isApplyEnabled() const
void XGUI_OperationMgr::onOperationStarted()
{
ModuleBase_Operation* aSenderOperation = dynamic_cast<ModuleBase_Operation*>(sender());
+ updateApplyOfOperations(aSenderOperation);
emit operationStarted(aSenderOperation);
}
void XGUI_OperationMgr::onOperationCommitted()
{
+ updateApplyOfOperations();
+
ModuleBase_Operation* aSenderOperation = dynamic_cast<ModuleBase_Operation*>(sender());
emit operationCommitted(aSenderOperation);
}