phonebookengines_old/contactsmodel/inc/cntviewstore.h
changeset 40 b46a585f6909
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phonebookengines_old/contactsmodel/inc/cntviewstore.h	Fri Jun 11 13:29:23 2010 +0300
@@ -0,0 +1,83 @@
+// Copyright (c) 2005-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 CNTVIEWSTORE_H_
+#define CNTVIEWSTORE_H_
+#include <cntviewbase.h>
+
+class RContactViewSortOrder;
+
+
+/** Definition of a default remote view.
+
+Holds all the information (excluding a database) required to create 
+a standard or named remote view.
+
+@publishedPartner
+@released
+*/
+NONSHARABLE_CLASS(CContactDefaultViewDefinition) : public CBase
+	{
+public:
+
+	enum TViewType
+		{
+		ERemoteView,
+		ENamedRemoteView
+		};
+		
+public:
+	IMPORT_C static CContactDefaultViewDefinition* NewLC(TViewType aViewType, const TDesC& aViewName, const RContactViewSortOrder& aSortOrder, TContactViewPreferences aContactTypes, const TDesC8& aSortPluginName);
+	IMPORT_C static CContactDefaultViewDefinition* NewLC(RReadStream& aStream);
+	IMPORT_C ~CContactDefaultViewDefinition();
+	
+	IMPORT_C const TDesC& ViewNameL() const;
+	IMPORT_C const TDesC8& SortPluginNameL() const;
+	IMPORT_C const RContactViewSortOrder& SortOrder() const;
+	IMPORT_C TContactViewPreferences ViewPreferences() const;
+	IMPORT_C TViewType ViewType() const;
+	
+	IMPORT_C void InternalizeL(RReadStream &aStream);
+	IMPORT_C void ExternalizeL(RWriteStream &aStream) const;
+		
+private:
+	CContactDefaultViewDefinition();
+	CContactDefaultViewDefinition(TViewType aViewType, TContactViewPreferences aContactTypes);
+	void ConstructL(const TDesC& aViewName, const RContactViewSortOrder &aSortOrder, const TDesC8& aSortPluginName);
+	
+	void Close();
+	
+private:
+	HBufC* iViewName;
+	HBufC8* iSortPluginName;
+	RContactViewSortOrder iSortOrder;
+	TContactViewPreferences iContactTypes;
+	TViewType iViewType;	
+	};
+
+/** Class to access the default settings store within 
+    Contacts model.
+
+@publishedPartner
+@released
+*/
+class TContactViewStore
+	{
+public:
+	IMPORT_C static void SetDefaultViewsL(const RPointerArray<CContactDefaultViewDefinition> &aDefaultViews);
+	IMPORT_C static void GetDefaultViewsL(RPointerArray<CContactDefaultViewDefinition> &aDefaultViews);
+	};
+
+#endif // CNTVIEWSTORE_H_