[FEM] fix activation logic of post filters
only activate them when sensible/possible
This commit is contained in:
@@ -1255,7 +1255,19 @@ void CmdFemPostClipFilter::activated(int)
|
|||||||
|
|
||||||
bool CmdFemPostClipFilter::isActive(void)
|
bool CmdFemPostClipFilter::isActive(void)
|
||||||
{
|
{
|
||||||
return hasActiveDocument();
|
// only activate if a result is either a post pipeline, scalar, cut or warp filter or itself
|
||||||
|
if (getSelection().getObjectsOfType<Fem::FemPostPipeline>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostScalarClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostCutFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostWarpVectorFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1281,7 +1293,19 @@ void CmdFemPostCutFilter::activated(int)
|
|||||||
|
|
||||||
bool CmdFemPostCutFilter::isActive(void)
|
bool CmdFemPostCutFilter::isActive(void)
|
||||||
{
|
{
|
||||||
return hasActiveDocument();
|
// only activate if a result is either a post pipeline, scalar, clip or warp filter or itself
|
||||||
|
if (getSelection().getObjectsOfType<Fem::FemPostPipeline>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostScalarClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostWarpVectorFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostCutFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1418,7 +1442,17 @@ void CmdFemPostScalarClipFilter::activated(int)
|
|||||||
|
|
||||||
bool CmdFemPostScalarClipFilter::isActive(void)
|
bool CmdFemPostScalarClipFilter::isActive(void)
|
||||||
{
|
{
|
||||||
return hasActiveDocument();
|
// only activate if a result is either a post pipeline, clip, cut or warp filter
|
||||||
|
if (getSelection().getObjectsOfType<Fem::FemPostPipeline>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostCutFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostWarpVectorFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1444,7 +1478,17 @@ void CmdFemPostWarpVectorFilter::activated(int)
|
|||||||
|
|
||||||
bool CmdFemPostWarpVectorFilter::isActive(void)
|
bool CmdFemPostWarpVectorFilter::isActive(void)
|
||||||
{
|
{
|
||||||
return hasActiveDocument();
|
// only activate if a result is either a post pipeline, scalar, clip or cut filter
|
||||||
|
if (getSelection().getObjectsOfType<Fem::FemPostPipeline>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostScalarClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostCutFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else if (getSelection().getObjectsOfType<Fem::FemPostClipFilter>().size() == 1)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user