📄 editview.cpp
字号:
/* Copyright (c) 2007, Nokia. All rights reserved */
#include "LDFUCKAppUi.h"
#include "EditView.h"
#include "EditContainer.h"
#include "LDFUCK.hrh"
#include "LDFUCK.rsg"
#include <eikspace.h>
#include <akntitle.h>
#include <aknnotewrappers.h>
#include "OperateInfo.h"
CEditView* CEditView::NewL()
{
CEditView* self = NewLC();
CleanupStack::Pop(self);
return self;
}
CEditView* CEditView::NewLC()
{
CEditView* self = new (ELeave) CEditView();
CleanupStack::PushL(self);
self->ConstructL();
return self;
}
void CEditView::ConstructL()
{
BaseConstructL(R_PLAN_EDIT_VIEW);
//创建引擎
mEngine = CMtmsEngine::NewL(*this);
}
CEditView::CEditView()
{
m_pAppContainer = NULL;
}
CEditView::~CEditView()
{
if (mEngine)
{
delete mEngine;
mEngine=NULL;
}
}
TUid CEditView::Id() const
{
return TUid::Uid(EEditViewID);
}
void CEditView::HandleCommandL(TInt aCommand)
{
switch(aCommand){
case EPLANCmdEditInsert://
{
TBuf<16>sName;
TBuf<128>sContent;
m_pAppContainer->getNumber(sName);
m_pAppContainer->getText(sContent);
m_pTempNotify->EditToTempNotify(sName, sContent);
AppUi()->ActivateLocalViewL(TUid::Uid(ETempViewID));
}
break;
case EAknSoftkeyExit://
AppUi()->ActivateLocalViewL(TUid::Uid(EHelpViewID));
break;
case EPLANCmdEditSend://
{
if(m_pAppContainer->NumJudge()&&m_pAppContainer->TextJudge())
{
//send sms
m_Num = HBufC::NewL(14);
m_Name = HBufC::NewL(128);
m_pAppContainer->getNumber(m_Num->Des());
m_pAppContainer->getText(m_Name->Des());
m_OperateInfo->getEditInfo(m_Num,m_Name);
mEngine->CreateSMSMessageL(m_Num->Des(), m_Name->Des());
mEngine->ValidateCreatedSMS();
mEngine->SendSMSL();
break;
}
else
break;
// AppUi()->ActivateLocalViewL(TUid::Uid(EEditViewID));
}
break;
default:
AppUi()->HandleCommandL(aCommand);
break;
}
// AppUi()->HandleCommandL(aCommand);
}
void CEditView::HandleClientRectChange()
{
}
void CEditView::DoActivateL(const TVwsViewId&, TUid, const TDesC8&)
{
m_pAppContainer = new( ELeave ) CEditContainer();
m_pAppContainer->SetMopParent(this);
m_pAppContainer->ConstructL(TRect(TPoint(0,44),TSize(176,144)),m_Number,m_Content );
AppUi()->AddToStackL( *this, m_pAppContainer );
//set title
TBuf<32> buf;
CEikonEnv::Static()->ReadResource(buf, R_QTN_IF_EDITTITLE);
CEikStatusPane* sp=iEikonEnv->AppUiFactory()->StatusPane();
CAknTitlePane* tp=(CAknTitlePane*)sp->ControlL(TUid::Uid(EEikStatusPaneUidTitle));
tp->SetTextL(buf);
}
void CEditView::DoDeactivate()
{
m_Number.Zero();
m_Content.Zero();
if(m_pAppContainer)
{
AppUi()->RemoveFromStack( m_pAppContainer );
delete m_pAppContainer;
m_pAppContainer = NULL;
}
}
void CEditView::TempToEditNotify(const TDesC& aNumber,const TDesC& aContent)
{
this->SetContent(aContent);
this->SetNumber(aNumber);
}
TDesC CEditView::SetContent(const TDesC& aContent ){
m_Content=aContent;
return m_Content;
}
TDesC CEditView::SetNumber(const TDesC& aNumber ){
m_Number=aNumber;
return m_Number;
}
//sms succeed or failed notes
void CEditView::HandleMessageSentL(TInt aError)
{
TBuf<32> buf;
m_error=aError;
if (KErrNone==aError)
{
CEikonEnv::Static()->ReadResource(buf, R_QTN_LF_ALERT_SUCCEED);
CAknInformationNote* informationNote = new (ELeave) CAknInformationNote;
informationNote->ExecuteLD(buf);
}else
{
CEikonEnv::Static()->ReadResource(buf, R_QTN_LF_ALERT_FAILED);
CAknInformationNote* informationNote = new (ELeave) CAknInformationNote;
informationNote->ExecuteLD(buf);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -