Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.
Using skins in a Symbian C++ app
This article shows a simple one-line change to make your Symbian application skin-aware.
To make an application skin aware you need to add the following line to the in the appUI’s ConstructL():
In a skin-aware application, skins are applied to all standard S60 controls, for instance search boxes, list boxes and grids. If BaseConstructL() is not called with this parameter, only the following controls are drawn using skins: menus, note and query dialogs, the control and status panes, the fast swap window.
To draw non-standard, custom controls and container controls using skins, you need to use the skin-drawing utility class AknsDraw-Utils (the Akns prefix stands for Avkon Skins). Before you can do this, you first need to get the currently active skin by calling Akns-Utils::SkinInstance(), and non-container controls also need to call AknsDrawUtils::ControlContext() to get the skin control context.