www.pudn.com > LDFUCK.rar > NoteView.cpp


/* Copyright (c) 2007, Nokia. All rights reserved */ 
#include  
#include  
#include   
 
#include "LDFUCKAppUi.h" 
#include "NoteView.h" 
#include "NoteContainer.h" 
#include "LDFUCK.hrh" 
#include "LDFUCK.rsg" 
#include "OperateInfo.h" 
 
CNoteView* CNoteView::NewL() 
{ 
    CNoteView* self = NewLC(); 
    CleanupStack::Pop(self); 
    return self; 
} 
 
CNoteView* CNoteView::NewLC() 
{ 
    CNoteView* self = new (ELeave) CNoteView(); 
    CleanupStack::PushL(self); 
    self->ConstructL(); 
    return self; 
} 
 
void CNoteView::ConstructL() 
{ 
	BaseConstructL(R_PLAN_NOTE_VIEW); 
} 
	 
 
CNoteView::CNoteView() 
{ 
} 
 
 
CNoteView::~CNoteView() 
{ 
} 
 
TUid CNoteView::Id() const 
{ 
	return TUid::Uid(ENoteViewID); 
} 
 
void CNoteView::HandleCommandL(TInt aCommand) 
{ 
	switch(aCommand)  
	{ 
	case EPLANCmdAppNoteOpen: 
		//m-class 
		if(m_pAppContainer->ReturnIndex() == -1) 
		{ 
			AppUi()->ActivateLocalViewL(TUid::Uid(ELookViewID)); 
		} 
		else 
		{ 
			z = m_pAppContainer->ReturnIndex(); 
		 
			m_Name.Copy((m_pAppOperateInfo->getNoteNumInfo())[z]->Des()); 
 			m_Content.Copy((m_pAppOperateInfo->getNoteNameInfo())[z]->Des()); 
		 
			m_pNoteToLookNotify->NoteToLookNotify(m_Name, m_Content); 
	 
			AppUi()->ActivateLocalViewL(TUid::Uid(ELookViewID)); 
		} 
	 
		break; 
	 
	case EAknSoftkeyExit: 
		AppUi()->ActivateLocalViewL(TUid::Uid(EHelpViewID)); 
		break; 
	 
	case EPLANCmdAppNoteDelete: 
		if(m_pAppContainer->ReturnIndex() == -1) 
		{ 
			AppUi()->ActivateLocalViewL(TUid::Uid(ELookViewID)); 
		} 
		 
		else 
		{ 
			m_pAppContainer->delInfofromlist(); 
			delIndex = m_pAppContainer->ReturnIndex(); 
			m_pAppOperateInfo->delInfo(m_pAppContainer->ReturnIndex()); 
			 
		} 
//		z = m_pAppContainer->ReturnIndex(); 
//		HBufC* pNum = iMyNoteNameArray[z]; 
//		if(pNum != NULL) 
//		{ 
//			delete pNum; 
//		} 
//		iMyNoteNameArray.Remove(z); 
//		HBufC* pName = iMyNoteNumArray[z]; 
//		if(pName != NULL) 
//		{ 
//			delete pName; 
//		} 
//		iMyNoteNumArray.Remove(z); 
 
//从文件中删除记录 
//		m_pAppOperateInfo->delInfo(m_pAppContainer->ReturnIndex()); 
 
		AppUi()->ActivateLocalViewL(TUid::Uid(ENoteViewID)); 
		 
		break; 
	default: 
		AppUi()->HandleCommandL(aCommand); 
		break; 
	} 
} 
 
void CNoteView::HandleClientRectChange() 
{ 
 
} 
 
void CNoteView::DoActivateL(const TVwsViewId&, TUid, const TDesC8&) 
{ 
	m_pAppContainer = new( ELeave ) CNoteContainer(); 
	m_pAppContainer->SetMopParent(this); 
	m_pAppContainer->ConstructL( TRect(TPoint(0, 44), TSize(176, 144)) );	 
	AppUi()->AddToStackL( *this, m_pAppContainer ); 
 
 
	 
 
//加入LISTBOX 
	TInt noteArrayLength = (m_pAppOperateInfo->getNoteNumInfo()).Count(); 
	TInt noteArrayLength2 = (m_pAppOperateInfo->getNoteNameInfo()).Count(); 
	for (TInt i=0; iaddInfotolist(_L("0"), (m_pAppOperateInfo->getNoteNumInfo())[i]->Des(),  
			(m_pAppOperateInfo->getNoteNameInfo())[i]->Des()); 
	} 
	 
//set title 
	TBuf<32> buf; 
	CEikonEnv::Static()->ReadResource(buf, R_QTN_IF_NOTETITLE); 
	CEikStatusPane* sp=iEikonEnv->AppUiFactory()->StatusPane(); 
	CAknTitlePane* tp=(CAknTitlePane*)sp->ControlL(TUid::Uid(EEikStatusPaneUidTitle)); 
	tp->SetTextL(buf); 
	 
	m_flag = m_pAppContainer->OptionGetId(); 
	ChangeNoteViewCBA(); 
} 
 
 
void CNoteView::ChangeNoteViewCBA() 
{ 
	m_pButtonGroupContainer = CEikButtonGroupContainer::Current(); 
	if(m_flag < 0) 
	{ 
		m_pButtonGroupContainer->SetCommandSetL( R_PLAN_NOTE_VIEW_NOLIST_CBA ); 
	} 
	 
	else 
	{ 
		m_pButtonGroupContainer->SetCommandSetL( R_PLAN_NOTE_VIEW_CBA ); 
	} 
	 
	m_flag = -1; 
	m_pButtonGroupContainer->DrawNow(); 
}	 
 
 
void CNoteView::DoDeactivate()	 
{ 
//	iMyNoteNameArray.Reset(); 
// 	iMyNoteNumArray.Reset(); 
	if(m_pAppContainer) 
	{ 
		AppUi()->RemoveFromStack( m_pAppContainer ); 
		delete m_pAppContainer; 
		m_pAppContainer = NULL; 
	} 
}