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

📄 calendarapiexampleentrycontainer.cpp

📁 该源码实现个人日程管理以及备忘功能
💻 CPP
字号:
/*
* ============================================================================
*  Name     : CCalendarAPIexampleEntryContainer from CalendarAPIexampleEntryContainer.h
*  Part of  : CalendarAPIexample
*  Created  : 02/22/2005 by Forum Nokia
*  Version  : 1.0
*  Copyright: Nokia Corporation
* ============================================================================
*/

// INCLUDE FILES
#include <CalendarAPIexample.rsg>
#include "CalendarAPIexampleEntryContainer.h"
#include "CalendarAPIexample.hrh"
#include "CalendarAPIexampleEntryItemList.h"
#include "CalendarAPIexampleDocument.h"


// ================= MEMBER FUNCTIONS =======================

// constructor
CCalendarAPIexampleEntryContainer::CCalendarAPIexampleEntryContainer(CEntry& aAnniversary)
	:	iAnniversary(aAnniversary)
	{
	}

// destructor
CCalendarAPIexampleEntryContainer::~CCalendarAPIexampleEntryContainer()
	{
	delete iItemList;
	}

// Two-phased constructor.	
CCalendarAPIexampleEntryContainer* CCalendarAPIexampleEntryContainer::NewL(const TRect& aRect,
																			CEntry& aEntry)
	{
	CCalendarAPIexampleEntryContainer* self = new (ELeave) CCalendarAPIexampleEntryContainer(aEntry);
	CleanupStack::PushL(self);
	self->ConstructL(aRect);
	CleanupStack::Pop(self);
	return self;
	}

// Symbian OS default constructor can leave.	
void CCalendarAPIexampleEntryContainer::ConstructL(const TRect& aRect)
	{
	CreateWindowL();    

 	iItemList = new (ELeave) CCalendarAPIexampleEntryItemList;
	iItemList->SetData(iAnniversary);	
    iItemList->ConstructFromResourceL(R_ENTRY_SETTINGS_LIST); 
    iItemList->MakeVisible(ETrue);
    iItemList->SetRect(aRect);
    iItemList->ActivateL();
    iItemList->DrawNow();    

	SetRect(aRect);
    
	ActivateL();	
	}

// ----------------------------------------------------
// CCalendarAPIexampleEntryContainer::SizeChanged()
// Responds to size changes to sets the size and 
// position of the contents of this control. 
// ----------------------------------------------------
//			
void CCalendarAPIexampleEntryContainer::SizeChanged()
	{
	}

// ----------------------------------------------------
// CCalendarAPIexampleEntryContainer::CountComponentControls()
// Gets the number of controls contained in a compound 
// control. 
// ----------------------------------------------------
//			
TInt CCalendarAPIexampleEntryContainer::CountComponentControls() const
	{
	TInt count = 0;
	if (iItemList)
		count++;
	return count;
	}
	
// ----------------------------------------------------
// CCalendarAPIexampleEntryContainer::ComponentControl()
// Gets the specified component of a compound control.
// ----------------------------------------------------
//	
CCoeControl* CCalendarAPIexampleEntryContainer::ComponentControl(TInt /*aIndex*/) const
	{
	return iItemList;
	}
	
// ----------------------------------------------------
// CCalendarAPIexampleEntryContainer::OfferKeyEventL()
// When a key event occurs, the control framework calls 
// this function for each control on the control stack, 
// until one of them can process the key event 
// (and returns EKeyWasConsumed).
// ----------------------------------------------------
//	
TKeyResponse CCalendarAPIexampleEntryContainer::OfferKeyEventL(	const TKeyEvent& aKeyEvent, 
																TEventCode aType )
	{
    if(aType != EEventKey)
        {
        return EKeyWasNotConsumed;
        }    
    else if(iItemList)
        {
        return iItemList->OfferKeyEventL( aKeyEvent, aType );
        }
    else
        {
        return EKeyWasNotConsumed;
        }
	
	}
	
// ----------------------------------------------------
// CCalendarAPIexampleEntryContainer::SaveL()
// Calls the itemlist to save its values to containers
// member entry object
// ----------------------------------------------------
//	
TBool CCalendarAPIexampleEntryContainer::SaveL()
	{
	return iItemList->SaveL(iAnniversary);
	}
	

⌨️ 快捷键说明

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