You Are Here:

S60 5th Edition: Solitaire Game Example

Register Today

Register with Forum Nokia now and you'll enjoy the full benefits of the Forum Nokia membership.

Register Login
Forum Nokia Events

MobileMonday Italy: The User Applications
November 23, 2009
Rome

Nokia Developer Days in South Africa
December 01, 2009
Johannesburg, South Africa

Forum Nokia Developer Conference ’09, India
December 07, 2009
Bangalore, India

LeWeb
December 09, 2009
Paris

Web Runtime Coding With Aptana WRT Plug-in
December 09, 2009
9am New York | 2pm London | 4pm Helsinki


View all
description:

Solitaire screen shotThis C++ example application demonstrates a fully touch-optimised application using various touch UI features of S60 5th Edition with direct manipulation. Besides tapping the cards, the user can drag and drop them using a finger or the stylus.

The application demonstrates handling pointer events of custom made UI controls. Also, tactile feedback using the Touch Feedback API is received. Double buffering is used to draw on the screen to avoid flickering. By default, the cards are implemented as Scalable Vector Graphics (SVG) icons, but the example also provides an option to draw them using methods of the graphics context class CWindowGc. In the updated version, major drawing optimisation has been done.

Important classes: CCoeControl, MTouchFeedback, CFbsBitmap, CWindowGc.


type: Example
topics: Entertainment
     Games
Graphics
     SVG
S60
     S60 5th Edition
Symbian C++
UI
     Touch UI
intended audience: Advanced

http://sw.nokia.com/FN-1/Type/Example S60 5th Edition: Solitaire Game Example v1.1

This updated C++ example application demonstrates a fully touch-optimised application using various touch UI features of S60 5th Edition with direct manipulation. Besides tapping the cards, the user can drag and drop them using a finger or the stylus. The application demonstrates handling pointer events of custom made UI controls. Also, tactile feedback using the Touch Feedback API is received. Double buffering is used to draw on the screen to avoid flickering. By default, the cards are implemented as Scalable Vector Graphics (SVG) icons, but the example also provides an option to draw them using methods of the graphics context class CWindowGc. In the updated version, major drawing optimisation has been done. The example application was developed for S60 5th Edition and touch UI. Important classes: CCoeControl, MTouchFeedback, CFbsBitmap, CWindowGc.

02-Mar-2009


Download



Additional information

distribution: Forum Nokia Global Web Site
S60 Web Site
publication rights: Copyright © 2008-2009 Nokia Corporation.

<< Back to Previous Page

 

Rate This:

Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
User Rating: qfnZuserE5FratingQNx5E2E0000X
RDF Facets: qfnZuserE5FtagQSxnokiaE205800X
RDF Facets: qdcZdescriptionQSxThisE20CE2bE2bE20eE78ampleE20applicationE20demonstratesE20aE20fullyE20touchE2doptimisedE20applicationE20usingE20variousE20touchE20UIE20featuresE20ofE20S60E205thE20E45ditionE20withE20directE20manipulationE2eE20BesidesE20tappingE20theE20cardsE2cE20theE20userE20canE20dragE20andE20dropE20themE20usingE20aE20fingerE20orE20theE20stylusE2eE20TheE20applicationE20demonstratesE20handlingE20pointerE20eventsE20ofE20customE20madeE20UIE20controlsE2eE20AlsoE2cE20tactileE20feedbackE20usingE20theE20TouchE20FeedbackE20APIE20isE20receivedE2eE20E44oubleE20bufferingE20isE20usedE20toE20drawE20onE20theE20screenE20toE20avoidE20flickeringE2eE20ByE20defaultE2cE20theE20cardsE20areE20implementedE20asE20ScalableE20VectorE20GraphicsE20E28SVGE29E20iconsE2cE20butE20theE20eE78ampleE20alsoE20providesE20anE20optionE20toE20drawE20themE20usingE20methodsE20ofE20theE20graphicsE20conteE78tE20classE20CWindowGcE2eE20InE20theE20updatedE20versionE2cE20majorE20drawingE20optimisationE20hasE20beenE20doneE2eE20TheE20eE78ampleE20applicationE20wasE20developedE20forE20S60E205thE20E45ditionE20andE20touchE20UIE2eE20ImportantE20classesE3aE20CCoeControlE2cE20MTouchFeedbackE2cE20CFbsBitmapE2cE20CWindowGcE2eX qdcZidentifierQSxhttpE3aE2fE2fswE2enokiaE2ecomE2fidE2f6e12c32aE2d5c7fE2d4829E2d8dfbE2dba7aaaca63faE2fS60E5f5thE5fE45ditionE5fSolitaireE5fGameE5fE45E78ampleX qdcZtitleQSxS60E205thE20E45ditionE3aE20SolitaireE20GameE20E45E78ampleX qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfnZE45E78cludedFromSearchQ qdcZtypeQUqfnZPrimaryE52esourceQ qdcZtypeQUqfntypeZApplicationQ qdcZtypeQUqfntypeZE45E78ampleQ qdcZtypeQUqfntypeZE52esourceQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqmarsZMediaObjectQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qrssZdescriptionQSxThisE20CE2bE2bE20eE78ampleE20applicationE20demonstratesE20aE20fullyE20touchE2doptimisedE20applicationE20usingE20variousE20touchE20UIE20featuresE20ofE20S60E205thE20E45ditionE20withE20directE20manipulationE2eE20BesidesE20tappingE20theE20cardsE2cE20theE20userE20canE20dragE20andE20dropE20themE20usingE20aE20fingerE20orE20theE20stylusE2eE20TheE20applicationE20demonstratesE20handlingE20pointerE20eventsE20ofE20customE20madeE20UIE20controlsE2eE20AlsoE2cE20tactileE20feedbackE20usingE20theE20TouchE20FeedbackE20APIE20isE20receivedE2eE20E44oubleE20bufferingE20isE20usedE20toE20drawE20onE20theE20screenE20toE20avoidE20flickeringE2eE20ByE20defaultE2cE20theE20cardsE20areE20implementedE20asE20ScalableE20VectorE20GraphicsE20E28SVGE29E20iconsE2cE20butE20theE20eE78ampleE20alsoE20providesE20anE20optionE20toE20drawE20themE20usingE20methodsE20ofE20theE20graphicsE20conteE78tE20classE20CWindowGcE2eE20InE20theE20updatedE20versionE2cE20majorE20drawingE20optimisationE20hasE20beenE20doneE2eE20TheE20eE78ampleE20applicationE20wasE20developedE20forE20S60E205thE20E45ditionE20andE20touchE20UIE2eE20ImportantE20classesE3aE20CCoeControlE2cE20MTouchFeedbackE2cE20CFbsBitmapE2cE20CWindowGcE2eX qrssZtitleQSxS60E205thE20E45ditionE3aE20SolitaireE20GameE20E45E78ampleX qeditorZdescriptionE5fcreatedQDx2008E2d09E2d19T12E3a08E3a25E5aX qeditorZdescriptionE5fmodifiedQDx2009E2d03E2d02T06E3a35E3a02E5aX qeditorZtypeQUqfntypeZApplicationQ qeditorZtypeQUqfntypeZE45E78ampleQ qeditorZtypeQUqfntypeZE52esourceQ qfnZallowedE5fcountryE5fgroupQUqfnCountryGroupZBQ qfnZaudienceQUqfnAudienceZadvancedQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZaudienceQUqfnAudienceZtechnicalQRqmarsZrelevanceQNx100X qfnZdistributionQUxhttpE3aE2fE2fforumE2enokiaE2ecomE2fX qfnZdistributionQUxhttpE3aE2fE2fwwwE2es60E2ecomE2fX qfnZeE78portE5fcontrolE5fcommodityE5fnumberQSx99X qfnZpublishedQDx2009E2d03E2d02T18E3a55E3a00E5aX qfnZtopicQUqfnTopicZcppQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZentertainmentQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZgamesQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZgraphicsQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZseriesE5f60QRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZseriesE5f60E5f5edQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZsvgQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZtouchE5fuiQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZuiQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtypeQUqfntypeZApplicationQ qfnZtypeQUqfntypeZE45E78ampleQ qfnZtypeQUqfntypeZE52esourceQ qfnZusE5foriginQLqE78sdZbooleanQxtrueX qfnZE78mlE5fdescriptionQXxE0aE3cspanE20E78mlnsE3dE22httpE3aE2fE2fwwwE2ew3E2eorgE2f1999E2fE78htmlE22E3eE3cpE3eE3cimgE20altE3dE22SolitaireE20screenE20shotE22E20hspaceE3dE2212E22E20alignE3dE22rightE22E20srcE3dE22httpE3aE2fE2fwwwE2eforumE2enokiaE2ecomE2fpicsE2fSolitaireE2ejpgE22E3eE3cE2fimgE3eThisE20CE2bE2bE20eE78ampleE20applicationE20demonstratesE20aE20fullyE20touchE2doptimisedE20applicationE20usingE20variousE20touchE20UIE20featuresE20ofE20S60E205thE20E45ditionE20withE20directE20manipulationE2eE20BesidesE20tappingE20theE20cardsE2cE20theE20userE20canE20dragE20andE20dropE20themE20usingE20aE20fingerE20orE20theE20stylusE2eE3cbrE3eE3cE2fbrE3eE3cbrE3eE3cE2fbrE3eTheE20applicationE20demonstratesE20handlingE20pointerE20eventsE20ofE20customE20madeE20UIE20controlsE2eE20AlsoE2cE20tactileE20feedbackE20usingE20theE20TouchE20FeedbackE20APIE20isE20receivedE2eE20E44oubleE20bufferingE20isE20usedE20toE20drawE20onE20theE20screenE20toE20avoidE20flickeringE2eE20ByE20defaultE2cE20theE20cardsE20areE20implementedE20asE20ScalableE20VectorE20GraphicsE20E28SVGE29E20iconsE2cE20butE20theE20eE78ampleE20alsoE20providesE20anE20optionE20toE20drawE20themE20usingE20methodsE20ofE20theE20graphicsE20conteE78tE20classE20CWindowGcE2eE20InE20theE20updatedE20versionE2cE20majorE20drawingE20optimisationE20hasE20beenE20doneE2eE3cbrE3eE3cE2fbrE3eE3cbrE3eE3cE2fbrE3eImportantE20classesE3aE20CCoeControlE2cE20MTouchFeedbackE2cE20CFbsBitmapE2cE20CWindowGcE2eE3cE2fpE3eE3cE2fspanE3eE20E20E20E20E20E20X qmarsZdescriptionQSxThisE20CE2bE2bE20eE78ampleE20applicationE20demonstratesE20aE20fullyE20touchE2doptimisedE20applicationE20usingE20variousE20touchE20UIE20featuresE20ofE20S60E205thE20E45ditionE20withE20directE20manipulationE2eE20BesidesE20tappingE20theE20cardsE2cE20theE20userE20canE20dragE20andE20dropE20themE20usingE20aE20fingerE20orE20theE20stylusE2eE20TheE20applicationE20demonstratesE20handlingE20pointerE20eventsE20ofE20customE20madeE20UIE20controlsE2eE20AlsoE2cE20tactileE20feedbackE20usingE20theE20TouchE20FeedbackE20APIE20isE20receivedE2eE20E44oubleE20bufferingE20isE20usedE20toE20drawE20onE20theE20screenE20toE20avoidE20flickeringE2eE20ByE20defaultE2cE20theE20cardsE20areE20implementedE20asE20ScalableE20VectorE20GraphicsE20E28SVGE29E20iconsE2cE20butE20theE20eE78ampleE20alsoE20providesE20anE20optionE20toE20drawE20themE20usingE20methodsE20ofE20theE20graphicsE20conteE78tE20classE20CWindowGcE2eE20InE20theE20updatedE20versionE2cE20majorE20drawingE20optimisationE20hasE20beenE20doneE2eE20TheE20eE78ampleE20applicationE20wasE20developedE20forE20S60E205thE20E45ditionE20andE20touchE20UIE2eE20ImportantE20classesE3aE20CCoeControlE2cE20MTouchFeedbackE2cE20CFbsBitmapE2cE20CWindowGcE2eX qmarsZhasInstanceQUxhttpE3aE2fE2fswE2enokiaE2ecomE2fidE2fa544fb72E2dc335E2d42c2E2d9707E2d8d1abeb332e0E2fS60E5f5thE5fE45ditionE5fSolitaireE5fGameE5fE45E78ampleE5fv1E5f1E5fenE2ezipX qmarsZhasInstanceQUxhttpE3aE2fE2fswE2enokiaE2ecomE2fidE2fddb1d1faE2d799fE2d4987E2db2b3E2d4d1f9b0b011cE2fS60E5f5thE5fE45ditionE5fSolitaireE5fGameE5fE45E78ampleE5fv1E5f0E5fenE2ezipX qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qmarsZtitleQSxS60E205thE20E45ditionE3aE20SolitaireE20GameE20E45E78ampleX qncZrightsQSxCopyrightE20Ea9E202008E2d2009E20NokiaE20CorporationE2eX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfnZE45E78cludedFromSearchQ qrdfZtypeQUqfnZPrimaryE52esourceQ qrdfZtypeQUqfntypeZApplicationQ qrdfZtypeQUqfntypeZE45E78ampleQ qrdfZtypeQUqfntypeZE52esourceQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqmarsZMediaObjectQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ