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