(#483) Improved how filters and filter collections are grayed out

This commit is contained in:
Magne Sjaastad
2015-11-02 09:30:04 +01:00
parent 9eb5c73842
commit 73489780bf
14 changed files with 257 additions and 44 deletions

View File

@@ -70,6 +70,7 @@ RimEclipseView* RimEclipsePropertyFilterCollection::reservoirView()
void RimEclipsePropertyFilterCollection::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
updateIconState();
uiCapability()->updateConnectedEditors();
updateDisplayModelNotifyManagedViews();
}
@@ -170,5 +171,33 @@ void RimEclipsePropertyFilterCollection::updateIconState()
updateUiIconFromState(activeIcon);
uiCapability()->updateConnectedEditors();
for (size_t i = 0; i < propertyFilters.size(); i++)
{
RimEclipsePropertyFilter* cellFilter = propertyFilters[i];
cellFilter->updateActiveState();
cellFilter->updateIconState();
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimEclipsePropertyFilterCollection::defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName)
{
PdmObject::defineUiTreeOrdering(uiTreeOrdering, uiConfigName);
RimView* rimView = NULL;
this->firstAnchestorOrThisOfType(rimView);
RimViewController* viewController = rimView->viewController();
if (viewController && (viewController->isPropertyFilterOveridden()
|| viewController->isVisibleCellsOveridden()))
{
isActive.uiCapability()->setUiReadOnly(true, uiConfigName);
}
else
{
isActive.uiCapability()->setUiReadOnly(false, uiConfigName);
}
updateIconState();
}