/*
* Copyright (c) 2005-2007 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: Freestyle Email application internal Central Repository handler class
*
*/
#ifndef FREESTYLEEMAILCENTRALREPOSITORYHANDLER_H
#define FREESTYLEEMAILCENTRALREPOSITORYHANDLER_H
// INCLUDES
#include <e32base.h>
#include <badesca.h>
#include "FreestyleEmailUiConstants.h"
// CONSTANTS
// FORWARD DECLARATIONS
class CRepository;
// CLASS DECLARATION
/**
* Wrapper of Central Repository, responsible for the operations that need to access
* the central respository. Parses data for faster use.
* Singleton class
*
*/
class CFSEmailCRHandler : public CBase
{
public:
/**
* Two-phased class constructor.
*/
static CFSEmailCRHandler* InstanceL();
/**
* Destructor of CFSEmailCRHandler class.
*/
virtual ~CFSEmailCRHandler();
public:
/**
* WarnBeforeDelete
*/
TInt WarnBeforeDelete();
void SetWarnBeforeDelete( TInt aValue );
/*
* MessageHeader
*
TInt MessageHeader();
void SetMessageHeader( TInt aValue );
*/
/**
* MessageListLayout
*/
TInt MessageListLayout();
void SetMessageListLayout( TInt aValue );
/**
* BodyPreview
*/
TInt BodyPreview();
void SetBodyPreview( TInt aValue );
/**
* TitleDividers
*/
TInt TitleDividers();
void SetTitleDividers( TInt aValue );
/**
* DownloadNotifications
*/
TInt DownloadNotifications();
void SetDownloadNotifications( TInt aValue );
/**
* ActiveIdle
*/
TInt ActiveIdle();
void SetActiveIdle( TInt aValue );
/**
* Download html images
*/
TInt DownloadHTMLImages();
void SetDownloadHTMLImages( TInt aValue );
/**
* AttachmentFileTypes enumerator returns
* 0 = All attachment types allowed
* 1 = user defined types
*/
//TInt AttachmentFileTypes();
//void SetAttachmentFileTypes( TInt aValue );
/**
* AttachmentFileTypesArray
* gives array of user defined filetypes
*/
//void AttachmentFileTypesArrayL( CDesCArray& aValue );
//void AttachmentFileTypesDes( TDes16& aValue );
//void SetAttachmentFileTypesDes( TDesC& aValue );
/**
* EditorCCVisible()
*/
TInt EditorCCVisible();
void SetEditorCCVisible( TInt aValue );
/**
* EditorBCVisible()
*/
TInt EditorBCVisible();
void SetEditorBCVisible( TInt aValue );
/**
* Methods to get and set the parameters needed to be able to
* create a new mailbox. These are stored in TP Wizard's central repository.
*
* @return KErrNone if succeeded, otherwise system wide error codes
*/
TInt SetupWizAccountType( TDes16& aValue );
//void SetSetupWizAccountType( const TDesC16& aValue );
TInt SetupWizCentrepStartKey( TDes16& aValue );
//void SetSetupWizCentrepStartKey( const TDesC16& aValue );
/**
* Deletes the two central repository keys that the mailbox setup wizard
* creates, and that are passed as parameters to plugins.
*/
void ClearWizardParams();
private:
/**
* Default class constructor.
* Only NewL can be called
*/
CFSEmailCRHandler();
/**
* Second phase class constructor.
*/
void ConstructL();
private:
// Handle to Central Repository server
CRepository* iCentralRepository;
CRepository* iSetupWizCentRep;
};
#endif // FREESTYLEEMAILCENTRALREPOSITORYHANDLER_H
// end of file