Improve Quick Access

* Add css to checked menu items
* Improve icons
* Use group name for field if found
* Add quick access fields for IJK Filter
* Add tree selection for selection of multiple fields
This commit is contained in:
Magne Sjaastad
2024-11-07 09:36:24 +01:00
committed by GitHub
parent 67e6df28b5
commit 94d6f81b0f
9 changed files with 243 additions and 11 deletions

View File

@@ -20,6 +20,7 @@
#include "QuickAccess/RimFieldQuickAccessInterface.h"
#include "QuickAccess/RimFieldReference.h"
#include "QuickAccess/RimFieldSelection.h"
#include "QuickAccess/RimQuickAccessCollection.h"
#include "Riu3DMainWindowTools.h"
@@ -51,15 +52,26 @@ void RicAddFieldToQuickAccessFeature::onActionTriggered( bool isChecked )
auto firstObject = objects.front();
if ( !firstObject ) return;
RimFieldReference fieldRef;
fieldRef.setObject( firstObject );
RimFieldSelection fieldSelection;
fieldSelection.setObject( firstObject );
fieldSelection.selectAllFields();
caf::PdmUiPropertyViewDialog propertyDialog( Riu3DMainWindowTools::mainWindowWidget(), &fieldRef, "Select Field for Quick Access", "" );
caf::PdmUiPropertyViewDialog propertyDialog( Riu3DMainWindowTools::mainWindowWidget(), &fieldSelection, "Select Field for Quick Access", "" );
propertyDialog.setWindowIcon( QIcon( ":/pin.svg" ) );
propertyDialog.resize( QSize( 400, 500 ) );
if ( propertyDialog.exec() == QDialog::Accepted )
{
RimQuickAccessCollection::instance()->addQuickAccessField( fieldRef );
auto selectedFields = fieldSelection.fields();
for ( auto field : selectedFields )
{
RimFieldReference fieldRef;
fieldRef.setObject( firstObject );
fieldRef.setField( field );
RimQuickAccessCollection::instance()->addQuickAccessField( fieldRef );
}
RimQuickAccessCollection::instance()->updateAllRequiredEditors();
}
}