<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="http://blogs.forum.nokia.com/styles/rss.css" type="text/css"?>
<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns="http://purl.org/rss/1.0/"
>
 <channel rdf:about="http://blogs.forum.nokia.com/rss.php?blogId=10294&amp;profile=rss10">
  <title>Li Yongfei&#039;s Forum Nokia Blog</title>
  <link>http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog</link>
  <description>&lt;p&gt;sharing my experience with others! Welcome to my blog. Welcome to my website Http://www.symbianer.com&lt;/p&gt;
</description>
    <dc:creator>cool_li</dc:creator>
  <dc:date>2009-11-24T02:23:18Z</dc:date>
  <admin:generatorAgent rdf:resource="http://www.lifetype.net" />
  <items>
   <rdf:Seq>
       <rdf:li rdf:resource="http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog/2007/11/20/tow-addictive-and-fun-action-puzzle-games-jewelrumble-and-marble-manic" />
       <rdf:li rdf:resource="http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog/2006/07/20/making-timeline-control" />
      </rdf:Seq>
  </items> 
 </channel>
  <item rdf:about="http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog/2007/11/20/tow-addictive-and-fun-action-puzzle-games-jewelrumble-and-marble-manic">
  <title>Tow addictive and fun action-puzzle games: Jewelrumble and Marble Manic</title>
  <link>http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog/2007/11/20/tow-addictive-and-fun-action-puzzle-games-jewelrumble-and-marble-manic</link>
  <dc:description>&lt;p&gt;Hi, Antony, Anina, and all my Friends,&lt;/p&gt;&lt;p&gt;In a half year,I have no time to here, I miss you, today I post my blog, I will Introduce tow fun action-puzzle games for S60 3rd:&lt;br /&gt;1. &lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/Gamesv3/200711/s60v3_5128.html&quot;&gt;Marble Manic&lt;/a&gt; is a superb marble shooting arcade with 4 game modes, special  items, fun bonus rounds (minigolf, invasion, darts), online highscore system and  much, much more. Marble Manic is the ultimate stress-relief game in  endless-mode, combined with playing-modes that need fast reflexes and sharp  mind. [ &lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/Gamesv3/200711/s60v3_5128.html&quot;&gt;Details...&lt;/a&gt; ]&lt;/p&gt;&lt;div style=&quot;text-align: left&quot;&gt;&lt;img src=&quot;http://mobile.symbianer.com/uploadfile/Software/uploadfile/200711/20071119062102565.jpg&quot; border=&quot;0&quot; /&gt;&lt;/div&gt;&lt;br /&gt;

2. &lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/Gamesv3/200711/s60v3_5129.html&quot;&gt;Jewelrumble &lt;/a&gt;is an addictive and fun action-puzzle game, where you match jewels  creating massive combos and advance levels. It has three game modes, and as  rewards from good moves, 5 special items are available. You also have amount of  rumbles you can use to shake new jewels to the screen. Online highscore system  is featured, so you can share your scores and download world scores with a press  of a button. Be aware that when you start playing, you simply can&amp;#39;t stop. Get  ready to rumble! [ &lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/Gamesv3/200711/s60v3_5129.html&quot;&gt;Details.. &lt;/a&gt;]&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: left&quot;&gt;&lt;img src=&quot;http://mobile.symbianer.com/uploadfile/Software/uploadfile/200711/20071119062322993.jpg&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;&lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/&quot;&gt;Here&lt;/a&gt;, you can get more games for s60 3rd: &lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/Gamesv3/&quot;&gt;http://mobile.symbianer.com/Software/S60v3/Gamesv3/&lt;/a&gt;&lt;br /&gt;more softwares for s60 3rd: &lt;a href=&quot;http://mobile.symbianer.com/Software/S60v3/&quot;&gt;http://mobile.symbianer.com/Software/S60v3/&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: left&quot;&gt;E-mail:yongfeili@gmail.com&lt;/div&gt;&lt;div style=&quot;text-align: left&quot;&gt;Web: &lt;a href=&quot;http://www.symbianer.com&quot; title=&quot;My site&quot;&gt;http://www.symbianer.com&amp;nbsp;&lt;/a&gt;&lt;/div&gt;</dc:description>
      
    <dc:subject>Games</dc:subject>
     
    
  <dc:date>2007-11-20T03:16:46Z</dc:date>
    <dc:creator>cool_li</dc:creator>
 </item>
  <item rdf:about="http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog/2006/07/20/making-timeline-control">
  <title>Making TimeLine Control</title>
  <link>http://blogs.forum.nokia.com/blog/li-yongfeis-forum-nokia-blog/2006/07/20/making-timeline-control</link>
  <dc:description>&lt;div class=&quot;post-body&quot;&gt;The timelnie in puzzle games, lifetime in fighting games, that is a very normol element.&lt;br /&gt;The following article will tell you how to make a timeline control step by step in S60.&lt;br /&gt;&lt;br /&gt;Author Website: &lt;a href=&quot;http://www.symbianer.com&quot;&gt;http://www.symbianer.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The keywords of artile: window, custom control, time, periodic.&lt;br /&gt;&lt;img src=&quot;https://blogs.forum.nokia.com/file.html?id=203&amp;amp;file=timeline.gif&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;Frist, you need reffer to tow articles&lt;br /&gt;I.Symbian OS: Creating Custom Controls&lt;br /&gt;you can download here&amp;gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;II.Periodic timer active object.&lt;br /&gt;Developer Library &amp;gt;&amp;gt; API Reference &amp;gt;&amp;gt; C++ API reference &amp;gt;&amp;gt; Timers and Timing Services &amp;gt;&amp;gt; CPeriodic&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;1. Class Declaration:&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;margin-left: 1em;&quot;&gt;&lt;em&gt;Code:&lt;/em&gt;&lt;/div&gt;
&lt;div style=&quot;border: 1px solid rgb(105, 140, 195); margin: 3px 1em 1em; padding: 8px; background-color: rgb(238, 238, 238);&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;class CMyTimerContainer : public CCoeControl&lt;br /&gt;{&lt;br /&gt;&amp;#160;public:&lt;br /&gt;&amp;#160; &amp;#160;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; void ConstructL(TInt aSecond ,TPoint aPoint, TSize aSize); // Initialize Seconds, Position, Size Of Timeline Control&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ~CMyTimerContainer();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; void Draw(const TRect&amp;amp; aRect) const;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; static TInt Start__(TAny* aObject);&amp;#160;&amp;#160; &amp;#160;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; void Start_();&lt;br /&gt;private: //data&lt;br /&gt;&lt;br /&gt;&amp;#160; CPeriodic* iPeriodic;&lt;br /&gt;&amp;#160; TInt iLeft; //Left times&lt;br /&gt;&amp;#160; TInt iTotal;//Total times&lt;br /&gt;&amp;#160; TPoint iPoint; //control position,&lt;br /&gt;&amp;#160; TSize iSize; //Control size&lt;br /&gt;}&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;font-weight: bold; color: rgb(0, 0, 0);&quot;&gt;2. Periodic Functions:&lt;/span&gt;&lt;/font&gt;&lt;br /&gt;
&lt;div style=&quot;margin-left: 1em;&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;em&gt;Code:&lt;/em&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;border: 1px solid rgb(105, 140, 195); margin: 3px 1em 1em; padding: 8px; background-color: rgb(238, 238, 238); color: rgb(51, 153, 102);&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;TInt CMyTimerContainer::Start__(TAny* aObject)&lt;br /&gt;{&lt;br /&gt;&amp;#160; ((CMyTimerContainer*)aObject)-&amp;gt;Start_(); // cast, and call non-static function&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; return 1;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void CMyTimerContainer::Start_()&lt;br /&gt;{&lt;br /&gt;&amp;#160; iLeft--;&lt;br /&gt;&amp;#160; if(iLeft==0)&lt;br /&gt;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; DrawNow();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iPeriodic-&amp;gt;Cancel();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; return;&lt;br /&gt;&amp;#160; }&lt;br /&gt;&amp;#160; DrawNow();&lt;br /&gt;}&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;font-weight: bold; color: rgb(0, 0, 0);&quot;&gt;3. Draw Funciton&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;em&gt;Code:&lt;/em&gt;&lt;/font&gt;
&lt;div style=&quot;border: 1px solid rgb(105, 140, 195); margin: 3px 1em 1em; padding: 8px; background-color: rgb(238, 238, 238); color: rgb(51, 153, 102);&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;void CMyTimerContainer::Draw(const TRect&amp;amp; aRect) const&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; CWindowGc&amp;amp; gc = SystemGc();&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; /*Draw BackGround*************************/&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; gc.SetBrushColor( KRgbBlack );&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; gc.SetBrushStyle( CGraphicsContext::ESolidBrush );&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; gc.DrawRect(aRect);&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; /*Drar Timeline*************************/&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; gc.SetBrushStyle( CGraphicsContext::ESolidBrush );&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; gc.SetBrushColor( KRgbRed );&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; gc.SetPenStyle( CGraphicsContext::ENullPen );&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; gc.DrawRect( TRect(TSize(iLeft*Size().iWidth/iTotal,iSize.iHeight)) );&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#008000&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold; color: rgb(0, 0, 0);&quot;&gt;4. Construct Function&lt;/span&gt;&lt;br /&gt; &lt;/font&gt;
&lt;div style=&quot;margin-left: 1em;&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;em&gt;Code:&lt;/em&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;border: 1px solid rgb(105, 140, 195); margin: 3px 1em 1em; padding: 8px; background-color: rgb(238, 238, 238); color: rgb(51, 153, 102);&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;void CMyTimerContainer::ConstructL(TInt aSecond ,TPoint aPoint, TSize aSize)&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; CreateWindowL();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iTotal = aSecond;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iLeft = iTotal;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iPoint = aPoint;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iSize = aSize;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iPeriodic = CPeriodic::NewL(CActive::EPriorityIdle);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iPeriodic-&amp;gt;Start(0/*8000000*/, 1000000/*35714*/, TCallBack(Start__, this));&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; SetExtent(aPoint,aSize);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ActivateL();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#008000&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold; color: rgb(0, 0, 0);&quot;&gt;5. How To Use The Timeline Custom Control&lt;/span&gt;&lt;br /&gt; &lt;/font&gt;
&lt;div style=&quot;margin-left: 1em;&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;em&gt;Code:&lt;/em&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;border: 1px solid rgb(105, 140, 195); margin: 3px 1em 1em; padding: 8px; background-color: rgb(238, 238, 238); color: rgb(51, 153, 102);&quot;&gt;&lt;font color=&quot;#008000&quot;&gt;a.Add Custom Control in XXXContainer.h&lt;br /&gt;&amp;#160;&amp;#160; private: //data&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; CMyTimerContainer* iTimer;&lt;br /&gt;&lt;br /&gt;b,Initialize Seconds, Position, Size Of Timeline Control&lt;br /&gt;void CXXXXContainer::ConstructL(const TRect&amp;amp; aRect)&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; CreateWindowL();&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iTimer =&amp;#160; new (ELeave) CMyTimerContainer;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; iTimer-&amp;gt;ConstructL( 60/*init seconds*/,TPoint(0,100),TSize(176,15),this);&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; SetRect(aRect);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ActivateL();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;You can reffer to the codes of article to modify your codes. Welcome to &lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;comment&amp;#160; &lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;here.&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://www.symbianer.com/UserFiles/File/sis/TimeLiner-control.rar&quot;&gt;Download&amp;#160;Source  Codes&amp;gt;&amp;gt;&lt;/a&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt; &lt;br /&gt;English Version: &lt;a target=&quot;_blank&quot; href=&quot;http://www.symbianer.com/post/custom-control-timeline-en.html&quot;&gt;http://www.symbianer.com/post/custom-control-timeline-en.html&lt;/a&gt;&lt;br /&gt;Chinese Version: &lt;a href=&quot;http://www.symbianer.com/post/custom-control-timeline.html&quot;&gt;http://www.symbianer.com/post/custom-control-timeline.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mail: N-office@163.com&lt;br /&gt;Website: &lt;a href=&quot;http://www.symbianer.com&quot;&gt;http://www.symbianer.com&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;/span&gt;&lt;font color=&quot;#008000&quot;&gt;&lt;br style=&quot;color: rgb(0, 0, 0);&quot; /&gt;&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;</dc:description>
      
    <dc:subject>Games</dc:subject>
      
    <dc:subject>S60</dc:subject>
      
    <dc:subject>Symbian C++</dc:subject>
     
    
  <dc:date>2006-07-20T10:44:28Z</dc:date>
    <dc:creator>cool_li</dc:creator>
 </item>
 </rdf:RDF>