Hierarchical Lists API - as the name suggests, provides an interface for end user applications to present data structures in a hierarchical list format available since S60 Release 5.0 and onwards.
Contents |
- Single style hierarchical list.
#include <aknsinglestyletreelist.h>
LIBRARY aknhlist.lib
Capabilities - None
Code can be Self Signed.
// where iTreeList is CAknSingleStyleTreeList*
iTreeList = CAknSingleStyleTreeList::NewL();
iTreeList->SetRect(aRect);
void CListExample::ConstructTreeL()
{
_LIT( KParentNode, "Node" );
_LIT( KSubNode, "SubNode" );
_LIT( KLeaf1, "Leaf1" );
_LIT( KLeaf2, "Leaf2" );
// Prepare Node
TUint32 flags1 = CAknSingleStyleTreeList::EPersistent;
TAknTreeItemID mainNode = iTreeList->AddNodeL( KAknTreeIIDRoot, KParentNode,
flags1, EFalse );
// Add leaf to Main Node
TAknTreeItemID leaf1 = iTreeList->AddLeafL( mainNode, KLeaf1, flags1, EFalse );
// Setting it to expanded by default
TUint32 flags2 = CAknSingleStyleTreeList::EExpanded;
// Add another Node under Main Node
TAknTreeItemID subNode = iTreeList->AddNodeL( mainNode, KSubNode,
flags2, EFalse );
// Add Leaf to sub node
TAknTreeItemID leaf2 = iTreeList->AddLeafL( subNode, KLeaf2, flags2, EFalse );
}
// Removing SubNode
iTreeList->RemoveItem( subNode );
// Changing title for Main Node //
iTreeList->SetTextL(mainNode, KSomeText, EFalse );
/*
* Notifications of common hierarhicial list events are sent to the list client through
* MAknTreeListObserver.
*/
class CListExample : public CCoeControl, public MAknTreeListObserver
{
public:
....
/**
* From MAknTreeListObserver
* Notifications of common hierarhicial list events.
*/
TInt HandleTreeListEvent (CAknTreeList &aList, TAknTreeItemID aItem, TEvent aEvent);
....
}
/**
* Register for receiving list events passing MAknTreeListObserver* (i.e CListExample*
* which * already implements MAknTreeListObserver
*/
iTreeList->AddObserverL( this );
- Single style hierarchical column list.
#include <aknsinglecolumnstyletreelist.h>
LIBRARY aknhlist.lib
Capabilities - None
Code can be Self Signed.
// where iTreeList is CAknSingleColumnStyleTreeList*
iTreeList = CAknSingleColumnStyleTreeList::NewL();
iTreeList->SetRect(aRect);
void CListExample::ConstructTreeL()
{
_LIT( KParentNode, "Node" );
_LIT( KSubNode, "SubNode" );
_LIT( KLeaf1, "Leaf1" );
_LIT( KLeaf2, "Leaf2" );
// Prepare Node
TUint32 flags1 = CAknSingleColumnStyleTreeList::EPersistent;
TAknTreeItemID mainNode = iTreeList->AddSubtitleRowL( KAknTreeIIDRoot, KParentNode,
flags1, EFalse );
// Add leaf to Main Node
TAknTreeItemID leaf1 = iTreeList->AddSimpleDataRowL( mainNode, KLeaf1, NULL, EFalse );
// Setting it to expanded by default
TUint32 flags2 = CAknSingleColumnStyleTreeList::EExpanded;
// Add another Node under Main Node
TAknTreeItemID subNode = iTreeList->AddSubtitleRowL( mainNode, KSubNode,
flags2, EFalse );
// Add Leaf to sub node
TAknTreeItemID leaf2 = iTreeList->AddSimpleDataRowL( subNode, KLeaf2, NULL, EFalse);
}
// Removing SubNode
iTreeList->RemoveItem( subNode );
// Changing title for Main Node //
iTreeList->SetTextL(mainNode, KSomeText, EFalse );
/*
* Notifications of common hierarhicial list events are sent to the list client through
* MAknTreeListObserver.
*/
Done in the similar manner as shown above for CAknSingleStyleTreeList.
/**
* Register for receiving list events passing MAknTreeListObserver* (i.e CListExample*
* which * already implements MAknTreeListObserver
*/
iTreeList->AddObserverL( this );
- List cannot be constructed from resources.
- List can be created as both window-owning and non-window-owning.
No related wiki articles found