Symbian3/SDK/Source/GUID-2B7F7484-3A44-4A96-9B5D-79DF8A09115A.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-2B7F7484-3A44-4A96-9B5D-79DF8A09115A" xml:lang="en"><title>How resource
files work</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>In the Symbian platform, <xref href="GUID-5F749184-C804-41FC-BA81-038783BDC967.dita">resource</xref> files
are used to define UI components used in applications. The UI components consist
of data structures that are defined in resource files, and then are loaded
by the classes controlling the UI implementation. When UI component implementation
is split into these two approaches, it means that resources can be recompiled,
for example for new languages, without having to recompile the application
code (unless you change the resource identifiers).</p>
<p>The following resource files are typically used as source files in Symbian
applications:</p>
<ul>
<li><p><codeph>.rss</codeph> – resource source files used for UI
components in the application. For more information, see <xref href="GUID-EC49B54F-7724-433B-BD7F-201DE3B7DAA6.dita">Resource
file structure</xref>, <xref href="GUID-23A60DE7-B72D-41BD-9F1E-882D31A7E3C7.dita">Required
resource file statements</xref>, and <xref href="GUID-2C74E932-B1CA-434B-AF96-66D52D689620.dita">Optional
resource file statements</xref>.</p>
</li>
<li><p><codeph>_reg.rss</codeph> – resource source file used for
registration. For more information, see <xref href="GUID-BF1AAA0D-DF2F-4E1D-A0D2-F419BD32F97A.dita">Creating
registration resource files</xref>.</p>
</li>
<li><p><codeph>.hrh</codeph> – resource header file used to define
enumerated sets of values. For more information, see <xref href="GUID-D52E98C3-F5EE-4CE1-A4F5-2EF41A066B8A.dita">Creating
resource header files</xref>.</p>
</li>
<li><p><codeph>.rls</codeph> – localisation files used as a source
for UI texts strings in applications, and for managing these texts. For more
information, see <xref href="GUID-E111C4E8-1342-4E87-ACB4-5B630AF1501C.dita">Internationalization
and localization</xref>.</p>
</li>
</ul>
<p>The structures and symbolic IDs of these files are used in various ways
in your code.</p>
<p> The resource files above are then compiled to yield the following files:</p>
<ul>
<li><p><codeph>.rsc</codeph> or <parmname>rNN</parmname>, where
NN is a two number Symbian locale ID - compiled, machine-readable resource
files used by the application</p>
<itemgroup/>
</li>
<li><p><codeph>.rsg</codeph> - generated resource header file containing
the symbolic IDs of the resources for inclusion into your code</p></li>
<li><p><codeph> _reg.rsc</codeph> or <parmname>_reg.rNN</parmname>,
where NN is a two number Symbian locale ID - compiled, machine-readable resource
file used for registration </p></li>
</ul>
<p>The <parmname>rsc</parmname>, <parmname>rNN</parmname>, and <parmname>_reg.rsc</parmname> files
need to be included in your <parmname>sis</parmname> <xref href="GUID-61EE2BE0-7B86-42CD-A03F-857DD8FAC246.dita">installation
file</xref> so that they are placed in the device when the application is <xref href="GUID-3BB12D99-8CD7-47B0-A788-C85EF206806C.dita">installed</xref>.</p>
<p>When the application framework launches an application, it loads the
application resource file. The application framework compares the system locale
language setting with the available resource files, and loads the resource
file whose extension matches the locale language code. If there is no match,
then the system loads the resource file with the extension <parmname>rsc</parmname>.</p>
</conbody></concept>