| Note! |
|---|
|
Settings Framework is an application used for viewing dynamic plug-ins.
This will load the plug-ins dynamically using ECom Architecture.
It is designed to handle the minimum amount of plug-in related logic.
All the plug-ins are implemented based on the ECom Plug-in Architecture.
Creation of a General Setting Plug-in can be done directly by implementing CGSPluginInterface, or indirectly from the CGSBaseView. The Plug-in View class can be inherited from above classes based on the requirement. Create a container level class that implements the visualization of the plug-in view. Container level classes should be created when the view is activated
and destroyed when the view is deactivated.
CGSBaseView:
This class provides the common functionality in CAknView and CGSPluginInterface classes. One can inherit this class and implement the common functionality.
The responsibilities of the view level classes are:
TUid Id() const; // from CAknView
This returns the current view id.
void DoActivateL(
const TVwsViewId& aPrevViewId,
TUid /* aCustomMessageId */,
const TDesC8& /* aCustomMessage */); // from CAknView, incase of multiple views
This function should call the NewContainerL() where a new instance of the container is created and add the container to the control stack.
void DoDeactivate(); // from CAknView, incase of multiple views
This function should remove container from the control stack and delete it.
void ConstructL();
void NewContainerL();
Create an instance of Container here.
void HandleListBoxSelectionL(); // from MEikListBoxObserver
void GetCaptionL( TDes& aCaption ); //from CGSPluginInterface
This function is used in getting caption of this plugin.
CGSBaseContainer:
This class provides the common functionality for the CCoeControl classes. So a container level class can derive from this to implement the common functionality.
The container level class responsibilities are:
void ConstructL();
BaseConstructL( const TRect& aRect, TInt aResTitleId, TInt aResLbxId );
This API internally calls ConstructListBoxL() which constructs the ListBox.
void UpdateListBoxL();
The following is the link to the Example Project:
No related wiki articles found