diff -r e686773b3f54 -r 04ab22b956c2 phonebookui/Phonebook2/inc/CPbk2NamesListControl.h --- a/phonebookui/Phonebook2/inc/CPbk2NamesListControl.h Tue Feb 02 10:12:17 2010 +0200 +++ b/phonebookui/Phonebook2/inc/CPbk2NamesListControl.h Fri Feb 19 22:40:27 2010 +0200 @@ -32,7 +32,6 @@ #include #include #include "CPbk2ControlContainer.h" -#include "CPbk2ThumbnailManager.h" // FORWARD DECLARATIONS class MPbk2NamesListState; @@ -51,6 +50,10 @@ class MPbk2ContactUiControlExtension; class CPbk2PredictiveSearchFilter; class CPbk2ContactViewDoubleListBox; +class MVPbkContactLinkArray; +class CPbk2NamesListControlBgTask; +class CPbk2ThumbnailManager; +class CPbk2HandleMassUpdate; // CLASS DECLARATION @@ -90,6 +93,16 @@ EStateFiltered, EStateHidden }; + + /// The names list Background Events + enum TPbk2NamesListBgEvents + { + /// Startup state + EStateBgTaskEmpty = 0, + /// Mark & Unmark States + EStateSaveMarkedContacts, + EStateRestoreMarkedContacts + }; public: // Constructors and destructor @@ -219,6 +232,14 @@ * @return Current view. */ MVPbkContactViewBase& View(); + + /** + * Foreground event handling function. + * @param aForeground - Indicates the required focus state of the control. + * Needs to be called when there is a Foreground Event trigerred for the View. + */ + + IMPORT_C void HandleViewForegroundEventL( TBool aForeground ); @@ -398,6 +419,13 @@ private: //from MPbk2ControlContainerForegroundEventObserver void HandleForegroundEventL( TBool aForeground ); + + public: //For Storing/Restoring/Clearing the Marked Contacts + void StoreMarkedContactsAndResetViewL(); + void RestoreMarkedContactsL(); + void ClearMarkedContactsInfo(); + + private: // Data /// Ref: Current state @@ -449,11 +477,21 @@ //Flag to indicate Feature manager initilization TBool iFeatureManagerInitilized; - //REF: Thumbnail manager //TODO + // Own/Ref (see below): Thumbnail manager CPbk2ThumbnailManager* iThumbManager; + // Wheter this control owns the thumbnail manager (iThumbManager) or not + TBool iOwnThumbManager; //OWN: double list box "handle" CPbk2ContactViewDoubleListBox* iDoubleListBox; + //Own: Selected/Marked Contacts + MVPbkContactLinkArray* iSelectedLinkArray; + + //Own: Background Task Handler + CPbk2NamesListControlBgTask* iBgTask; + //Own: Mass update checker/handler + CPbk2HandleMassUpdate* iCheckMassUpdate; + }; #endif // CPBK2NAMESLISTCONTROL_H