--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/webengine/osswebengine/WebKit/s60/webview/WmlInterfaceImpl.h Mon Mar 30 12:54:55 2009 +0300
@@ -0,0 +1,232 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "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: Header file for MWKWmlInterface implementation.
+*
+*/
+
+
+
+#ifndef WMLINTERFACEIMPL_H
+#define WMLINTERFACEIMPL_H
+
+// INCLUDES
+#include <e32std.h>
+#include <e32base.h>
+#include "WmlInterface.h"
+
+#include "BrCtlDialogsProvider.h"
+
+class CBrCtlObjectInfo;
+class CWmlContentInterface;
+
+//Array for start up.
+
+const TUint wmlSettingTable[]={
+ TBrCtlDefs::ESettingsLaunchAppUid,
+ TBrCtlDefs::ESettingsLaunchViewId,
+ TBrCtlDefs::ESettingsLaunchCustomMessageId,
+ TBrCtlDefs::ESettingsAutoLoadImages,
+ TBrCtlDefs::ESettingsEmbedded,
+ TBrCtlDefs::ESettingsCookiesEnabled,
+ TBrCtlDefs::ESettingsECMAScriptEnabled,
+ TBrCtlDefs::ESettingsIMEINotifyEnabled,
+ TBrCtlDefs::ESettingsSendRefererHeader,
+ TBrCtlDefs::ESettingsSecurityWarnings,
+ TBrCtlDefs::ESettingsPageOverview,
+ TBrCtlDefs::ESettingsBackList,
+ TBrCtlDefs::ESettingsAutoRefresh,
+ TBrCtlDefs::ESettingsTextWrapEnabled,
+ TBrCtlDefs::ESettingsCharacterset,
+ TBrCtlDefs::ESettingsCharacterset
+ };
+
+
+
+/**
+* This observer is notified when the browser requests softkeys changes
+*
+* @lib BrowserEngine.lib
+* @since 3.1
+*/
+
+NONSHARABLE_CLASS(CWmlInterfaceImpl):public CBase,public MWmlInterface
+ {
+ public: // New functions
+ /**
+ * Free all WML service options
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtl.h
+ * void CBrCtl::ResetWmlServiceOptions().
+ * @since 3.1.
+ * @return void
+ */
+
+ void resetWmlServiceOptions();
+
+ /**
+ * Add a WML service option.
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtl.h
+ * void CBrCtl::WmlServiceOptionsAddItemL
+ * @since 3.1.
+ * @return void
+ */
+
+ void setWmlServiceOptionsAddItemL(const TText* aText, TUint32 aElemID, TInt aElType);
+
+
+ /**
+ * Request the Browser Control to request the host application to update softkeys.
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtl.h
+ * void CBrCtl::UpdateSoftkeys()
+ * @since 3.1.
+ * @return void
+ */
+
+
+ void setUpdateSoftkeys(void);
+
+ /**
+ * Browser Control posts the data to the specified url.
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtl.h
+ * void CBrCtl::PostUrlL(..)
+ * @since 3.1.
+ * @return void
+ */
+
+ void setPostUrlL(TDesC& aUrl, TDesC8& aPostData, TDesC& aContentType);
+
+
+ /**
+ * Convert a file name to a url.
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtl.h
+ * HBufC* CBrCtl::fileNameToUrlLC(..)
+ * @since 3.1.
+ * @return HBufC*
+ */
+
+
+ HBufC* fileNameToUrlLC(const TDesC& aFileName);
+
+ /**
+ * Set the WKScrollingProviderNotifyLayoutChange.
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtlDialogsProvider.h
+ * void CBrCtlScrollingProvider::NotifyLayoutChange(..)
+ * @since 3.1.
+ * @return void
+ */
+
+ void scrollingProviderNotifyLayoutChange(TBrCtlLayout aLayout);
+
+ /**
+ * Set the SetWKScrollingProviderUpdateVScrollBarL.
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtlDialogsProvider.h
+ * void CBrCtlScrollingProvider::UpdateVScrollBarL(..)
+ * @since 3.1.
+ * @return void
+ */
+
+
+ void setScrollingProviderUpdateVScrollBarL( TInt aDocumentHeight,
+ TInt aDisplayHeight,
+ TInt aDisplayPosY);
+ /**
+ * Set the SetWKScrollingProviderUpdateHScrollBarL
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtlDialogsProvider.h
+ * void CBrCtlScrollingProvider::UpdateHScrollBarL(..)
+ * @since 3.1.
+ * @return void
+ */
+
+ void setScrollingProviderUpdateHScrollBarL( TInt aDocumentWidth,
+ TInt aDisplayPosX,
+ TInt aDisplayPosY);
+
+
+
+ void updateScrollbars(int documentHeight, int displayHeight, int displayPosY,
+ int documentWidth, int displayWidth, int displayPosX);
+
+
+ /**
+ * Used by and defined in support of CWKDialogProvider
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtlDialogsProvider.h
+ * CBrCtlObjectInfo::CWKObjectInfo() in
+ * [WEBKIT\BrowserControl\src\WKDialogsProviderUtils.cpp]
+ * @since 3.1.
+ * @return CBrCtlObjectInfo*
+ */
+
+ CBrCtlObjectInfo* objectInfoCreateL();
+
+ /**
+ * Loads URL and returns the handle to resource
+ * Function \S60\WebEngine\WEBKIT\BrowserView\inc\WebKitLoader.h
+ * CWmlResourceLoadListener* CWebKitLoader::LoadWmlResourceL(..)
+ * @since 3.1.
+ * @return CWmlResourceLoadListener*
+ */
+
+
+ //CWmlResourceLoadListener* WKWmlResourceLoadListenerLoadWmlResourceL(CWmlContentInterface& aWmlContentInterface,const TDesC& aURL);
+ void resourceLoadListenerLoadWmlResourceL(const TDesC& aURL);
+
+ /**
+ * Set the URL
+ * Function \S60\WebEngine\WEBKIT\BrowserView\inc\LoadListeners.h
+ * void CWmlResourceLoadListener::SetUrlL(..)
+ * @since 3.1.
+ * @return void
+ */
+
+ void resourceLoadListenerSetUrlL(/*CWmlResourceLoadListener* aListener,*/ const TDesC& aUrl);
+
+ /**
+ * Find if a specific url is in cache
+ * Function \S60\WebEngine\WEBKIT\BrowserControl\inc\BrCtl.h
+ * TBool BrCtl::IsUrlInCache(TDesC& aUrl)
+ * @since 3.1.
+ * @return TBool
+ */
+ TBool wmlIsUrlInCache(TDesC& aUrl);
+
+
+ /**
+ * Find if a specific url is in cache
+ * Function Function WebKitLoader.h
+ * TBool void LoadPageL( const TDesC& aURL, const TDesC& aRereferrer, TBool aReload,
+ * TBool aOnLoad, const TDesC& aTarget, TEventCode aTriggeringEvent );
+ * @since 3.1.
+ * @return TBool
+ */
+
+ void wmlLoadUrlL( const TDesC& aURL, TDesC& aRereferrer, TInt aApId,
+ TBrCtlDefs::TBrCtlCacheMode aBrCtlCacheMode );
+
+ //Destructor
+ virtual ~CWmlInterfaceImpl();
+
+
+ CWmlInterfaceImpl(CBrCtl& aBrCtl);
+ void loadResource(TDesC8& url, CWmlContentInterface* content);
+
+
+
+
+ private:
+ //Browser control reference
+ CBrCtl& m_brCtl; //Not owned
+ };
+
+#endif // CBRCTLWMLINTERFACEIMPL_H
+
+// End of File