📄 aknexsettinglistview.cpp
字号:
/* Copyright (c) 2004, Nokia. All rights reserved */
// INCLUDE FILES
#include <avkon.hrh>
#include <avkon.rsg>
#include <akntitle.h>
#include <aknviewappui.h>
#include <aknexsettinglist.rsg>
#include "aknexsettinglist.hrh"
#include "aknexsettinglistview.h"
#include "aknexsettinglistcontainer.h"
#include "aknexsettinglistlistbox.h"
#include "aknexsettinglistitemdata.h"
// ========================= MEMBER FUNCTIONS ==================================
// ------------------------------------------------------------------------------
// CAknExSettingListView::CAknExSettingListView()
// C++ default constructor can NOT contain any code, that might leave.
// ------------------------------------------------------------------------------
//
CAknExSettingListView::CAknExSettingListView(): iCurrentOutlineId(
EAknExSettingListCmdEmptyOutline )
{
// No implementation required
}
// ------------------------------------------------------------------------------
// CAknExSettingListView::~CAknExSettingListView()
// Destructor.
// ------------------------------------------------------------------------------
//
CAknExSettingListView::~CAknExSettingListView()
{
// Deletes the Container class object.
if ( iContainer )
{
// Removes Container from View control stack.
AppUi()->RemoveFromStack( iContainer );
}
if ( iListBox )
{
AppUi()->RemoveFromStack( iListBox );
}
delete iListBox;
delete iData;
}
// ------------------------------------------------------------------------------
// CAknExSettingListView::DisplayNextOutlineL()
// Displays the next outline.
// ------------------------------------------------------------------------------
//
void CAknExSettingListView::DisplayNextOutlineL()
{
// Current outline is...
switch ( iCurrentOutlineId )
{
case EAknExSettingListCmdEmptyOutline:
HandleCommandL( EAknExSettingListCmdOutline01 );
break;
case EAknExSettingListCmdOutline01:
HandleCommandL( EAknExSettingListCmdOutline02 );
break;
case EAknExSettingListCmdOutline02:
HandleCommandL( EAknExSettingListCmdOutline03 );
break;
case EAknExSettingListCmdOutline03:
HandleCommandL( EAknExSettingListCmdOutline04 );
break;
case EAknExSettingListCmdOutline04:
HandleCommandL( EAknExSettingListCmdOutline05 );
break;
case EAknExSettingListCmdOutline05:
HandleCommandL( EAknExSettingListCmdOutline06 );
break;
case EAknExSettingListCmdOutline06:
HandleCommandL( EAknExSettingListCmdOutline07 );
break;
case EAknExSettingListCmdOutline07:
HandleCommandL( EAknExSettingListCmdOutline08 );
break;
case EAknExSettingListCmdOutline08:
HandleCommandL( EAknExSettingListCmdOutline09 );
break;
case EAknExSettingListCmdOutline09:
HandleCommandL( EAknExSettingListCmdOutline10 );
break;
case EAknExSettingListCmdOutline10:
HandleCommandL( EAknExSettingListCmdOutline01 );
break;
default:
HandleCommandL( EAknExSettingListCmdEmptyOutline );
break;
}
}
// ------------------------------------------------------------------------------
// CAknExSettingListView::DisplayPreviousOutlineL()
// Displays the previous outline.
// ------------------------------------------------------------------------------
//
void CAknExSettingListView::DisplayPreviousOutlineL()
{
// Current outline is...
switch ( iCurrentOutlineId )
{
case EAknExSettingListCmdEmptyOutline:
HandleCommandL( EAknExSettingListCmdOutline10 );
break;
case EAknExSettingListCmdOutline01:
HandleCommandL( EAknExSettingListCmdOutline10 );
break;
case EAknExSettingListCmdOutline02:
HandleCommandL( EAknExSettingListCmdOutline01 );
break;
case EAknExSettingListCmdOutline03:
HandleCommandL( EAknExSettingListCmdOutline02 );
break;
case EAknExSettingListCmdOutline04:
HandleCommandL( EAknExSettingListCmdOutline03 );
break;
case EAknExSettingListCmdOutline05:
HandleCommandL( EAknExSettingListCmdOutline04 );
break;
case EAknExSettingListCmdOutline06:
HandleCommandL( EAknExSettingListCmdOutline05 );
break;
case EAknExSettingListCmdOutline07:
HandleCommandL( EAknExSettingListCmdOutline06 );
break;
case EAknExSettingListCmdOutline08:
HandleCommandL( EAknExSettingListCmdOutline07 );
break;
case EAknExSettingListCmdOutline09:
HandleCommandL( EAknExSettingListCmdOutline08 );
break;
case EAknExSettingListCmdOutline10:
HandleCommandL( EAknExSettingListCmdOutline09 );
break;
default:
HandleCommandL( EAknExSettingListCmdEmptyOutline );
break;
}
}
// ------------------------------------------------------------------------------
// CAknExSettingListView::SetCurrentOutlineId()
// Set iCurrentOutlineId
// ------------------------------------------------------------------------------
//
void CAknExSettingListView::SetCurrentOutlineId( const TInt aOutlineId )
{
iCurrentOutlineId = aOutlineId;
}
// ------------------------------------------------------------------------------
// CAknExSettingListView::Id() const
// Returns ID of View.
// ------------------------------------------------------------------------------
//
TUid CAknExSettingListView::Id() const
{
return KViewId;
}
// -----------------------------------------------------------------------------
// CAknExSettingListView::HandleCommandL()
// Handles the commands.
// -----------------------------------------------------------------------------
//
void CAknExSettingListView::HandleCommandL( TInt aCommand )
{
switch ( aCommand )
{
case EAknCmdExit:
case EAknSoftkeyBack:
{
AppUi()->ProcessCommandL( EAknCmdExit );
break;
}
case EAknExSettingListCmdEmptyOutline:
iCurrentOutlineId = aCommand;
SwapContainerL( ETrue );
iContainer->SetCurrentOutlineId( aCommand );
IndicateTitlePaneTextL( aCommand );
iContainer->DisplayLabelL( R_AKNEXSETTINGLIST_TEXT_LABEL_TITLE );
break;
case EAknExSettingListCmdOutline01:
iCurrentOutlineId = aCommand;
SwapContainerL( EFalse );
CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_TEXT );
break;
case EAknExSettingListCmdOutline02:
iCurrentOutlineId = aCommand;
SwapContainerL( EFalse );
CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_SLIDER );
break;
case EAknExSettingListCmdOutline03:
iCurrentOutlineId = aCommand;
SwapContainerL( EFalse );
CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_VOLUME );
break;
case EAknExSettingListCmdOutline04:
iCurrentOutlineId = aCommand;
SwapContainerL( EFalse );
CreateListBoxL( R_AKNEXSETTINGLIST_SETTING_LIST_SETTING_ENUMTEXT );
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -