Navigation Pane API SpecificationChanges in Navigation Pane API documentation
Changes in Navigation Pane API
PurposeThe principal use of the navigation pane is to display information about the current state and view, and to help the user navigate in the application. The pane can contain tabs, a navigation label, a navigation image, a hint text, a volume control indicator or editor indicators. Navigation pane can be used to help switch between different views of the application using tabs, displaying the progress of an ongoing process, or just a note, that gives the user some additional information. Navigation pane is a sub pane of the Status pane. API descriptionNavigation Pane API provides support for accessing the application’s navigation pane. Each application has its own navigation pane.
The navigation pane control contains factory methods for each pre-implemented
navigation pane control type:
The navigation pane contains an object stack. The navigation decorator objects can be pushed in and popped out to/from the navigation pane stack. The topmost object on the navigation pane control stack is shown in the pane. Only the editor indicators have priority over others. The editor indicator control is always on top if it exists in the stack. When a navigation decorator object is deleted, it is popped out from the navigation pane control stack automatically. Explicit pop operation is not needed.
Navigation Pane API’s most important classes are
Navigation pane controls can be created at runtime, or from resource files,
using the
Navigation Pane API can be used by any application that is designed to show information outside the view area of the application. Use casesThe main use cases of Navigation Pane API are:
API class structure
Navigation Pane API contains small number of classes providing functionality
of the interface. The main classes are:
Related APIs
Related APIs
Using Navigation Pane API
Navigation paneNavigation pane consists of a navigation decorators, and a navigation decorator controls. The navigation pane decorator control can be a label, tab group, or volume control. The control inside the navigation pane can be accessed by the containing decorator. Accessing the default navigation pane control
When using Navigation Pane API, the first step is to access a pointer to
the application’s status pane by calling the
The status pane layout is read from AVKON resources. The layout resource
contains also information about the control that is put inside the sub panes.
It depends on the status pane layout if
Related APIs
Creating navigation pane from resource with a label control
The first step of creating a navigation pane is to specify the status pane
and the navigation pane decorator resources. Status pane’s ID and type field
values are defined in
avkon.hrh
. Decorator's resource type is defined
as
Related APIs
Navigation pane decorator buttons and eventsManipulating decorator buttons
Navigation pane buttons are shown as arrows at both ends of the navigation
pane. Each button's dimness can be changed independently. Note that navigation
pane buttons are not visible by default.
Related APIs
Observing decorator events
Decorator can send the
In the example,
Register this object to decorator, so the object receives events.
Related APIs
Using navigation pane's control stack
To make navigation pane decorators visible on navigation pane, decorator
objects must be put on the navigation pane’s control stack. The topmost object
on the navigation pane control stack is shown in the pane. The decorators
can be popped, replaced, and pushed to the stack. If the same decorator is
pushed to the stack, and the same decorator was already on the stack, then
that decorator becomes the topmost object on the stack, and is shown in the
pane. In the following example
Related APIs
Navigation pane decorator and label controlCreating decorator dynamically from resource with a label controlCreate navigation pane decorator in resource file.
A navigation pane decorator resource identifier is passed to
In the following example
Related APIs
Creating decorator dynamically with a label control
Navigation pane decorator objects can also be created dynamically. First
a label object must be created, that later is added to the navigation decorator
object. In the example below
Related APIs
Accessing decorator created from resource
This example shows how to get the decorator object that was constructed
from resources as described in the
API
description
.
Related APIs
Setting text of label control in decoratorIt is very simple to change the text of the label control.
This example shows how to change the label if the navigation pane was constructed from resource.
Getting text of label control in decoratorIn this example the text of the label is displayed as an info message.
Creating a decorator with a label in a single call
Decorator and the required label control can be created easily with this
function. The method
Related APIs
Error handlingNavigation Pane API uses standard Symbian platform error reporting mechanism. Possible panic circumstances and panic codes are indicated in class or method descriptions. Leaves and system wide error codes as function return values are used if the error is recoverable. A client application can handle these errors similarly as a normal Symbian platform application. GlossaryAbbreviationsNavigation Pane API abbreviations
DefinitionsNavigation Pane API definitions
|