00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "txtexamp.h"
00017
00018 #include <coemain.h>
00019 #include <coeaui.h>
00020
00021 void CGraphicExampleControl::ConstructL(const TRect& aRect, MGraphicsExampleObserver* aFormObserver,
00022 const CCoeControl& aParent)
00023 {
00024
00025 iFormObserver=aFormObserver;
00026
00027 CreateWindowL(&aParent);
00028
00029 TCoeFont font(TCoeFont::EMedium, TCoeFont::EPlain);
00030 CCoeControl::ScreenFont(font);
00031
00032 SetRect(aRect);
00033
00034 ActivateL();
00035 UpdateModelL();
00036 }
00037
00038 CGraphicExampleControl::~CGraphicExampleControl()
00039 {
00040 iCoeEnv->ReleaseScreenFont(iMessageFont);
00041 }
00042
00043 void CGraphicExampleControl::Quit()
00044 {
00045 iFormObserver->NotifyGraphicExampleFinished();
00046 }
00047
00048 void CGraphicExampleControl::NextPhaseL()
00049 {
00050 if (++iPhase >= iMaxPhases)
00051 Quit();
00052 else
00053 {
00054 UpdateModelL();
00055 if (!iUpdateModelDoesRedraw) DrawNow();
00056 }
00057 }
00058
00059 void CGraphicExampleControl::HandlePointerEventL(const TPointerEvent& aPointerEvent)
00060 {
00061 if (aPointerEvent.iType==TPointerEvent::EButton1Down) NextPhaseL();
00062 }
00063
00064 TKeyResponse CGraphicExampleControl::OfferKeyEventL(
00065 const TKeyEvent& aKeyEvent,TEventCode aType
00066 )
00067 {
00068 if (aType!=EEventKey) return EKeyWasNotConsumed;
00069 TInt code=aKeyEvent.iCode;
00070 switch (code)
00071 {
00072 case ' ':
00073 NextPhaseL();
00074 break;
00075 default:
00076 return EKeyWasNotConsumed;
00077 }
00078 return EKeyWasConsumed;
00079 }
00080