The Status pane displays status information of the current application and state, as well as general information about the device status, such as signal strength and battery charge. It occupies the top part of the screen and comes in two variants: extended and small. The Status pane may also be totally left out in certain applications or situations.
Extended Status pane is a development of the earlier standard Status pane in S60 that contained a Context pane. Context pane cannot be used any more.
Note: The status pane used in Idle is a modified extended Status pane.
Small Status pane can be used in cases where it is imperative to maximize Main pane area (for example, Browser).
The Status pane contains the following subpanes:
Digital clock
Figure: Status pane areas
The API to use for the status pane is the Status pane API. For implementation information, see Using the status pane API.
Use the Status pane API for the following tasks:
Applications can define and modify the title and navi subpanes. For implementation information on the subpanes in the status pane, see the following APIs:
Title pane API for the title pane
Navigation pane API for the navi pane
Use the method IsAppOwned()
in the class CEikStatusPaneBase::TPaneCapabilities
to test whether
the pane is owned by the application or the server. Applications can only
interact directly with application owned subpanes.
CEikStatusPane
is the interface through which applications
use the status pane. This class synchronises the status pane layout with the
server side status pane object. To do this, the method ApplyCurrentSettingsL()
must be called whenever the
owner application switches to the foreground.
The following options are available for modifying the default behavior of the status pane:
Since the status pane is a compound control, it can be made visible
or invisible like an other control with CCoeControl::MakeVisible()
. CCoeControl::MakeVisible()
can
be called before or after the control is activated. An example of a call to
make the status pane invisible is as follows:
CEikStatusPane* sp = StatusPane();// Gets a pointer to the status pane in the UI controller StatusPane()->MakeVisible(EFalse); //make pane invisible somewhere in your code
Accessing and modifying controls inside the status pane.
The Status Pane API provides methods for accessing the status pane control and modifying the status pane layout.
If you wish to modify panes within the status pane, you need to get a pointer to the status pane and then use one of the following classes and methods:
CAknTitlePane
for
the title subpane
Methods defined by the Navigation pane API for accessing the navi subpane
The Tabs API for accessing tabs in the navi subpane.
Defining new resources for the status pane to override the default behavior
Once you have defined your resources, you may need to use some of the status pane APIs to achieve the desired effect in your application.
For more information, see the Status pane API and Navigation pane API reference documentation.
You could also possibly derive your own classes from the available classes or their base classes to customize your own controls.