diff -r 000000000000 -r b16258d2340f applayerpluginsandutils/bookmarksupport/inc/bookmarkdef.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/applayerpluginsandutils/bookmarksupport/inc/bookmarkdef.h Tue Feb 02 01:09:52 2010 +0200 @@ -0,0 +1,237 @@ +// 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: +// Place holder for common constants, type definitions and enums. +// +// + + +#ifndef __BOOKMARKDEF_H__ +#define __BOOKMARKDEF_H__ + +#include +#include + +/** +The Bookmark namespace contains all the bookmark database specific constants and enums + +@publishedPartner +@released +*/ +namespace Bookmark +{ + /** + Id for bookmarks and folders + */ + typedef TUint32 TItemId; + /** + Id for bookmark attachments like icons + */ + typedef TUint32 TAttachmentId; + + /** + A NULL value for a bookmark item ID + */ + const TItemId KNullItemID = 0x00000000; + /** + A NULL value for an attachment (icon) ID + */ + const TAttachmentId KNullAttachmentID = 0x00000000; + /** + The title of the root folder + */ + _LIT(KTxtRootTitle, "Root"); + /** + The root folder's ID + */ + const TItemId KRootItemID = 0xffffffff; + + /** + The maximum length of a 16 bit desciptor for a bookmark property + */ + const TInt KMaxDescriptorLength = NCentralRepositoryConstants::KMaxUnicodeStringLength; + /** + The maximum length of a 8 bit desciptor for a bookmark property + */ + const TInt KMaxDataLength = NCentralRepositoryConstants::KMaxBinaryLength; + /** + The maximum length of a bookmark URI + */ + const TInt KMaxUriLength = NCentralRepositoryConstants::KMaxBinaryLength; + /** + The maximum number of bookmark entries available in the database + */ + const TInt KMaxBookmarkEntries = 0xFFFFFF; + /** + The maximum depth that folders can be placed under folders + */ + const TInt KMaxFolderDepth = 1024; + /** + The maximum number of custom properties that can be registered + */ + const TInt KMaxCustomProperties = 255; + /** + A bookmark's owner ID will be set to this if it has no owner + */ + _LIT_SECURE_ID(KNoOwnerId,0x00000000); + + /** + A bookmark item will always be either a bookmark or a folder. The TType enum is used + to identify which. + */ + enum TType + { + /** + The item is a folder + */ + ETypeFolder, + /** + The item is a bookmark + */ + ETypeBookmark + }; + + /** + The TVisibility enum is used to specify which bookmarks will be seen by the client opening the + bookmark database + */ + enum TVisibility + { + /** + Open as All + @deprecated Deprecated in 9.1 + */ + EVisibilityDefault, + /** + View only public items + */ + EVisibilityPublic, + /** + View only items owned by the application + */ + EVisibilityPrivate, + /** + View public items and private items owned by the application + */ + EVisibilityAll, + /** + View all items regardless of owner - requires WriteUserData + */ + EVisibilityManager + }; + + /** + The TPropertyType is used when registering custom properties. Custom properties must be of one of + these types + bookmark database + */ + enum TPropertyType + { + /** + The property is an int + */ + EDataTypeInt, + /** + The property is an floating point number + */ + EDataTypeReal, + /** + The property is a 16 bit descriptor + */ + EDataTypeDes16, + /** + The property is a 8 bit descriptor + */ + EDataTypeDes8 + }; + + /** + Error codes error numbers -7150 to -7199 have been reserved for the bookmark database + */ + static const TInt KErrorBase = -7150; + /** + The version number in the repository does not match the bookmark database version number + */ + static const TInt KErrBadVersion = KErrorBase; + /** + The item is of the wrong type. A folder item is given where a bookmark item is required or visa versa + */ + static const TInt KErrWrongType = KErrorBase - 1; + /** + Not all handles have been closed. A database object has been opened and has not been closed. + */ + static const TInt KErrOpenHandle = KErrorBase - 2; + /** + The handle has not been opened. The handle is not attached to any bookmark object + */ + static const TInt KErrNotOpen = KErrorBase - 3; + /** + The bookmark item is read only and can not be modified. + */ + static const TInt KErrReadOnly = KErrorBase - 4; + /** + An attempt has been made to set the parent of an item to an item it owns lower in the tree. This invalidate the tree structure. + */ + static const TInt KErrCyclicLoop = KErrorBase - 5; + /** + The central database store is either locked or unaccessable at this time. You may want to try again later. + */ + static const TInt KErrDatabaseLocked = KErrorBase - 6; + /** + The database has no more space for new bookmark entries + */ + static const TInt KErrNoMoreSpace = KErrorBase - 7; + /** + The database is in a corrupt state + */ + static const TInt KErrCorrupt = KErrorBase - 8; + /** + A custom property with the given UID has not been reistered + */ + static const TInt KErrNotRegistered = KErrorBase - 9; + /** + The an attempt was made to register a property using a UID that has already been used + */ + static const TInt KErrUidAlreadyUsed = KErrorBase - 10; + /** + An orphaned item is one that is currently in the root folder due to its normal parent not being loaded + This usually occurs when folders are private but some of the bookmarks it contains are public + Some operations (such as changing the rank or order of an item) can not be performed on an orphaned object + */ + static const TInt KErrOrphanedItem = KErrorBase - 11; + /** + An attempt has been made to create a folder with a title that already exists + */ + static const TInt KErrTitleAlreadyUsed = KErrorBase - 12; + /** + The operation is not allowed. (Like trying to delete the root folder) + */ + static const TInt KErrOperationDenied = KErrorBase - 13; + /** + The operation can not be completed until the item has been committed to the database (e.g. setting the owner ID) + */ + static const TInt KErrNotCommitted = KErrorBase - 14; + + // Panic text + _LIT(KBookmarkErrNullPointer, "Pointer not null"); + _LIT(KBookmarkErrNegativeRefCount, "Ref count zero"); + _LIT(KBookmarkErrOpenHandles, "Handle(s) open"); + _LIT(KBookmarkErrWrongType, "Wrong item type"); + _LIT(KBookmarkErrHandleNotOpen, "Handle not open"); + _LIT(KBookmarkErrNoParent, "No parent"); + _LIT(KBookmarkErrParent, "Invalid parent"); + _LIT(KBookmarkErrCorrupt, "Corrupt database"); + _LIT(KBookmarkErrTooLong, "Length too long"); +} + +#endif // __BOOKMARKDEF_H__