MCPcopy Create free account
hub / github.com/SpartanJ/eepp / buildMapping

Method buildMapping

src/eepp/ui/models/sortingproxymodel.cpp:76–98  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

74}
75
76SortingProxyModel::InternalMapIterator
77SortingProxyModel::buildMapping( const ModelIndex& sourceParent ) {
78 auto it = mMappings.find( sourceParent );
79 if ( it != mMappings.end() )
80 return it;
81
82 auto mapping = std::make_shared<Mapping>();
83
84 mapping->sourceParent = sourceParent;
85
86 int rowCount = source().rowCount( sourceParent );
87 mapping->sourceRows.resize( rowCount );
88 mapping->proxyRows.resize( rowCount );
89
90 sortMapping( *mapping, mKeyColumn, mSortOrder );
91
92 if ( sourceParent.isValid() ) {
93 auto sourceGrandParent = sourceParent.parent();
94 buildMapping( sourceGrandParent );
95 }
96 mMappings.insert( { sourceParent, mapping } );
97 return mMappings.find( sourceParent );
98}
99
100ModelIndex SortingProxyModel::mapToProxy( const ModelIndex& sourceIndex ) const {
101 if ( !sourceIndex.isValid() )

Callers 2

mapToProxyMethod · 0.80
indexMethod · 0.80

Calls 7

findMethod · 0.45
endMethod · 0.45
rowCountMethod · 0.45
resizeMethod · 0.45
isValidMethod · 0.45
parentMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected