×
Namespaces

Variants
Actions
(Difference between revisions)

Avoid reserved IDs in Symbian resource file enumerations (Known Issue)

From Nokia Developer Wiki
Jump to: navigation, search
Forum Nokia KB (Talk | contribs)
m (1 revision(s))
hamishwillee (Talk | contribs)
m (Hamishwillee - Add Abstract. Tidy wiki text.)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Review]]
+
[[Category:Symbian C++]][[Category:UI]]
[[Category:Technical Solution]]
+
{{Abstract|Symbian C++ apps that set resource file UI menu item command IDs and dialog item ID values of 0 will cause problems which may be hard to identify and debug.}}
[[Category:Symbian C++]]
+
{{ArticleMetaData <!-- v1.2 -->
[[Category:UI]]
+
|sourcecode= <!-- Link to example source code (e.g. [[Media:The Code Example ZIP.zip]]) -->
__NOTOC__
+
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
__NOEDITSECTION__
+
|devices= <!-- Devices tested against - e.g. ''devices=Nokia 6131 NFC, Nokia C7-00'') -->
{{KBKI}}
+
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Nokia Qt SDK 1.1]) -->
{{KnowledgeBase
+
|id=TSS000199
+
 
|platform= S60 (all)
 
|platform= S60 (all)
|devices=
+
|devicecompatability= <!-- Compatible devices (e.g.: All* (must have GPS) ) -->
|category=Symbian C++
+
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
|subcategory=UI, UI Components
+
|signing= <!-- Empty or one of Self-Signed, DevCert, Manufacturer -->
|creationdate=April 7, 2005, updated October 14, 2008
+
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
|keywords=
+
|keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase -->
 +
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
 +
|translated-by= <!-- [[User:XXXX]] -->
 +
|translated-from-title= <!-- Title only -->
 +
|translated-from-id= <!-- Id of translated revision -->
 +
|review-by= <!-- After re-review: [[User:username]] -->
 +
|review-timestamp= <!-- After re-review: YYYYMMDD -->
 +
|update-by= <!-- After significant update: [[User:username]]-->
 +
|update-timestamp= <!-- After significant update: YYYYMMDD -->
 +
|creationdate= April 7, 2005, updated October 14, 2008
 +
|author= [[User:Technical writer 1]]
 +
<!-- The following are not in current metadata -->
 +
|id= TSS000199
 
}}
 
}}
 
 
==Overview==
 
 
Menu item command IDs and dialog item ID values of 0 will cause problems which may be hard to identify and debug.
 
 
  
 
==Detailed description==
 
==Detailed description==
  
Menu item (RESOURCE MENU_ITEM) command IDs and dialog item (RESOURCE DLG_LINE) will cause problems which may be hard to identify and debug if 0 is used as the ID value.
+
Menu item ({{Icode|RESOURCE MENU_ITEM}}) command IDs and dialog item ({{Icode|RESOURCE DLG_LINE}}) will cause problems which may be hard to identify and debug if 0 is used as the ID value.
 
+
  
 
==Solution==
 
==Solution==
  
Always use a non-zero value for MENU_ITEM command IDs, because 0 is reserved for the <tt>EEikCmdCanceled</tt> command.
+
Always use a non-zero value for {{Icode|MENU_ITEM}} command IDs, because 0 is reserved for the {{Icode|EEikCmdCanceled}} command.
  
Similarly, a dialog's item (DLG_LINE) IDs must be non-zero. Dialog items with a zero ID will result in "Eikon-Dialog 3" panic, where 3 is listed as <tt>EEikDialogPanicFocusableLineWithIdZero</tt>.
+
Similarly, a dialog's item (DLG_LINE) IDs must be non-zero. Dialog items with a zero ID will result in "Eikon-Dialog 3" panic, where 3 is listed as {{Icode|EEikDialogPanicFocusableLineWithIdZero}}.
  
 
Typically, applications define resource ID values as enumerations and a common mistake is to begin the enumeration from 0 (default), which leads to these hard-to-identify problems.
 
Typically, applications define resource ID values as enumerations and a common mistake is to begin the enumeration from 0 (default), which leads to these hard-to-identify problems.
 +
 +
<!-- Translation --> [[zh-hans:防止资源文件枚举值中出现保留ID值]]

Latest revision as of 07:41, 12 March 2012

Symbian C++ apps that set resource file UI menu item command IDs and dialog item ID values of 0 will cause problems which may be hard to identify and debug.

Article Metadata
Compatibility
Platform(s): S60 (all)
Article
Created: User:Technical writer 1 (April 7, 2005, updated October 14, 2008)
Last edited: hamishwillee (12 Mar 2012)

[edit] Detailed description

Menu item (RESOURCE MENU_ITEM) command IDs and dialog item (RESOURCE DLG_LINE) will cause problems which may be hard to identify and debug if 0 is used as the ID value.

[edit] Solution

Always use a non-zero value for MENU_ITEM command IDs, because 0 is reserved for the EEikCmdCanceled command.

Similarly, a dialog's item (DLG_LINE) IDs must be non-zero. Dialog items with a zero ID will result in "Eikon-Dialog 3" panic, where 3 is listed as EEikDialogPanicFocusableLineWithIdZero.

Typically, applications define resource ID values as enumerations and a common mistake is to begin the enumeration from 0 (default), which leads to these hard-to-identify problems.

This page was last modified on 12 March 2012, at 07:41.
62 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×