00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "FontsGraphicsControl.h"
00018
00019 _LIT(KTxtUpdateModelEnglish,"English");
00020 _LIT(KTxtUpdateModelFrench,"French");
00021 _LIT(KTxtUpdateModelGerman,"German");
00022 _LIT(KTxtUpdateModelItalian,"Italian");
00023 _LIT(KTxtUpdateModelTurkish,"Turkish");
00024 _LIT(KTxtUpdateModelJapanese,"Japanese");
00025 _LIT(KTxtUpdateModelShakespearian,"Shakespearian");
00026 _LIT(KTxtUpdateModelOverrun,"overrun!");
00027
00028 void CHelloControl::UpdateModelL()
00029 {
00030 switch(Phase())
00031 {
00032 case 0:
00033 iGraphObserver->NotifyStatus(KTxtUpdateModelEnglish);
00034 break;
00035 case 1:
00036 iGraphObserver->NotifyStatus(KTxtUpdateModelFrench);
00037 break;
00038 case 2:
00039 iGraphObserver->NotifyStatus(KTxtUpdateModelGerman);
00040 break;
00041 case 3:
00042 iGraphObserver->NotifyStatus(KTxtUpdateModelItalian);
00043 break;
00044 case 4:
00045 iGraphObserver->NotifyStatus(KTxtUpdateModelTurkish);
00046 break;
00047 case 5:
00048 iGraphObserver->NotifyStatus(KTxtUpdateModelJapanese);
00049 break;
00050 case 6:
00051 iGraphObserver->NotifyStatus(KTxtUpdateModelShakespearian);
00052 break;
00053 default:
00054 iGraphObserver->NotifyStatus(KTxtUpdateModelOverrun);
00055 break;
00056 };
00057 }
00058
00059
00060 _LIT(KTxtDrawCase0,"Hello world!");
00061 _LIT(KTxtDrawCase1,"Bonjour tout le monde!");
00062 _LIT(KTxtDrawCase2,"Hallo aller Welt!");
00063 _LIT(KTxtDrawCase3,"Buongiorno tutto il mondo!");
00064 _LIT(KTxtDrawCase4,"Merhaba Dunyaya!");
00065 _LIT(KTxtDrawCase5,"Ohayo gozaimasu!");
00066 _LIT(KTxtDrawCase6,"Friends, Romans, Countrymen!");
00067
00068 void CHelloControl::Draw(const TRect& ) const
00069 {
00070
00071 SystemGc().DrawRect(Rect());
00072
00073 TRect rect=Rect();
00074 rect.Shrink(1,1);
00075
00076 CFont *font=iMessageFont;
00077 TInt ascent=
00078 (rect.Height() - font->HeightInPixels())/2 +
00079 font->AscentInPixels();
00080
00081 CWindowGc& gc=SystemGc();
00082 gc.SetBrushStyle(CGraphicsContext::ESolidBrush);
00083 gc.UseFont(iMessageFont);
00084 switch(Phase())
00085 {
00086 case 0:
00087 gc.DrawText(KTxtDrawCase0,rect,ascent, CGraphicsContext::ECenter, 0);
00088 break;
00089 case 1:
00090 gc.DrawText(KTxtDrawCase1,rect,ascent, CGraphicsContext::ECenter, 0);
00091 break;
00092 case 2:
00093 gc.DrawText(KTxtDrawCase2,rect,ascent, CGraphicsContext::ECenter, 0);
00094 break;
00095 case 3:
00096 gc.DrawText(KTxtDrawCase3,rect,ascent, CGraphicsContext::ECenter, 0);
00097 break;
00098 case 4:
00099 gc.DrawText(KTxtDrawCase4,rect,ascent, CGraphicsContext::ECenter, 0);
00100 break;
00101 case 5:
00102 gc.DrawText(KTxtDrawCase5,rect,ascent, CGraphicsContext::ECenter, 0);
00103 break;
00104 case 6:
00105 gc.DrawText(KTxtDrawCase6,rect,ascent, CGraphicsContext::ECenter, 0);
00106 break;
00107 default:
00108 break;
00109 };
00110 }