diff -r dbfb5e38438b -r 305818acdca4 taskswitcher/server/inc/tsmodel.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/taskswitcher/server/inc/tsmodel.h Mon Sep 13 13:26:33 2010 +0300 @@ -0,0 +1,47 @@ +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +#ifndef TSMODEL_H +#define TSMODEL_H + +#include +#include "tsmodelitem.h" + +class MTsModelObserver; +class MTsModel +{ +public: + virtual TInt Count() const = 0; + TTsModelItem ItemL( TInt aOffset ) const; + virtual void SetObserver( MTsModelObserver *observer ) = 0; + +protected: //data access. should be used by TModelItem + virtual const TDesC& DisplayNameL( TInt aOffset ) const = 0; + virtual TInt IconHandleL( TInt aOffset ) const = 0; + virtual TTime TimestampL( TInt aOffset ) const = 0; + virtual TTime TimestampUpdateL(TInt offset) const = 0; + virtual TTsModelItemKey KeyL( TInt aOffset ) const = 0; + virtual TBool IsActiveL( TInt aOffset ) const = 0; + virtual TBool IsClosableL( TInt aOffset ) const = 0; + +protected: //operations execution + virtual TBool CloseL( TTsModelItemKey aKey ) const = 0; + virtual TBool LaunchL( TTsModelItemKey aKey ) const = 0; + + friend class TTsModelItem; +}; + +#endif //TSMODEL_H