⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aknexsettinglistview.cpp

📁 symbian下的settinglist 适合初学者
💻 CPP
📖 第 1 页 / 共 2 页
字号:
        case EAknExSettingListCmdOutline05:
            iCurrentOutlineId = aCommand;
            SwapContainerL( EFalse );
            CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_DATE );
            break;

        case EAknExSettingListCmdOutline06:
            iCurrentOutlineId = aCommand;
            SwapContainerL( EFalse );
            CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_TIME );
            break;

        case EAknExSettingListCmdOutline07:
            iCurrentOutlineId = aCommand;
            SwapContainerL( EFalse );
            CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_BINARY );
            break;

        case EAknExSettingListCmdOutline08:
            iCurrentOutlineId = aCommand;
            SwapContainerL( EFalse );
            CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_PW );
            break;

        case EAknExSettingListCmdOutline09:
            iCurrentOutlineId = aCommand;
            SwapContainerL( EFalse );
            CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_PIN );
            break;

        case EAknExSettingListCmdOutline10:
            iCurrentOutlineId = aCommand;
            SwapContainerL( EFalse );
            CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_IP );
            break;

        case EAknExSetListCbaCmdNext:
            DisplayNextOutlineL();
            break;

        default:
            break;
        }
    }

// ------------------------------------------------------------------------------
// CAknExSettingListView::CurrentOutlineId()
// Returns current outline id
// ------------------------------------------------------------------------------
//
TInt CAknExSettingListView::CurrentOutlineId()
    {
    return iCurrentOutlineId;
    }

// ------------------------------------------------------------------------------
// CAknExSettingListView::IndicateTitlePaneTextL()
// Sets text on title pane by ID of resource.
// ------------------------------------------------------------------------------
//
void CAknExSettingListView::IndicateTitlePaneTextL( const TInt aCommand )
    {

    TInt resourceId( KAknExSettingListInitial );

    // Sets ID of resource.
    switch ( aCommand ) // Command is...
        {
        case EAknExSettingListCmdOutline01:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE01;
            break;

        case EAknExSettingListCmdOutline02:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE02;
            break;

        case EAknExSettingListCmdOutline03:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE03;
            break;

        case EAknExSettingListCmdOutline04:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE04;
            break;

        case EAknExSettingListCmdOutline05:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE05;
            break;

        case EAknExSettingListCmdOutline06:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE06;
            break;

        case EAknExSettingListCmdOutline07:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE07;
            break;

        case EAknExSettingListCmdOutline08:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE08;
            break;

        case EAknExSettingListCmdOutline09:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE09;
            break;

        case EAknExSettingListCmdOutline10:
            resourceId = R_AKNEXSETTINGLIST_TEXT_STATUS_PANE_TITLE10;
            break;

        default:
            break;
        }

    CAknTitlePane* titlePane = static_cast<CAknTitlePane*> 
            ( StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) );


    if ( resourceId )
        {
         //Allocate TBuf with constant length.
        TBuf<KAknExSettingListTitleBufLength> titleText( NULL );

        // Reads a resource into a descriptor.
        iEikonEnv->ReadResource( titleText, resourceId );

        // Sets text on title pane.
        titlePane->SetTextL( titleText ); 
        }
    else
        {
        titlePane->SetTextToDefaultL();
        }
    }

// ------------------------------------------------------------------------------
// CAknExSettingListView::SwapContainerL()
// Swaps the containers
// ------------------------------------------------------------------------------
//
void CAknExSettingListView::SwapContainerL( TBool aActiveContainer )
    {

    if ( iActiveContainer == aActiveContainer )
        {
        return;
        }

    if ( aActiveContainer )
        {
        if ( iListBox )
            {
            AppUi()->RemoveFromStack( iListBox );
            }
        delete iListBox;
        iListBox = NULL;

        iContainer->MakeVisible( ETrue );
        AppUi()->AddToStackL( *this, iContainer );
        }
    else
        {
        iContainer->MakeVisible( EFalse );
        AppUi()->RemoveFromStack( iContainer );
        }

    iActiveContainer = aActiveContainer;
    }

// ------------------------------------------------------------------------------
// CAknExSettingListView::CreateListBoxL
// Creates listBox controll
// ------------------------------------------------------------------------------
//
void CAknExSettingListView::CreateListBoxL( TInt aResourceId )
    {
    if ( iListBox )
        {
        AppUi()->RemoveFromStack( iListBox );
        }
    delete iListBox;
    iListBox = NULL;

    delete iData;
    iData = CAknExSettingListItemData::NewL();

    iListBox = new ( ELeave ) CAknExSettingListListbox;
    iListBox->SetData( iData );
    iListBox->SetView( this );
    iListBox->SetMopParent( this );
    iListBox->ConstructFromResourceL( aResourceId );

    AppUi()->AddToStackL( *this, iListBox );
    iListBox->MakeVisible( ETrue );
    iListBox->SetRect( ClientRect() );
    iListBox->ActivateL();
    iListBox->DrawNow();
    IndicateTitlePaneTextL( iCurrentOutlineId );
    }

// -----------------------------------------------------------------------------
// CAknExSettingListView::DoActivateL()
// Creates container class object.
// -----------------------------------------------------------------------------
//
void CAknExSettingListView::DoActivateL( const TVwsViewId& /*aPrevViewId*/,
                                         TUid /*aCustomMessageId*/,
                                         const TDesC8& /*aCustomMessage*/ )
    {

    // Creates the Container class object.
    if ( !iContainer )
        {
        iContainer = new( ELeave ) CAknExSettingListContainer( this );
        iContainer->SetMopParent( this );
        iContainer->ConstructL( ClientRect() );
        iActiveContainer = ETrue;

        // Adds Container to View control stack.
        AppUi()->AddToStackL( *this, iContainer );

        // Requires to display the default screen.
        iContainer->DisplayLabelL( R_AKNEXSETTINGLIST_TEXT_LABEL_TITLE );
        iContainer->MakeVisible( ETrue );
        }
    }

// -----------------------------------------------------------------------------
// CAknExSettingListView::DoDeactivate()
// Deletes container class object.
// -----------------------------------------------------------------------------
//
void CAknExSettingListView::DoDeactivate()
    {

    // Deletes the container class object.
    if ( iContainer )
        {
        // Removes Container from View control stack.
        AppUi()->RemoveFromStack( iContainer );
        }

    delete iContainer;
    iContainer = NULL;
    }

// End of File

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -