- this->_Block( );
- auto categories = this->m_Interface.GetCategories( );
- unsigned int filter_count = 0;
- for( auto cIt = categories.begin( ); cIt != categories.end( ); ++cIt )
- {
- // Create or get category
- QList< QTreeWidgetItem* > cat_items =
- this->m_TreeWidget->findItems(
- cIt->c_str( ), Qt::MatchExactly | Qt::MatchRecursive
- );
- QTreeWidgetItem* cat = NULL;
- if( cat_items.size( ) == 0 )
- {
- cat = new QTreeWidgetItem(
- ( QTreeWidgetItem* )( NULL ), QStringList( cIt->c_str( ) )
- );
- this->m_TreeWidget->addTopLevelItem( cat );
- }
- else
- cat = cat_items[ 0 ];
-
- // Create filters
- auto filters = this->m_Interface.GetFilters( *cIt );
- filter_count += filters.size( );
- for( auto fIt = filters.begin( ); fIt != filters.end( ); ++fIt )
- {
- QList< QTreeWidgetItem* > filter_items =
- this->m_TreeWidget->findItems(
- fIt->c_str( ), Qt::MatchExactly | Qt::MatchRecursive
- );
- auto fiIt = filter_items.begin( );
- auto found_fiIt = filter_items.end( );
- for( ; fiIt != filter_items.end( ); ++fiIt )
- if( ( *fiIt )->parent( ) == cat )
- found_fiIt = fiIt;
-
- // Add filter
- if( found_fiIt == filter_items.end( ) )
- QTreeWidgetItem* filter = new QTreeWidgetItem(
- cat, QStringList( fIt->c_str( ) )
- );
-
- } // rof
-
- } // rof
- this->m_TreeWidget->expandAll( );
- this->_UnBlock( );
-
- if( filter_count == 0 )
+
+ // Associate visual data
+ this->_block( );
+ bool success = this->m_MPR->Add( data->GetVTK< vtkDataSet >( ), name );
+ this->_unBlock( );
+
+ // Show data or show an error
+ if( success )
+ this->m_MPR->Render( );
+ else