--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/customization/isadapter/inc/UiSettingsUtil.h Thu Dec 17 08:40:12 2009 +0200
@@ -0,0 +1,130 @@
+/*
+* Copyright (c) 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: DM Idle SoftKey Adapter
+*
+*/
+
+
+#ifndef __UISETTINGSUTIL_H__
+#define __UISETTINGSUTIL_H__
+
+#include <FavouritesDb.h> // Favourites Database
+#include <msvapi.h>
+#include <apgcli.h>
+#include <centralrepository.h>
+
+#include "javaregistry.h"
+#include "javaregistryentry.h"
+
+
+using namespace Java;
+
+class CUiSettingsUtil : public CBase, public MMsvSessionObserver
+{
+public:
+
+ static CUiSettingsUtil* NewL( );
+ static CUiSettingsUtil* NewLC( );
+
+ ~CUiSettingsUtil();
+
+ // Returns whether the uid is of an application or bookmark
+ void GetShortcutRtTypeL(TInt aUid, TInt &aRtType);
+
+ // Returns the index of the matching uid Applications and WebTargets
+ TInt GetShortcutTargetIndexL(TInt aUid, TInt& aIndex);
+
+ // returns the total number of Softkeys
+
+ TInt GetSoftkeyCountL();
+
+ // Application Target Functions
+
+ // Initializes the Normal, Java, Mailbox and Static Applications
+ void ReadTargetsL();
+
+ // Returns the index of the matching index for Normal and Java Applications
+ TInt GetAppTargetCaptionL(TInt index, TDes& aBufferCaption);
+
+ // Sets the Softkey Target, given the Softkey UID and the App Index
+ TInt SetShortcutTargetAppIndexL( TInt aUid, TInt aIndex );
+
+ // returns total number of applications
+ TInt GetNoOfTargetApps();
+
+ // Web Target Functions
+
+ // Initializes the WebTarget List
+ void ReadBookmarksL();
+
+ // returns the number of webtargets
+ TInt GetWebTargetsCount( TInt &aCount );
+
+ // Returns the index of the matching uid for webtargets
+ TInt GetWebTargetAppUid( TInt aIndex, TInt& aUid );
+
+ // Returns the caption of the matching index for webtargets
+ TInt GetWebTargetCaption( TInt aIndex, TDes& aCaption );
+
+ // Get the wetarget index given the UID
+ TInt GetWebTargetIndex( TInt& aIndex, TInt& aUid );
+
+ // Sets the Softkey Target, given the Softkey UID and the WebTarget Index
+ TInt SetShortcutTargetWebIndexL( TInt aUid, TInt aIndex );
+
+
+ void HandleSessionEventL(TMsvSessionEvent aEvent, TAny* /*aArg1*/, TAny* /*aArg2*/, TAny* /*aArg3*/);
+
+private:
+
+ void ConstructL( );
+ CUiSettingsUtil();
+
+ // Following four functions initialize their respective lists
+ // Each is called from ReadTargetsL()
+ void ReadJavaTargetsL();
+ void ReadMailBoxesL();
+ void ReadAppTargetsL();
+ void ReadStaticAppTargetsL();
+
+ // Checks if the java application is NonNative
+ TBool IsNonNativeL(const TUid& aUid) const ;
+
+ // Gets the key value for a given Softkey node
+ void GetKeyValueL(TInt aUid, TDes16 &aValue);
+
+ // Gets the Application Info at the given node
+ TBool GetAppInfoAtIndex(TInt aIndex, TApaAppInfo& aAppInfo);
+
+ // Finds the matching app (normal and Java) in the list to the UID
+ TBool GetAppIndexToUID(TUid aUID, TInt& aIndex );
+
+ // Finds the matching MailBox in the list to the name
+ TBool GetMailBoxTargetIndex(const TDesC& aName, TInt& aIndex );
+
+ // Finds the matching static application in the list to the name
+ TBool GetStaticAppIndex(const TDesC& aKeyValue,TInt& aIndex) ;
+
+private:
+
+ CFavouritesItemList* iFavList;
+ RArray<TUid> iJaveUids;
+ RPointerArray<TApaAppInfo> iListItems;
+ CDesCArray* iMailBoxes;
+ CDesCArrayFlat* iStaticAppParam ;
+ CDesCArrayFlat* iStaticAppCaption ;
+};
+
+
+#endif // __UISETTINGSUTIL_H__
\ No newline at end of file