diff -r 43e37759235e -r 51a74ef9ed63 Symbian3/SDK/Source/GUID-771AF721-E2D7-41C8-BF97-5BD30D1A28AD.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-771AF721-E2D7-41C8-BF97-5BD30D1A28AD.dita Wed Mar 31 11:11:55 2010 +0100 @@ -0,0 +1,92 @@ + + + + + + Status +pane +

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. The Status pane may also be totally left +out in certain applications or situations.

+

There are three different variations of the Status pane:

Flat and thin Status panes can be used in cases where it is important +to maximize Main pane area (for example, Browser).

+

The Status pane contains the following sub-panes:

+ + +Status pane areas + + +
Using +the status pane in C++ applications

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:

    +
  • Creating the status pane using a resource file

  • +
  • Accessing the status pane

  • +
  • Accessing controls in the status pane's subpanes

  • +
  • Showing and hiding the status pane

  • +
  • Dynamically changing status pane layout

  • +
  • Observing status pane events

  • +

Applications can define and modify the title and navi sub-panes. For +implementation information on the sub-panes 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 CEikStatusPaneBase::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 synchronizes +the status pane layout with the server side status pane object. To do this, +the method CEikStatusPane::ApplyCurrentSettingsL() must +be called whenever the owner application switches to the foreground.

Relationship between events/similar for entire status +pane and sub-panes: should be clearer on what's done where

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 sub-pane

    • +
    • Methods defined by the Navigation pane API for accessing the navi sub-pane

    • +
    • The Tabs API for accessing tabs in the navi sub-pane.

    • +
  • +
  • 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 can also derive your own classes from the available classes or +their base classes to customize your own controls.

  • +
+

For more information on the panes, refer the following:

+
+Related APIs +Skins API + for providing themes support for the status pane + + +
\ No newline at end of file