williamr@2: // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@2: // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: // which accompanies this distribution, and is available williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // williamr@2: williamr@2: #ifndef __LOGVIEWCHANGEOBSERVER_H__ williamr@2: #define __LOGVIEWCHANGEOBSERVER_H__ williamr@2: williamr@2: // System includes williamr@2: #include williamr@2: williamr@2: /** williamr@2: This class allows a client of the log engine to observe specific change events within williamr@2: a given view. williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: class MLogViewChangeObserver williamr@2: { williamr@2: public: williamr@2: williamr@2: /**Handle a change corresponding to a view addition williamr@2: williamr@2: This method is called when a log event is added to a view. The event maybe williamr@2: recently added, or have existed for some time but only now meet the williamr@2: criteria of this view (i.e satisfy the filter) due to some other change. williamr@2: williamr@2: @param aId The id of the log event which has been added to the view. williamr@2: @param aViewIndex The position within the view at which the event has been williamr@2: added. williamr@2: @param aChangeIndex In a series of changes, this is the index of the williamr@2: currently processing change. The change index will be greater than (or williamr@2: equal to) 0, and less than the total change count. williamr@2: @param aTotalChangeCount This is the total count of all changes which will williamr@2: be processed in this batch. williamr@2: */ williamr@2: virtual void HandleLogViewChangeEventAddedL(TLogId aId, TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount) = 0; williamr@2: williamr@2: /** Handle a change corresponding to a view change williamr@2: williamr@2: This method is called when a log event changes within a view. williamr@2: williamr@2: @param aId The id of the log event which has changed within the view. williamr@2: @param aViewIndex The position within the view where the change occurred. williamr@2: @param aChangeIndex In a series of changes, this is the index of the williamr@2: currently processing change. The change index will be greater than (or williamr@2: equal to) 0, and less than the total change count. williamr@2: @param aTotalChangeCount This is the total count of all changes which will williamr@2: be processed in this batch. williamr@2: */ williamr@2: virtual void HandleLogViewChangeEventChangedL(TLogId aId, TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount) = 0; williamr@2: williamr@2: /** Handle a change corresponding to a view deletion williamr@2: williamr@2: This method is called when a log event is removed from a view. williamr@2: williamr@2: @param aId The id of the log event which has been removed from the view williamr@2: @param aViewIndex The position within the view which the event previously williamr@2: held. williamr@2: @param aChangeIndex In a series of changes, this is the index of the williamr@2: currently processing change. The change index will be greater than (or williamr@2: equal to) 0, and less than the total change count. williamr@2: @param aTotalChangeCount This is the total count of all changes which williamr@2: will be processed in this batch williamr@2: */ williamr@2: virtual void HandleLogViewChangeEventDeletedL(TLogId aId, TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount) = 0; williamr@2: }; williamr@2: williamr@2: williamr@2: #endif