--- a/phonebookui/Phonebook2/UIControls/inc/cpbk2filteredviewstack.h Fri Mar 12 15:41:25 2010 +0200
+++ b/phonebookui/Phonebook2/UIControls/inc/cpbk2filteredviewstack.h Mon Mar 15 12:39:26 2010 +0200
@@ -32,7 +32,7 @@
class CElementStack;
// CLASS DECLARATION
-
+
/**
* A stack for the base view and filtered views that can be used
* as a contact view. MVPbkContactViewBase reuqests are forwarded
@@ -44,10 +44,11 @@
*/
NONSHARABLE_CLASS(CPbk2FilteredViewStack) : public CBase,
public MPbk2FilteredViewStack,
+ public MVPbkContactViewObserverExtension,
private MVPbkContactViewObserver
{
public: // Constructors and destructor
-
+
/**
* Creates a new instance of this class.
*
@@ -67,29 +68,29 @@
void UpdateFilterL(
- const MDesCArray& aFindStrings,
+ const MDesCArray& aFindStrings,
const MVPbkContactBookmarkCollection* aAlwaysincluded,
TBool aAlwaysIncludedChanged );
-
+
void Reset();
-
+
MVPbkContactViewBase& BaseView() const;
-
-
+
+
void SetNewBaseViewL(
MVPbkContactViewBase& aBaseView );
-
-
+
+
TInt Level() const;
- void AddStackObserverL(
+ void AddStackObserverL(
MPbk2FilteredViewStackObserver& aStackObserver );
-
-
- void RemoveStackObserver(
+
+
+ void RemoveStackObserver(
MPbk2FilteredViewStackObserver& aStackObserver );
-
-
+
+
public: // From MVPbkContactViewBase
TVPbkContactViewType Type() const;
void ChangeSortOrderL(
@@ -109,7 +110,7 @@
MVPbkContactViewObserver& aObserver );
TBool MatchContactStore(
const TDesC& aContactStoreUri ) const;
- TBool MatchContactStoreDomain(
+ TBool MatchContactStoreDomain(
const TDesC& aContactStoreDomain ) const;
MVPbkContactBookmark* CreateBookmarkLC(
TInt aIndex ) const;
@@ -134,6 +135,11 @@
MVPbkContactViewBase& aView,
TInt aError,
TBool aErrorNotified );
+ TAny* ContactViewObserverExtension(TUid aExtensionUid );
+
+ private: // From MVPbkContactViewObserverExtension
+ void FilteredContactRemovedFromView(
+ MVPbkContactViewBase& aView );
private: // Implementation
CPbk2FilteredViewStack();
@@ -146,7 +152,7 @@
void UpdateStackL();
class CCallback;
void DoAddObserverL(
- MVPbkContactViewObserver& aObserver,
+ MVPbkContactViewObserver& aObserver,
CCallback& aCallback );
void DoAddObserverError(
TInt aError,
@@ -163,7 +169,7 @@
const MDesCArray& aStringArray,
TInt aLevel );
TBool IsElementsUnderDestruction();
-
+
private: // Data
/// Own: the stacked views that are currently used
CElementStack* iViewStack;
@@ -179,7 +185,7 @@
RPointerArray<CCallback> iCallbacks;
/// Own: Contact find policy
CVPbkContactFindPolicy* iFindPolicy;
-
+
#ifdef _DEBUG
void __DbgTestInvariant() const;
#endif // _DEBUG