03.01.2013 Views

Chapter 1

Chapter 1

Chapter 1

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Create and load a bitmap<br />

iHideBitmap = new (ELeave) CFbsBitmap;<br />

// Get bitmap store--drive independent<br />

TFileName mbmName = iEikonEnv->EikAppUi()->Application()-><br />

BitmapStoreName();<br />

User::LeaveIfError(iHideBitmap->Load(mbmName,0));<br />

ActivateL();<br />

}<br />

void CHiderView::Draw(const TRect& /*aRect*/) const<br />

{<br />

SystemGc().BitBlt(TPoint(0,0),iHideBitmap);<br />

}<br />

9.9.5 View Test Program<br />

To test that all my views work as expected, I wrote a little test application, tp-viewtest.<br />

This just defines a menu with options to activate the various views. To active a view, it calls<br />

CEikAppUi's Activate-ViewL() function, passing the target view ID. This is tpviewtest's<br />

menu command handler:<br />

void CAppUi::HandleCommandL(TInt aCommand)<br />

{<br />

_LIT8(KViewCmdData1, "P1 My");<br />

_LIT8(KViewCmdData2, "P1 Opp");<br />

_LIT8(KViewCmdData3, "P2 My");<br />

_LIT8(KViewCmdData4, "P2 Opp");<br />

switch (aCommand)<br />

{<br />

case ECmdViewPlayer1MyShips:<br />

ActivateViewL(TVwsViewId(KUidTpShips,KP1MyViewUID),<br />

KCmd1UID, KViewCmdData1);<br />

break;<br />

case ECmdViewPlayer1OppShips:<br />

ActivateViewL(TVwsViewId(KUidTpShips,KP1OppViewUID),<br />

KCmd2UID, KViewCmdData2);<br />

break;<br />

case ECmdViewPlayer2MyShips:<br />

ActivateViewL(TVwsViewId(KUidTpShips,KP2MyViewUID),<br />

KCmd1UID, KViewCmdData3);<br />

break;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!