📄 orcselview.cpp
字号:
/* Copyright (c) 2007, Nokia. All rights reserved */
#include <akntitle.h>
#include <eikmenup.h>
#include "orcerAppUi.h"
#include "ORCSelView.h"
#include "ORCSelContainer.h"
#include "orcer.hrh"
#include "orcer.rsg"
#include "ORCOperBook.h"
CORCSelView* CORCSelView::NewL()
{
CORCSelView* self = NewLC();
CleanupStack::Pop(self);
return self;
}
CORCSelView* CORCSelView::NewLC()
{
CORCSelView* self = new (ELeave) CORCSelView();
CleanupStack::PushL(self);
self->ConstructL();
return self;
}
void CORCSelView::ConstructL()
{
BaseConstructL(R_SEL_VIEW);
}
CORCSelView::CORCSelView()
{
m_pAppContainer = NULL;
}
CORCSelView::~CORCSelView()
{
}
TUid CORCSelView::Id() const
{
return TUid::Uid(EORCSelViewID);
}
void CORCSelView::HandleCommandL(TInt aCommand)
{
switch(aCommand) {
case EORCSelViewID: //标记
{
aKenny = 0;
AppUi()->ActivateLocalViewL(TUid::Uid(EORCSelViewID));
}
break;
case EAknCmdMark:
case EAknMarkAll:
{
aKenny = 1;
m_pAppContainer->HandleMarkCommandL(aCommand);
}
break;
case EAknCmdUnmark:
case EAknUnmarkAll:
m_pAppContainer->HandleMarkCommandL(aCommand);
break;
case EORCERCommandSer://以服务器内容为准
{
m_pAppContainer->GetListInfo();
m_pOperBook->SetBookID(m_pAppContainer->GetListBoxIndex());
m_pOperBook->DoAssem();
m_pOperBook->Notarize();
// AppUi()->ActivateLocalViewL(TUid::Uid(EORCSelViewID));
}
break;
case EORCERCommandPhone://以手机名片为准
m_pAppContainer->GetListInfo();
m_pOperBook->SetBookID(m_pAppContainer->GetListBoxIndex());
m_pOperBook->DoAssem();
m_pOperBook->Notarize();
// AppUi()->ActivateLocalViewL(TUid::Uid(EORCSelViewID));
break;
case EAknSoftkeyBack:
AppUi()->ActivateLocalViewL(TUid::Uid(EORCFunViewID));
break;
default:
AppUi()->HandleCommandL(aCommand);
break;
}
}
void CORCSelView::HandleClientRectChange()
{
}
void CORCSelView::DoActivateL(const TVwsViewId&, TUid, const TDesC8&)
{
m_pAppContainer = new( ELeave ) CORCSelContainer();
m_pAppContainer->SetMopParent(this);
m_pAppContainer->ConstructL( TRect(TPoint(0, 44), TSize(176, 144)) );
AppUi()->AddToStackL( *this, m_pAppContainer );
// this->GetInfoFromBook();
//setTitle
TBuf<32> buf;
CEikonEnv::Static()->ReadResource(buf, R_RECORD_SEL);
CEikStatusPane* sp=iEikonEnv->AppUiFactory()->StatusPane();
CAknTitlePane* tp=(CAknTitlePane*)sp->ControlL(TUid::Uid(EEikStatusPaneUidTitle));
tp->SetTextL(buf);
// add listbox
TInt iBookLength= m_pOperBook->GetFirstName().Count();
for (TInt i = 0; i < iBookLength; i++ )
{
TBuf<20> sName;
if ((m_pOperBook->GetFirstName())[i] != NULL)
sName.Copy((m_pOperBook->GetFirstName())[i]->Des() );
else
sName.Copy(NULL);
if ((m_pOperBook->GetLastName())[i] != NULL)
sName.Append((m_pOperBook->GetLastName())[i]->Des() );
else
sName.Append(NULL);
m_pAppContainer->addInfotolist(_L("1"),sName);
}
}
void CORCSelView::DoDeactivate()
{
if(m_pAppContainer)
{
AppUi()->RemoveFromStack( m_pAppContainer );
delete m_pAppContainer;
m_pAppContainer = NULL;
}
}
// 动态CBA
void CORCSelView::DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane)
{
if (aKenny == 0) {
if(aResourceId == R_SEL_VIEW_MENU_PANE)
{
aMenuPane->SetItemDimmed(EMarkableListCmdMark , EFalse);
aMenuPane->SetItemDimmed(EORCERCommandSer , ETrue);
aMenuPane->SetItemDimmed(EORCERCommandPhone, ETrue);
}
}
else if (aKenny == 1)
{
if(aResourceId == R_SEL_VIEW_MENU_PANE)
{
aMenuPane->SetItemDimmed(EMarkableListCmdMark , EFalse);
aMenuPane->SetItemDimmed(EORCERCommandSer , EFalse);
aMenuPane->SetItemDimmed(EORCERCommandPhone, EFalse);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -