diff -r 000000000000 -r f979ecb2b13e meetingui/meetingrequestviewers/inc/MMRModelInterface.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/meetingui/meetingrequestviewers/inc/MMRModelInterface.h Tue Feb 02 10:12:19 2010 +0200 @@ -0,0 +1,118 @@ +/* +* Copyright (c) 2002-2005 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: Interface for meeting request models +* +*/ + + + + +#ifndef MMRMODELINTERFACE_H +#define MMRMODELINTERFACE_H + +//INCLUDES +#include +#include + +//FORWARD DECLARATIONS + +class MMRDataFillerInterface; +class CRichBio; +class MMRInfoPopup; + +/** +* Mixin interface for OMR models +* +* @since Series S60 3.0 +*/ +class MMRModelInterface + { + public: // Data types + + enum TClosingStatus + { + ENone, + ENotResponded, + ENotSaved, + ENotSentNew, + ENotSentUpdate + }; + + /** + * Editing mode, mainly needed to separate between edit instance + * or edit series. Editing mode is set only once, implicitely by + * MR Viewer logic or explicitely by the user, depending on entry data. + */ + enum TEditingMode + { + EModeNotSet, + EEditInstance, + EEditMeeting, + EViewOnly + }; + + public: // Constructors and destructors + + /** + * Public virtual destructor for allowing deletion through the interface. + */ + virtual ~MMRModelInterface() {}; + + public: // New functions + + virtual CCalEntry* CombinedEntry() = 0; + + /** + * Refresh combined entry to reflect latest database changes. + */ + virtual void RefreshViewableEntryL() = 0; + + virtual CCalEntry::TMethod MethodL() = 0; + + virtual TClosingStatus ClosingStatusL() = 0; + + virtual MMRDataFillerInterface* DataFillerL( CRichBio* aRichBio ) = 0; + + virtual MMRInfoPopup* CreateInfoPopupL() = 0; + + virtual TBool IsCmdAvailable( TInt aCommandId ) = 0; + + virtual HBufC* MailboxOpeningNoteL() = 0; + + /** + * Get edit mode. + * @return edit mode + */ + virtual TEditingMode EditingMode() const = 0; + + /** + * Setting of editing mode is allowed only once. + * @param aEditMode + */ + virtual void SetEditingModeL( TEditingMode aEditMode ) = 0; + + virtual void SetEntryEdited() = 0; + + virtual TBool IsEntryEdited() = 0; + + virtual TBool MailHeadersAvailable() = 0; + + virtual HBufC* MailHeaderFromFieldLC() = 0; + + virtual HBufC* MailHeaderSubjectFieldLC() = 0; + }; + +#endif // MMRMODELINTERFACE_H + +// End of File