MCLFCustomGrouper Class Reference

class MCLFCustomGrouper
Custom grouper interface of Content Listing Framework. With this interface, client can add own custom grouper to its List Model. Custom grouper is used for grouping list model items. For example, List Model of music files can be grouped by genre or artist name by using this interface. Use ContentListingFactory to create items for new groups ( MCLFModifiableItem ). Example:
        // This grouper will overwrite the source list and add three items to model.
  void CMyGrouper::GroupItemsL( const TArray<MCLFItem*>& aSourceList,
                                RPointerArray<MCLFItem>& aGroupedList )
      {
      _LIT( KTest, "test" );
      MCLFModifiableItem* item = ContentListingFactory::NewModifiableItemLC();
      item->AddFieldL( ECLFFieldIdName, KTest );
      aGroupedList.AppendL( item );
      CleanupStack::Pop(); // item

      _LIT( KTest1, "test1" );
      item = ContentListingFactory::NewModifiableItemLC();
      item->AddFieldL( ECLFFieldIdName, KTest1 );
      aGroupedList.AppendL( item );
      CleanupStack::Pop(); // item

      _LIT( KTest2, "test2" );
      item = ContentListingFactory::NewModifiableItemLC();
      item->AddFieldL( ECLFFieldIdName, KTest2 );
      aGroupedList.AppendL( item );
      CleanupStack::Pop(); // item
      }
       

Custom grouper is activated and removed by calling method MCLFItemListModel::SetCustomGrouper

ContentListingFramework.lib
Since
S60 3.1
Public Member Functions
void GroupItemsL (const TArray < MCLFItem * > &, RPointerArray < MCLFItem > &)
Protected Member Functions
~MCLFCustomGrouper ()
Private Member Functions
MCLFCustomGrouperExt * Extension ()

Constructor & Destructor Documentation

~MCLFCustomGrouper()

~MCLFCustomGrouper ( ) [protected, inline, virtual]

Destructor.

Member Functions Documentation

Extension()

MCLFCustomGrouperExt * Extension ( ) [private, inline, virtual]

This member is internal and not intended for use.

GroupItemsL(const TArray< MCLFItem * > &, RPointerArray< MCLFItem > &)

void GroupItemsL ( const TArray < MCLFItem * > & aSourceList,
RPointerArray < MCLFItem > & aGroupedList
) [pure virtual]
Abstract method for grouping Content Listing Framework items of list models. This method is called when the grouping process is executed by refreshing the model.
Since
S60 3.1

Parameters

const TArray < MCLFItem * > & aSourceList Source list. Contains all items that are in the list model when the grouping process starts.
RPointerArray < MCLFItem > & aGroupedList Grouped/destination list. While grouping, each group should be added to this list. The list model will contain only these items when the grouping process is finished.