www.pudn.com > listbox(symbian).rar > aknexlistbaseview.cpp


/* 
* ============================================================================= 
*  Name     : CAknExListBaseView 
*  Part of  : AknExList 
*  Copyright (c) 2003 Nokia. All rights reserved. 
* ============================================================================= 
*/ 
 
// INCLUDE FILES 
#include  
#include  
#include  
#include  
#include  
#include "AknExList.hrh" 
#include "AknExListAppUi.h" 
#include "AknExListBaseView.h" 
#include "AknExListColumnView.h" 
#include "AknExListFormView.h" 
#include "AknExListSettingView.h" 
#include "AknExListMarkView.h" 
#include "AknExListFlagTestView.h" 
 
// CONSTANTS 
const TInt KAknExListTitleBufLength(256); // for lenght. 
 
// ================= MEMBER FUNCTIONS ========================================= 
 
// ---------------------------------------------------------------------------- 
// CAknExListBaseView::CAknExListBaseView() 
// Default constructor. 
// ---------------------------------------------------------------------------- 
// 
CAknExListBaseView::CAknExListBaseView() 
    { 
    } 
 
// ---------------------------------------------------------------------------- 
// CAknExListBaseView::~CAknExListBaseView() 
// Destructor. 
// ---------------------------------------------------------------------------- 
// 
CAknExListBaseView::~CAknExListBaseView() 
    { 
    if ( iNaviPane ) 
        { 
        if ( iNaviPane->Top() == iDecoratedTabGroup ) 
            { 
            iNaviPane->Pop( iDecoratedTabGroup ); 
            delete iDecoratedTabGroup; 
            } 
        } 
    } 
 
// ---------------------------------------------------------------------------- 
// CAknExListBaseView::TabGroup() 
// Returns pointer to tab group object. 
// ---------------------------------------------------------------------------- 
// 
CAknTabGroup* CAknExListBaseView::TabGroup() 
    { 
    return iTabGroup; 
    } 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::SwitchDisplayOutlineL( const TInt ) 
// Switches screen by outline. 
// ---------------------------------------------------------------------------- 
// 
void CAknExListBaseView::SwitchDisplayOutlineL( const TInt aOutlineId ) 
    { 
    TUid viewId( KAknExListColumnViewId ); 
 
    // Sets view id used next. 
    switch ( aOutlineId ) 
        { 
        // Column List 
        case EAknExListCmdEmptyOutline: 
        case EAknExListCmdOutline01: 
        case EAknExListCmdOutline02: 
        case EAknExListCmdOutline03: 
        case EAknExListCmdOutline04: 
        case EAknExListCmdOutline05: 
        case EAknExListCmdOutline07: 
        case EAknExListCmdOutline08: 
        case EAknExListCmdOutline09: 
        case EAknExListCmdOutline10: 
        case EAknExListCmdOutline11: 
        case EAknExListCmdOutline12: 
        case EAknExListCmdOutline13: 
        case EAknExListCmdOutline14: 
        case EAknExListCmdOutline15: 
        case EAknExListCmdOutline26: 
        case EAknExListCmdOutline27: 
        case EAknExListCmdOutline30: 
        case EAknExListCmdOutline30T1: 
        case EAknExListCmdOutline30T2: 
        case EAknExListCmdOutline31: 
        case EAknExListCmdOutline33: 
        case EAknExListCmdOutline41: 
        case EAknExListCmdOutline41T1: 
        case EAknExListCmdOutline41T2: 
        case EAknExListCmdOutline43: 
        case EAknExListCmdOutline44: 
        case EAknExListCmdOutline45: 
        case EAknExListCmdOutline46: 
        case EAknExListCmdOutline47: 
        case EAknExListCmdOutline48: 
        case EAknExListCmdOutline49: 
        case EAknExListCmdOutline50: 
        case EAknExListCmdOutline51: 
        case EAknExListCmdOutline52: 
        case EAknExListCmdOutline60: 
        case EAknExListCmdOutline61: 
        case EAknExListCmdOutline62: 
        case EAknExListCmdOutline63: 
        case EAknExListCmdOutline64: 
        //case EAknExListCmdOutline65: 
        case EAknExListCmdOutline66: 
        case EAknExListCmdOutline69: 
        case EAknExListCmdOutline70: 
        case EAknExListCmdOutline77: 
        case EAknExListCmdOutline78: 
        case EAknExListCmdOutline80: 
        case EAknExListCmdOutline80Sub: 
            viewId = KAknExListColumnViewId; 
            break; 
        // Formatted List 
        case EAknExListCmdOutline16: 
        case EAknExListCmdOutline17: 
        case EAknExListCmdOutline18: 
        case EAknExListCmdOutline19: 
        case EAknExListCmdOutline20: 
        case EAknExListCmdOutline21: 
        case EAknExListCmdOutline41T3: 
        case EAknExListCmdOutline53: 
        case EAknExListCmdOutline54: 
        case EAknExListCmdOutline55: 
        case EAknExListCmdOutline57: 
        case EAknExListCmdOutline58: 
        case EAknExListCmdOutline67: 
        case EAknExListCmdOutline68: 
        case EAknExListCmdOutline71: 
            viewId = KAknExListFormViewId; 
            break; 
        // Setting List 
        case EAknExListCmdOutline22: 
        case EAknExListCmdOutline23: 
        case EAknExListCmdOutline59: 
        case EAknExListCmdOutline74: 
        case EAknExListCmdOutline75: 
        case EAknExListCmdOutline76: 
        case EAknExListCmdOutline79: 
            viewId = KAknExListSettingViewId; 
            break; 
        case EAknExListCmdOutline32: 
        case EAknExListCmdOutline81: 
        case EAknExListCmdOutline82: 
        case EAknExListCmdOutline83: 
        case EAknExListCmdOutline87: 
            viewId = KAknExListMarkViewId; 
            break; 
        case EAknExListCmdOutline06: 
        case EAknExListCmdOutline88: 
        case EAknExListCmdOutline90: 
        case EAknExListCmdOutline91: 
        case EAknExListCmdOutline93: 
        case EAknExListCmdOutline95: 
        case EAknExListCmdOutline97: 
        case EAknExListCmdOutline99: 
        case EAknExListCmdOutline102: 
            viewId = KAknExListFlagTestViewId; 
            break; 
        case EAknExListCmdOutline85: 
            viewId = KAknExListSetPageViewId; 
            break;     
        default: 
            break; 
        } 
 
    SetNavigationPaneL(); // Sets navigation pane. 
 
    if ( viewId != Id() ) // Should view be switched? 
        { 
        AppUi()->ActivateLocalViewL( viewId ); 
        } 
    else 
        { 
        if ( iDecoratedTabGroup ) 
            { 
            DisplayListBoxL( iTabGroup->TabIdFromIndex( iTabGroup-> 
                                                        ActiveTabIndex() ) ); 
            } 
        else 
            { 
            SetTitlePaneL( aOutlineId ); 
            DisplayListBoxL( aOutlineId ); 
            } 
        } 
    } 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::DisplayNextOutlineL() 
// Sets ID of feature to displayed next. 
// ---------------------------------------------------------------------------- 
// 
void CAknExListBaseView::DisplayNextOutlineL() 
    { 
    TInt outlineId( STATIC_CAST( CAknExListAppUi*, AppUi() )->OutlineId() ); 
 
    DeleteTabGroup(); // Deletes tab group. 
 
    switch ( outlineId ) // Current outline is... 
        { 
        case EAknExListCmdEmptyOutline: // Start screen. 
            // Next : OUTLINE1 screen. 
            outlineId = EAknExListCmdOutline01; 
            break; 
        case EAknExListCmdOutline01: // OUTLINE1 screen. 
            // Next : OUTLINE2 screen. 
            outlineId = EAknExListCmdOutline02; 
            break; 
        case EAknExListCmdOutline02: // OUTLINE2 screen. 
            // Next : OUTLINE3 screen. 
            outlineId = EAknExListCmdOutline03; 
            break; 
        case EAknExListCmdOutline03: // OUTLINE3 screen. 
            // Next : OUTLINE4 screen. 
            outlineId = EAknExListCmdOutline04; 
            break; 
        case EAknExListCmdOutline04: // OUTLINE4 screen. 
            // Next : OUTLINE5 screen. 
            outlineId = EAknExListCmdOutline05; 
            break; 
        case EAknExListCmdOutline05: // OUTLINE5 screen. 
            // Next : OUTLINE6 screen. 
            outlineId = EAknExListCmdOutline06; 
            break; 
        case EAknExListCmdOutline06: // OUTLINE6 screen. 
            // Next : OUTLINE7 screen. 
            outlineId = EAknExListCmdOutline07; 
            break; 
        case EAknExListCmdOutline07: // OUTLINE7 screen. 
            // Next : OUTLINE8 screen. 
            outlineId = EAknExListCmdOutline08; 
            break; 
        case EAknExListCmdOutline08: // OUTLINE8 screen. 
            // Next : OUTLINE9 screen. 
            outlineId = EAknExListCmdOutline09; 
            break; 
        case EAknExListCmdOutline09: // OUTLINE9 screen. 
            // Next : OUTLINE10 screen. 
            outlineId = EAknExListCmdOutline10; 
            break; 
        case EAknExListCmdOutline10: // OUTLINE10 screen. 
            // Next : OUTLINE11 screen. 
            outlineId = EAknExListCmdOutline11; 
            break; 
        case EAknExListCmdOutline11: // OUTLINE11 screen. 
            // Next : OUTLINE12 screen. 
            outlineId = EAknExListCmdOutline12; 
            break; 
        case EAknExListCmdOutline12: // OUTLINE12 screen. 
            // Next : OUTLINE13 screen. 
            outlineId = EAknExListCmdOutline13; 
            break; 
        case EAknExListCmdOutline13: // OUTLINE13 screen. 
            // Next : OUTLINE14 screen. 
            outlineId = EAknExListCmdOutline14; 
            break; 
        case EAknExListCmdOutline14: // OUTLINE14 screen. 
            // Next : OUTLINE15 screen. 
            outlineId = EAknExListCmdOutline15; 
            break; 
        case EAknExListCmdOutline15: // OUTLINE15 screen. 
            // Next : OUTLINE16 screen. 
            outlineId = EAknExListCmdOutline16; 
            break; 
        case EAknExListCmdOutline16: // OUTLINE16 screen. 
            // Next : OUTLINE17 screen. 
            outlineId = EAknExListCmdOutline17; 
            break; 
        case EAknExListCmdOutline17: // OUTLINE17 screen. 
            // Next : OUTLINE18 screen. 
            outlineId = EAknExListCmdOutline18; 
            break; 
        case EAknExListCmdOutline18: // OUTLINE18 screen. 
            // Next : OUTLINE19 screen. 
            outlineId = EAknExListCmdOutline19; 
            break; 
        case EAknExListCmdOutline19: // OUTLINE19 screen. 
            // Next : OUTLINE20 screen. 
            outlineId = EAknExListCmdOutline20; 
            break; 
        case EAknExListCmdOutline20: // OUTLINE20 screen. 
            // Next : OUTLINE21 screen. 
            outlineId = EAknExListCmdOutline21; 
            break; 
        case EAknExListCmdOutline21: // OUTLINE21 screen. 
            // Next : OUTLINE22 screen. 
            outlineId = EAknExListCmdOutline22; 
            break; 
        case EAknExListCmdOutline22: // OUTLINE22 screen. 
            // Next : OUTLINE23 screen. 
            outlineId = EAknExListCmdOutline23; 
            break; 
        case EAknExListCmdOutline23: // OUTLINE23 screen. 
            // Next : OUTLINE26 screen. 
            outlineId = EAknExListCmdOutline26; // tentative 
            break; 
        case EAknExListCmdOutline26: // OUTLINE26 screen. 
            // Next : OUTLINE27 screen. 
            outlineId = EAknExListCmdOutline27; 
            break; 
        case EAknExListCmdOutline27: // OUTLINE27 screen. 
            // Next : OUTLINE30 screen. 
            outlineId = EAknExListCmdOutline30; 
            break; 
        case EAknExListCmdOutline30: // OUTLINE30 screen. 
            // Next : OUTLINE31 screen. 
            outlineId = EAknExListCmdOutline31; 
            //outlineId = EAknExListCmdOutline32; // tentative 
            break; 
        case EAknExListCmdOutline31: // OUTLINE31 screen. 
            // Next : OUTLINE32 screen. 
            outlineId = EAknExListCmdOutline32; 
            break; 
        case EAknExListCmdOutline32: // OUTLINE32 screen. 
            // Next : OUTLINE33 screen. 
            outlineId = EAknExListCmdOutline33; 
            break; 
        case EAknExListCmdOutline33: // OUTLINE33 screen. 
            // Next : OUTLINE41 screen. 
            outlineId = EAknExListCmdOutline41; 
            break; 
        case EAknExListCmdOutline41: // OUTLINE41 screen. 
            // Next : OUTLINE43 screen. 
            outlineId = EAknExListCmdOutline43; 
            break; 
        case EAknExListCmdOutline43: // OUTLINE43 screen. 
            // Next : OUTLINE44 screen. 
            outlineId = EAknExListCmdOutline44; 
            break; 
        case EAknExListCmdOutline44: // OUTLINE44 screen. 
            // Next : OUTLINE45 screen. 
            outlineId = EAknExListCmdOutline45; 
            break; 
        case EAknExListCmdOutline45: // OUTLINE45 screen. 
            // Next : OUTLINE46 screen. 
            outlineId = EAknExListCmdOutline46; 
            break; 
        case EAknExListCmdOutline46: // OUTLINE46 screen. 
            // Next : OUTLINE47 screen. 
            outlineId = EAknExListCmdOutline47; 
            break; 
        case EAknExListCmdOutline47: // OUTLINE47 screen. 
            // Next : OUTLINE48 screen. 
            outlineId = EAknExListCmdOutline48; 
            break; 
        case EAknExListCmdOutline48: // OUTLINE48 screen. 
            // Next : OUTLINE49 screen. 
            outlineId = EAknExListCmdOutline49; 
            break; 
        case EAknExListCmdOutline49: // OUTLINE49 screen. 
            // Next : OUTLINE50 screen. 
            outlineId = EAknExListCmdOutline50; 
            break; 
        case EAknExListCmdOutline50: // OUTLINE50 screen. 
            // Next : OUTLINE51 screen. 
            outlineId = EAknExListCmdOutline51; 
            break; 
        case EAknExListCmdOutline51: // OUTLINE51 screen. 
            // Next : OUTLINE52 screen. 
            outlineId = EAknExListCmdOutline52; 
            break; 
        case EAknExListCmdOutline52: // OUTLINE52 screen. 
            // Next : OUTLINE53 screen. 
            outlineId = EAknExListCmdOutline53; 
            break; 
        case EAknExListCmdOutline53: // OUTLINE53 screen. 
            // Next : OUTLINE54 screen. 
            outlineId = EAknExListCmdOutline54; 
            break; 
        case EAknExListCmdOutline54: // OUTLINE54 screen. 
            // Next : OUTLINE55 screen. 
            outlineId = EAknExListCmdOutline55; 
            break; 
        case EAknExListCmdOutline55: // OUTLINE55 screen. 
            // Next : OUTLINE57 screen. 
            outlineId = EAknExListCmdOutline57; 
            break; 
        case EAknExListCmdOutline57: // OUTLINE57 screen. 
            // Next : OUTLINE58 screen. 
            outlineId = EAknExListCmdOutline58; 
            break; 
        case EAknExListCmdOutline58: // OUTLINE58 screen. 
            // Next : OUTLINE59 screen. 
            outlineId = EAknExListCmdOutline59; 
            break; 
        case EAknExListCmdOutline59: // OUTLINE59 screen. 
            // Next : OUTLINE60 screen. 
            outlineId = EAknExListCmdOutline60; 
            break; 
        case EAknExListCmdOutline60: // OUTLINE60 screen. 
            // Next : OUTLINE61 screen. 
            outlineId = EAknExListCmdOutline61; 
            break; 
        case EAknExListCmdOutline61: // OUTLINE61 screen. 
            // Next : OUTLINE62 screen. 
            outlineId = EAknExListCmdOutline62; 
            break; 
        case EAknExListCmdOutline62: // OUTLINE62 screen. 
            // Next : OUTLINE63 screen. 
            outlineId = EAknExListCmdOutline63; 
            break; 
        case EAknExListCmdOutline63: // OUTLINE63 screen. 
            // Next : OUTLINE64 screen. 
            outlineId = EAknExListCmdOutline64; 
            break; 
        case EAknExListCmdOutline64: // OUTLINE64 screen. 
            // Next : OUTLINE66 screen. 
            outlineId = EAknExListCmdOutline66; 
            break; 
        case EAknExListCmdOutline66: // OUTLINE66 screen. 
            // Next : OUTLINE67 screen. 
            outlineId = EAknExListCmdOutline67; 
            break; 
        case EAknExListCmdOutline67: // OUTLINE67 screen. 
            // Next : OUTLINE68 screen. 
            outlineId = EAknExListCmdOutline68; 
            break; 
        case EAknExListCmdOutline68: // OUTLINE68 screen. 
            // Next : OUTLINE69 screen. 
            outlineId = EAknExListCmdOutline69; 
            break; 
        case EAknExListCmdOutline69: // OUTLINE69 screen. 
            // Next : OUTLINE70 screen. 
            outlineId = EAknExListCmdOutline70; 
            break; 
        case EAknExListCmdOutline70: // OUTLINE70 screen. 
            // Next : OUTLINE71 screen. 
            outlineId = EAknExListCmdOutline71; 
            break; 
        case EAknExListCmdOutline71: // OUTLINE71 screen. 
            // Next : OUTLINE74 screen. 
            outlineId = EAknExListCmdOutline74; 
            break; 
        case EAknExListCmdOutline74: // OUTLINE74 screen. 
            // Next : OUTLINE75 screen. 
            outlineId = EAknExListCmdOutline75; 
            break; 
        case EAknExListCmdOutline75: // OUTLINE75 screen. 
            // Next : OUTLINE76 screen. 
            outlineId = EAknExListCmdOutline76; 
            break; 
        case EAknExListCmdOutline76: // OUTLINE76 screen. 
            // Next : OUTLINE77. 
            outlineId = EAknExListCmdOutline77; 
            break; 
        case EAknExListCmdOutline77: // OUTLINE77 screen. 
            // Next : OUTLINE78 screen. 
            outlineId = EAknExListCmdOutline78; 
            break; 
        case EAknExListCmdOutline78: // OUTLINE78 screen. 
            // Next : OUTLINE79 screen. 
            outlineId = EAknExListCmdOutline79; 
            break; 
        case EAknExListCmdOutline79: // OUTLINE79 screen. 
            // Next : OUTLINE80 screen. 
            outlineId = EAknExListCmdOutline80; 
            break; 
        case EAknExListCmdOutline80: // OUTLINE80 screen. 
            // Next : OUTLINE81 screen. 
            outlineId = EAknExListCmdOutline81; 
            break; 
        case EAknExListCmdOutline81: // OUTLINE81 screen. 
            // Next : OUTLINE82 screen. 
            outlineId = EAknExListCmdOutline82; 
            break; 
        case EAknExListCmdOutline82: // OUTLINE82 screen. 
            // Next : OUTLINE83 screen. 
            outlineId = EAknExListCmdOutline83; 
            break; 
        case EAknExListCmdOutline83: // OUTLINE83 screen. 
            // Next : OUTLINE83 screen. 
            outlineId = EAknExListCmdOutline85; 
            break; 
        case EAknExListCmdOutline85: // OUTLINE85 screen. 
            // Next : OUTLINE83 screen. 
            outlineId = EAknExListCmdOutline87; 
            break; 
        case EAknExListCmdOutline87: // OUTLINE87 screen. 
            // Next : OUTLINE88 screen. 
            outlineId = EAknExListCmdOutline88; 
            break; 
        case EAknExListCmdOutline88: // OUTLINE88 screen. 
            // Next : OUTLINE90 screen. 
            outlineId = EAknExListCmdOutline90; 
            break; 
        case EAknExListCmdOutline89: // OUTLINE89 screen. 
            // Next : OUTLINE90 screen. 
            outlineId = EAknExListCmdOutline90; 
            break; 
        case EAknExListCmdOutline90: // OUTLINE90 screen. 
            // Next : OUTLINE91 screen. 
            outlineId = EAknExListCmdOutline91; 
            break; 
        case EAknExListCmdOutline91: // OUTLINE91 screen. 
            // Next : OUTLINE93 screen. 
            outlineId = EAknExListCmdOutline93; 
            break; 
        case EAknExListCmdOutline92: // OUTLINE92 screen. 
            // Next : OUTLINE93 screen. 
            outlineId = EAknExListCmdOutline93; 
            break; 
        case EAknExListCmdOutline93: // OUTLINE93 screen. 
            // Next : OUTLINE95 screen. 
            outlineId = EAknExListCmdOutline95; 
            break; 
        case EAknExListCmdOutline94: // OUTLINE94 screen. 
            // Next : OUTLINE95 screen. 
            outlineId = EAknExListCmdOutline95; 
            break; 
        case EAknExListCmdOutline95: // OUTLINE95 screen. 
            // Next : OUTLINE97 screen. 
            outlineId = EAknExListCmdOutline97; 
            break; 
        case EAknExListCmdOutline96: // OUTLINE96 screen. 
            // Next : OUTLINE97 screen. 
            outlineId = EAknExListCmdOutline97; 
            break; 
        case EAknExListCmdOutline97: // OUTLINE97 screen. 
            // Next : OUTLINE99 screen. 
            outlineId = EAknExListCmdOutline99; 
            break; 
        case EAknExListCmdOutline98: // OUTLINE98 screen. 
            // Next : OUTLINE99 screen. 
            outlineId = EAknExListCmdOutline99; 
            break; 
        case EAknExListCmdOutline99: // OUTLINE99 screen. 
            // Next : OUTLINE102 screen. 
            outlineId = EAknExListCmdOutline102; 
            break; 
        case EAknExListCmdOutline102: // OUTLINE102 screen. 
            outlineId = EAknExListCmdEmptyOutline; 
            break; 
        default: 
            // Ecepstion : OUTLINE1 screen. 
            outlineId = EAknExListCmdOutline01; 
            break; 
        } 
 
    HandleCommandL( outlineId ); 
    } 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::IndicateTitlePaneTextL 
// Sets text to titie pane. 
// This is for outline 100, 101, 103, 104. 
// ---------------------------------------------------------------------------- 
void CAknExListBaseView::IndicateTitlePaneTextL( const TDesC& aTitle ) 
    { 
    // Fetches pointer to the default title pane control. 
    CAknTitlePane* titlePane = STATIC_CAST( 
        CAknTitlePane*, 
        StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) ); 
 
    titlePane->SetTextL( aTitle ); 
    } 
 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::HandleCommandL( TInt ) 
// Handles the commands. If the command is command which is require to display 
// outline-screen, the command display outline-screen corresponded to required. 
// ---------------------------------------------------------------------------- 
void CAknExListBaseView::HandleCommandL( TInt aCommand ) 
    { 
    switch ( aCommand ) // Command is... 
        { 
        case EAknSoftkeyBack: 
            AppUi()->ProcessCommandL( EEikCmdExit /*EAknCmdExit*/); 
            break; 
        //case EEikCmdExit: 
        case EAknCmdExit: 
            AppUi()->ProcessCommandL( EEikCmdExit /*EAknCmdExit*/ ); 
            break; 
        case EAknExListSoftkeyNextOutline: 
            DisplayNextOutlineL(); 
            break; 
        default: 
            DeleteTabGroup(); // Deletes tab group. 
            STATIC_CAST( CAknExListAppUi*, AppUi() )->SetOutlineId( aCommand ); 
            SwitchDisplayOutlineL( aCommand ); 
            break; 
        } 
    } 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::IndicateTitlePaneTextL( const TInt ) 
// Sets text by resource ID in title pane. 
// ---------------------------------------------------------------------------- 
// 
void CAknExListBaseView::IndicateTitlePaneTextL( const TInt aResourceId ) 
    { 
    // Fetches pointer to the default title pane control. 
    CAknTitlePane* titlePane = STATIC_CAST( 
        CAknTitlePane*, 
        StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) ); 
 
    // Makes and sets text which is used title pane. 
    if ( aResourceId == KAknExListInitTitleId ) 
        { 
        titlePane->SetTextToDefaultL(); 
        } 
    else 
        { 
        TBuf titleText( 0 ); 
        iCoeEnv->ReadResource( titleText, aResourceId ); 
        titlePane->SetTextL( titleText ); 
        } 
    } 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::DisplayInitOutlineL() 
// Displays initial outline when view changed. 
// ---------------------------------------------------------------------------- 
// 
void CAknExListBaseView::DisplayInitOutlineL() 
    { 
    TInt outlineId( STATIC_CAST( CAknExListAppUi*, AppUi() )->OutlineId() ); 
 
    if ( !iNaviPane ) 
        { 
        iNaviPane = STATIC_CAST( 
            CAknNavigationControlContainer*, 
            StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidNavi ) ) ); 
        } 
 
    iDecoratedTabGroup = iNaviPane->Top(); 
 
    if ( iDecoratedTabGroup ) 
        { 
        iTabGroup = STATIC_CAST( 
            CAknTabGroup*, iDecoratedTabGroup->DecoratedControl() ); 
        if ( !iTabGroup->ActiveTabIndex() ) // Is active tab first tab? 
            { 
            SetTitlePaneL( outlineId ); 
            } 
        DisplayListBoxL( iTabGroup->TabIdFromIndex( iTabGroup-> 
                                                    ActiveTabIndex() ) ); 
        } 
    else 
        { 
        if ( iTabGroup ) 
            { 
            iTabGroup = NULL; 
            } 
        SetTitlePaneL( outlineId ); 
        DisplayListBoxL( outlineId ); 
        } 
    } 
 
// ------------------------------------------------------------------------------ 
// CAknExListBaseView::SetNavigationPaneL() 
// Sets Navigation pane. 
// ------------------------------------------------------------------------------ 
// 
void CAknExListBaseView::SetNavigationPaneL() 
    { 
    if ( !iNaviPane ) 
        { 
        iNaviPane = STATIC_CAST( 
            CAknNavigationControlContainer*, 
            StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidNavi ) ) ); 
        } 
 
    TInt outlineId( STATIC_CAST( CAknExListAppUi*, AppUi() )->OutlineId() ); 
 
    TInt resourceId(0); 
 
    switch ( outlineId ) 
        { 
        case EAknExListCmdOutline26: 
            resourceId = R_AKNEXLIST_SELECTION_TAB; 
            break; 
        case EAknExListCmdOutline30: 
            resourceId = R_AKNEXLIST_MULTISELECTION_TAB; 
            break; 
        case EAknExListCmdOutline41: 
            resourceId = R_AKNEXLIST_STYLE_OF_FINDBOX_TAB; 
            break; 
        case EAknExListCmdOutline06: 
        case EAknExListCmdOutline88: 
        case EAknExListCmdOutline90: 
        case EAknExListCmdOutline91: 
        case EAknExListCmdOutline93: 
        case EAknExListCmdOutline95: 
        case EAknExListCmdOutline97: 
        case EAknExListCmdOutline99: 
        case EAknExListCmdOutline102: 
            resourceId = R_AKNEXLIST_FLAGTEST_TAB; 
            break; 
        case EAknExListCmdOutline89: 
        case EAknExListCmdOutline92: 
        case EAknExListCmdOutline94: 
        case EAknExListCmdOutline96: 
        case EAknExListCmdOutline98: 
            resourceId = R_AKNEXLIST_FLAGTEST_WITHS_TAB; 
            break; 
        default: 
            break; 
        } 
 
    if ( resourceId ) 
        { 
        if ( !iDecoratedTabGroup ) // Isn't tab group created? 
            { 
            SetTitlePaneL( outlineId ); 
 
            TResourceReader reader; 
            iCoeEnv->CreateResourceReaderLC( reader, resourceId ); 
            iDecoratedTabGroup = iNaviPane->CreateTabGroupL( reader ); 
            CleanupStack::PopAndDestroy();  // resource reader 
 
            iTabGroup = STATIC_CAST( CAknTabGroup*, 
                                     iDecoratedTabGroup->DecoratedControl() ); 
 
            iNaviPane->PushL( *iDecoratedTabGroup ); 
            } 
        } 
    } 
 
// ---------------------------------------------------------------------------- 
// void CAknExListBaseView::SetTitlePaneL( TInt ) 
// Sets text of title pane by outline ID. 
// ---------------------------------------------------------------------------- 
void CAknExListBaseView::SetTitlePaneL( TInt /*aOutlineId*/ ) 
    { 
    IndicateTitlePaneTextL( KAknExListInitTitleId ); 
    } 
 
// ---------------------------------------------------------------------------- 
// CAknExListBaseView::DeleteTabGroup() 
// Deletes tab group. 
// ---------------------------------------------------------------------------- 
// 
void CAknExListBaseView::DeleteTabGroup() 
    { 
    if ( iNaviPane ) 
        { 
        if ( iDecoratedTabGroup ) 
            { 
            iNaviPane->Pop( iDecoratedTabGroup ); 
            delete iDecoratedTabGroup; 
            iDecoratedTabGroup = NULL; 
            iTabGroup = NULL; 
            } 
        } 
    } 
 
// End of File