williamr@2: /* williamr@2: * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@2: * under the terms of the License "Eclipse Public License v1.0" williamr@2: * which accompanies this distribution, and is available williamr@2: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: Enum Definition of the Browser Control API williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: #ifndef BRCTLDEFS_H williamr@2: #define BRCTLDEFS_H williamr@2: williamr@2: // INCLUDES williamr@2: williamr@2: // DATA TYPES williamr@2: williamr@2: // FORWARD DECLARATIONS williamr@2: williamr@2: // EXPORTED FUNCTION williamr@2: williamr@2: /** williamr@2: * The TBrCtlDefs class contains definitions of custom data types for the Browser Control API. williamr@2: * williamr@2: * Usage: williamr@2: * williamr@2: * @code williamr@2: * #include <BrCtlDefs.h> williamr@2: * williamr@2: * @see S60 Platform: Browser Control API Developer's Guide Version 2.0 williamr@2: * @lib BrowserEngine.lib williamr@2: * @since 3.0 williamr@2: * @file BrCtlDefs.h williamr@2: * @endcode * williamr@2: */ williamr@2: class TBrCtlDefs williamr@2: { williamr@2: public: williamr@2: /** williamr@2: * The Browser Control uses 600 command IDs, whose default williamr@2: * range is from 15000 - 15600. The host application can specify williamr@2: * any desired range through the API. williamr@2: */ williamr@2: enum TBrCtlCommandId williamr@2: { williamr@2: ECommandIdBrowserBase = 0, ///< The base Browser ID. williamr@2: ECommandIdSubscribeToBase = 90, ///< The SubscribeToBase ID. williamr@2: ECommandIdPluginBase = 100, ///< The base plug-in ID. williamr@2: ECommandIdWMLBase = 300, ///< The base WML ID. williamr@2: ECommandIdRange = 600, ///< The maximum number of command IDs. williamr@2: ECommandIdBase = 15000 ///< The base value for the command IDs. williamr@2: williamr@2: }; williamr@2: /** williamr@2: * Rules that determine in which mode the cache operates. williamr@2: */ williamr@2: enum TBrCtlCacheMode williamr@2: { williamr@2: /** williamr@2: * Normal caching operation. williamr@2: * If the requested entity is in the cache and it has not expired, williamr@2: * get it from the cache. If the requested entity is not in the cache, williamr@2: * or if it has expired, the browser should request it from the server. williamr@2: */ williamr@2: ECacheModeNormal = 0, williamr@2: /** williamr@2: * If the requested entity is in the cache, get it from the cache williamr@2: * even if it has expired. If the requested entity is not in the cache, williamr@2: * the browser should request it from the server. williamr@2: */ williamr@2: ECacheModeHistory, williamr@2: /** williamr@2: * The browser should request the content from the server even if it is in the cache. williamr@2: */ williamr@2: ECacheModeNoCache, williamr@2: /** williamr@2: * If the requested entity is in the cache, get it from the cache williamr@2: * even if it has expired. If the requested entity is not in the cache, williamr@2: * return an error. williamr@2: */ williamr@2: ECacheModeOnlyCache williamr@2: }; williamr@2: /** williamr@2: * The host application can send these commands williamr@2: * to the Browser Control by calling the HandleCommandL function. williamr@2: * @attention The host application should define the base for the command williamr@2: * IDs and add that base to the enum value of each command. williamr@2: */ williamr@2: enum TBrCtlCommands williamr@2: { williamr@2: ECommandDisconnect = 0, ///< Unloads the HTTP Framework williamr@2: ECommandCancelFetch, ///< Cancels all outstanding requests williamr@2: ECommandOpen, ///< Activates the focused element williamr@2: ECommandReload, ///< Reloads the current page williamr@2: ECommandBack, ///< Loads the previous page, if available williamr@2: /** williamr@2: * Loads the next page. This command is used only to return williamr@2: * to the next page after going back to a previous page. williamr@2: */ williamr@2: ECommandForward, williamr@2: ECommandClearHistory, ///< Clears the history stack williamr@2: /** williamr@2: * Shows a list of history entries. Do not use this parameter if williamr@2: * LoadDataL or InitLoadDataL are used. williamr@2: */ williamr@2: ECommandShowHistory, williamr@2: ECommandAccept, ///< Accepts the input data in the editor. williamr@2: /** williamr@2: * Cancels the input data in the editor. Sets the focus back williamr@2: * on the browser after the focus is shifted to a plug-in. williamr@2: */ williamr@2: ECommandCancel, williamr@2: ECommandOpenToViewer, ///< Opens object data in an external viewer williamr@2: /** williamr@2: * Adds the contact information of the link currently selected to williamr@2: * the phone book williamr@2: */ williamr@2: ECommandAddToPhoneBook, williamr@2: /** williamr@2: *Makes a phone call using the phone number in the link currently selected williamr@2: */ williamr@2: ECommandMakeCall, williamr@2: ECommandRemoveFileName, ///< Removes the file name from a file selection box williamr@2: ECommandShowImages, ///< Shows a list of the images in the current page williamr@2: ECommandLoadImages, ///< Loads images when automatic image loading is turned off williamr@2: ECommandGainFocus, ///< Called when the Browser Control returns from background williamr@2: ECommandLoseFocus, ///< Called when the Browser Control goes to the background williamr@2: /** williamr@2: * Do not call this parameter. It is a base for the next three commands. williamr@2: */ williamr@2: ECommandFindItem, williamr@2: /** williamr@2: * Displays the FindItem dialog and highlights all of the williamr@2: * phone numbers in the current page. Use this parameter only williamr@2: * if you specified the ECapabilityFindItem capability. williamr@2: */ williamr@2: ECommandFindItemPhoneNumber, williamr@2: /** williamr@2: * Displays the FindItem dialog and highlights all of the e-mail williamr@2: * addresses in the current page. Use this parameter only if you williamr@2: * specified the ECapabilityFindItem capability. williamr@2: */ williamr@2: ECommandFindItemEMail, williamr@2: /** williamr@2: * Displays the FindItem dialog and highlights all of the URLs in williamr@2: * the current page. Use this parameter only if you specified williamr@2: * the ECapabilityFindItem capability. williamr@2: */ williamr@2: ECommandFindItemAddress, williamr@2: ECommandFindKeyword, ///< Reserved for future use. williamr@2: ECommandClearFind, ///< Reserved for future use. williamr@2: ECommandShowThumbnailView, ///< Reserved for future use. williamr@2: ECommandShowDownloads, ///< Tells the Download Manager to display the list of downloads. williamr@2: /** williamr@2: * Saves the following launch parameters when the application williamr@2: * unexpectedly shuts down. These parameters all have the prefix ESettingsLaunch: williamr@2: * AppUid, ViewId, CustomMessageId williamr@2: * When the phone reboots, it uses these parameters to restart williamr@2: * the host application and resume the interrupted downloads. williamr@2: * NOTE: These parameters must be set before calling this command. williamr@2: */ williamr@2: ECommandSaveLaunchParams, williamr@2: ECommandOneStepBack, ///< Reserved for future use. williamr@2: ECommandAppForeground, ///< williamr@2: ECommandAppBackground, ///< williamr@2: ECommandOpenNewWindow, ///< williamr@2: ECommandClearAutoFormFillData, ///< williamr@2: ECommandClearAutoFormFillPasswordData, ///< williamr@2: ECommandFreeMemory, ///< williamr@2: ECommandMemoryGood, ///< williamr@2: ECommandDumpRenderTree, ///< williamr@2: ECommandUnloadWMLEngine, ///< williamr@2: ECommandSmartLinkMakeCall, ///< williamr@2: ECommandSmartLinkSendMessage, ///< williamr@2: ECommandSmartLinkAddToPhoneBook, ///< williamr@2: ECommandShowToolBar, ///<Shows the toolbar williamr@2: ECommandSmartLinkSendEmail, ///< williamr@2: ECommandShowAnchorHref, ///<Display the URL of a hyperlink - supported only for HTML williamr@2: ECommandLoadFocusedImage, ///<Load the focuesd image - supported only for HTML williamr@2: ECommandUnLoadPluginWindows, ///<Unload plugin windows williamr@2: /** williamr@2: * Displays the FindItem dialog and highlights all of the VoIP williamr@2: * addresses in the current page. Use this parameter only if you williamr@2: * specified the ECapabilityFindItem capability. williamr@2: */ williamr@2: ECommandFindItemVoIPAddress, ///<Find VoIP address item williamr@2: ECommandSmartLinkMakeVoipCall, ///<MakeVoip Callthrough smartlink williamr@2: /** williamr@2: * Zoom Slider configuration. williamr@2: */ williamr@2: ECommandZoomSliderShow, ///< Zoom slider visible. williamr@2: ECommandZoomSliderHide, ///< Zoom slider hidden. williamr@2: ECommandHistoryNavigateForward, williamr@2: ECommandHistoryNavigateBack, williamr@2: /* williamr@2: ** Enter/Exit Fullscreen Browsing williamr@2: */ williamr@2: ECommandEnterFullscreenBrowsing, williamr@2: ECommandLeaveFullscreenBrowsing, williamr@2: ECommandZoomIn, williamr@2: ECommandZoomOut williamr@2: }; williamr@2: /** williamr@2: * The load event that occurred. williamr@2: */ williamr@2: enum TBrCtlLoadEvent williamr@2: { williamr@2: EEventNone = 0, // Non event, Not used. williamr@2: /** williamr@2: * A page is beginning to load. This includes images, scripts, williamr@2: * style sheets, and anything else embedded in the page as a single load event. williamr@2: */ williamr@2: EEventNewContentStart, williamr@2: /** A URL is beginning to load. This notifies the observer of a williamr@2: * separate load event for each image or other element embedded in the page. williamr@2: */ williamr@2: EEventUrlLoadingStart, williamr@2: /** williamr@2: * The first data chunk has arrived. This occurs when the response williamr@2: * headers are received. williamr@2: */ williamr@2: EEventNewUrlContentArrived, williamr@2: /** williamr@2: * Another data chunk has arrived. williamr@2: * This occurs for each chunk of data that is loaded, including the first chunk. williamr@2: */ williamr@2: EEventMoreUrlContentArrived, williamr@2: /** williamr@2: * The first chunk of content is displayed. The previous page is williamr@2: * destroyed at this time. This occurs once per page. williamr@2: */ williamr@2: EEventNewContentDisplayed, williamr@2: /** williamr@2: * Another chunk of content is displayed. This occurs for each williamr@2: * chunk of content that is displayed, except for the first chunk. williamr@2: */ williamr@2: EEventMoreContentDisplayed, williamr@2: EEventUrlLoadingFinished, ///< A URL has finished loading. williamr@2: /** williamr@2: * The page has finished loading. If the host application draws a williamr@2: * progress bar, it can be removed when this event is received. williamr@2: */ williamr@2: EEventLoadFinished, williamr@2: EEventContentFinished, ///< The content has finished loading. williamr@2: /** williamr@2: * A page title was encountered. After receiving this williamr@2: * event, the host application can call PageInfoLC to receive the page title. williamr@2: */ williamr@2: EEventTitleAvailable, williamr@2: EEventLoadError, ///< An error occurred while loading the page. williamr@2: /** williamr@2: * The user is navigating from a non-secure page to a secure page. williamr@2: * The host application displays a secure icon, if needed. williamr@2: */ williamr@2: EEventEnteringSecurePage, williamr@2: /** williamr@2: * The user is navigating from a secure page to a non-secure page. williamr@2: * If the host application displays a secure icon, that icon should be removed. williamr@2: */ williamr@2: EEventExitingSecurePage, williamr@2: /** williamr@2: * The user is entering a secure page that contains non-secure items. williamr@2: */ williamr@2: EEventSomeItemsNotSecure, williamr@2: /** williamr@2: * The user is submitting information to a non-secure page. williamr@2: */ williamr@2: EEventSubmittingToNonSecurePage, williamr@2: /** williamr@2: * User confirmation is required to redirect the browser. williamr@2: */ williamr@2: EEventRedirectConfirmation, williamr@2: /** williamr@2: * User confirmation is required to repost a page that has been viewed previously. williamr@2: */ williamr@2: EEventRepostConfirmation, williamr@2: /** williamr@2: * The user is entering a non-secure page that contains secure items. williamr@2: */ williamr@2: EEventSecureItemInNonSecurePage, williamr@2: /** williamr@2: * Authentication failed or was cancelled. williamr@2: */ williamr@2: EEventAuthenticationFailed, williamr@2: /** williamr@2: * A file is beginning to upload. williamr@2: */ williamr@2: EEventUploadStart, williamr@2: /** williamr@2: * A file has finished uploading; the last chunk of data has been transmitted. williamr@2: */ williamr@2: EEventUploadFinished, williamr@2: /** williamr@2: * Length of the data transmitted and the cumulative size of the uploaded file. williamr@2: */ williamr@2: EEventUploadIncrement, williamr@2: EEventFaviconAvailable, williamr@2: EEventThumbnailAvailable williamr@2: }; williamr@2: /** williamr@2: * The setting to manipulate. williamr@2: */ williamr@2: williamr@2: enum TBrCtlSettings williamr@2: { williamr@2: ESettingsUnknown = -1, ///< Not used williamr@2: /** williamr@2: * If set to On, large pages are optimized for display on a small screen. williamr@2: * If set to Off, all pages display in their original format. williamr@2: */ williamr@2: ESettingsSmallScreen = 0, williamr@2: /** williamr@2: * If set to On, images automatically load when a page is downloaded. williamr@2: * If set to Off, images are not loaded. Default: On williamr@2: */ williamr@2: ESettingsAutoLoadImages, williamr@2: /** williamr@2: * If set to All.Large, all text is shown 40% larger than its declared size. williamr@2: * If set to Larger, all text is shown 20% larger than its declared size. williamr@2: * If set to Normal, all text is shown as its declared size. williamr@2: * If set to Smaller, all text is shown 20% smaller than its declared size. williamr@2: * If set to All.Small, all text is shown 40% smaller than its declared size. williamr@2: */ williamr@2: ESettingsFontSize, williamr@2: /** williamr@2: * If set to On, the host application is embedded within another application. williamr@2: * If set to Off, the host application is not embedded within another application. williamr@2: */ williamr@2: ESettingsEmbedded, williamr@2: /** williamr@2: * If set to On, paragraphs are automatically wrapped to fit into the display width. williamr@2: * If set to Off, paragraphs are not automatically wrapped. williamr@2: * @attention This parameter is not shown if ESettingsSmallScreen is set to On. williamr@2: */ williamr@2: ESettingsTextWrapEnabled, williamr@2: /** williamr@2: * If set to Allow, the user can send and receive cookie information. williamr@2: * If set to Reject, the user cannot send or receive cookie information. williamr@2: */ williamr@2: ESettingsCookiesEnabled, williamr@2: /** williamr@2: * If set to Finest, external style sheets are downloaded when williamr@2: * Small Screen Layout is used. If set to Fastest, external style williamr@2: * sheets are not downloaded when Small Screen Layout is used. williamr@2: * Default value: Fastest williamr@2: */ williamr@2: ESettingsCSSFetchEnabled, williamr@2: /** williamr@2: * If set to Enable, ECMA Script is enabled. williamr@2: * If set to Disable, ECMA Script is disabled. williamr@2: * Default value: Enable williamr@2: */ williamr@2: ESettingsECMAScriptEnabled, williamr@2: /** williamr@2: * Device unique identification number sent to a server for billing williamr@2: * purposes in e-commerce. If set to Enable, the Browser Control williamr@2: * sends the International Mobile Equipment Identity (IMEI) to the server. williamr@2: * If set to Disable, the Browser Control does not send the IMEI to the server. williamr@2: * Default value: Disable williamr@2: */ williamr@2: ESettingsIMEINotifyEnabled, williamr@2: /** williamr@2: * Character coding. If set to Automatic, the character set is williamr@2: * automatically selected according to the following criteria, in order or priority: williamr@2: * 1. Detected from the Byte Order Mark (BOM) williamr@2: * 2. Detected from XML Document Type Definition (DTD) williamr@2: * 3. Declared in <meta> element williamr@2: * 4. Detected from HTTP headers williamr@2: * 5. Variant-specific default character set for automatic detection. williamr@2: * Possible character codings are: williamr@2: * Latin williamr@2: * Simplified Chinese williamr@2: * Traditional Chinese williamr@2: * Unicode (UTF-8) williamr@2: * Unicode (ucs-2) williamr@2: * ISO 8859 - 2,4,5,7,or 9 williamr@2: * Hebrew (ISO-Logical) williamr@2: * Hebrew (ISO-Visual) williamr@2: * Hebrew (Windows) williamr@2: * Arabic (ISO) williamr@2: * Arabic (Windows) williamr@2: * Windows - 1250, 1251, 1253, 1254, or 1257 williamr@2: * Thai williamr@2: * Thai (Windows 874) williamr@2: * Shift_jis williamr@2: * Euc-jp williamr@2: * ISO-2022-jp williamr@2: * The default value is variant-specific. williamr@2: */ williamr@2: ESettingsCharacterset, williamr@2: /** williamr@2: * URL of the initial page. Tells the williamr@2: * Browser Control to send the referrer header in the request. williamr@2: */ williamr@2: ESettingsSendRefererHeader, williamr@2: /** williamr@2: * One of the following: williamr@2: * Certificate not valid yet williamr@2: * Server certificate expired williamr@2: * Server certificate not received williamr@2: * Invalid server certificate williamr@2: * Authority certificate not valid yet williamr@2: * Authority certificate expired williamr@2: * Authority certificate not found williamr@2: * Authority certificate corrupted williamr@2: */ williamr@2: ESettingsSecurityWarnings, williamr@2: /** williamr@2: * Default access point for the Browser Control to use when williamr@2: * connecting to the network. williamr@2: */ williamr@2: ESettingsApId, williamr@2: ESettingsCurrentZoomLevelIndex, ///< Reserved for future use. williamr@2: ESettingsPageOverview, ///< Reserved for future use. williamr@2: ESettingsNumOfDownloads, ///< Number of downloads in progress. williamr@2: /** williamr@2: * UID of the application to williamr@2: * restart after a reboot in order to continue an interrupted download. williamr@2: */ williamr@2: ESettingsLaunchAppUid, williamr@2: /** williamr@2: * View ID of the application to williamr@2: * restart after a reboot in order to continue an interrupted download. williamr@2: */ williamr@2: ESettingsLaunchViewId, williamr@2: /** williamr@2: * Message that asks the user whether to resume the download. williamr@2: */ williamr@2: ESettingsLaunchCustomMessageId, ///< Reserved for future use. williamr@2: ESettingsBackList, ///< Reserved for future use. williamr@2: ESettingsAutoRefresh, ///< Reserved for future use. williamr@2: /** williamr@2: * If set, the browser encodes URLs using UTF-8 instead of williamr@2: * the original content encoding. williamr@2: * @attention This is recommended only for the APAC region. williamr@2: */ williamr@2: ESettingsBrowserUtf8Encoding, williamr@2: ESettingsAutoFormFillEnabled, ///< For enabling the auto fill williamr@2: ESettingsSavedPage, ///< Save the page williamr@2: ESettingsSmartLink, williamr@2: ESettingsAutoOpenDownloads, // For automatically open the downloaded files williamr@2: ESettingsDisableFlash, ///<Enable/Disable the flash williamr@2: ESettingsScriptLog, /// script log williamr@2: /** williamr@2: * Toolbar buttons configuration settings williamr@2: */ williamr@2: ESettingsToolbarOnOff, williamr@2: ESettingsToolbarButton1Cmd, williamr@2: ESettingsToolbarButton2Cmd, williamr@2: ESettingsToolbarButton3Cmd, williamr@2: ESettingsToolbarButton4Cmd, williamr@2: ESettingsToolbarButton5Cmd, williamr@2: ESettingsToolbarButton6Cmd, williamr@2: ESettingsToolbarButton7Cmd, williamr@2: /** williamr@2: * Browser Zoom level configuration settings williamr@2: */ williamr@2: ESettingsZoomLevelMin, ///< Minimum Zoom level supported williamr@2: ESettingsZoomLevelMax, ///< Maximum Zoom level supported williamr@2: ESettingsZoomLevelDefault, ///< Default Zoom level for new page williamr@2: ESettingsMaxEnum ///< Must be last one williamr@2: }; williamr@2: williamr@2: /** williamr@2: * The size of the font selected. williamr@2: */ williamr@2: enum TBrCtlFontSizeLevel williamr@2: { williamr@2: /** williamr@2: * Text is shown 40% smaller than its declared size. williamr@2: */ williamr@2: EFontSizeLevelAllSmall = 0, williamr@2: /** williamr@2: * Text is shown 20% smaller than its declared size. williamr@2: */ williamr@2: EFontSizeLevelSmaller, williamr@2: /** williamr@2: * Text is shown as its declared size. williamr@2: */ williamr@2: EFontSizeLevelNormal, williamr@2: /** williamr@2: * Text is shown 20% larger than its declared size. williamr@2: */ williamr@2: EFontSizeLevelLarger, williamr@2: /** williamr@2: * Text is shown 40% larger than its declared size. williamr@2: */ williamr@2: EFontSizeLevelAllLarge williamr@2: }; williamr@2: /** williamr@2: * Configuration options for the Browser Control williamr@2: */ williamr@2: enum TBrCtlCapabilities williamr@2: { williamr@2: /** williamr@2: * Displays horizontal and vertical scroll bars. williamr@2: */ williamr@2: ECapabilityDisplayScrollBar = 0x0001, williamr@2: /** williamr@2: * Sends request to load embedded content to the host application. williamr@2: * The host application indicates whether or not the load request williamr@2: * should proceed. williamr@2: */ williamr@2: ECapabilityClientResolveEmbeddedURL = 0x0002, williamr@2: /** williamr@2: * Sends request to load a URL to the host application. williamr@2: * The host application indicates whether or not the load williamr@2: * request should proceed. williamr@2: */ williamr@2: ECapabilityClientNotifyURL = 0x0004, williamr@2: /** williamr@2: * Disables input boxes and Netscape plug-ins. williamr@2: */ williamr@2: ECapabilityDisableInputAndPlugins = 0x0008, williamr@2: /** williamr@2: * Adds Find Item to the Options menu. williamr@2: */ williamr@2: ECapabilityFindItem = 0x0010, williamr@2: /** williamr@2: * Allows network access for HTTP requests. williamr@2: * If this option is not set, HTTP requests will fail. williamr@2: */ williamr@2: ECapabilityLoadHttpFw = 0x0020, williamr@2: /** williamr@2: * Employs the Download Manager to download content, such as audio or video files. williamr@2: */ williamr@2: ECapabilityUseDlMgr = 0x0040, williamr@2: /** williamr@2: * Launches a viewer application to view the downloaded content. williamr@2: */ williamr@2: ECapabilityLaunchViewer = 0x0080, williamr@2: ECapabilityGraphicalHistory = 0x0100, ///< Reserved for future use. williamr@2: ECapabilitySavedPage = 0x0200, ///< Reserved for future use. williamr@2: ECapabilityConfirmDownloads = 0x0400, ///< Enables confirmation dialog in the Download Manager. williamr@2: ECapabilityAutoFormFill = 0x0800, williamr@2: ECapabilityCursorNavigation = 0x1000, williamr@2: ECapabilityGraphicalPage = 0x2000, williamr@2: ECapabilityAccessKeys = 0x4000, williamr@2: ECapabilityFavicon = 0x8000, williamr@2: ECapabilityToolBar = 0x00010000, williamr@2: ECapabilityWebKitLite = 0x00020000, williamr@2: ECapabilityFitToScreen = 0x00040000 williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Gets the requested page information. williamr@2: */ williamr@2: enum TBrCtlPageInfo williamr@2: { williamr@2: EPageInfoTitle = 0, ///< Page title, if a title was specified williamr@2: EPageInfoUrl, ///< URL of the current page williamr@2: EPageInfoContent, ///< Page content as a text buffer williamr@2: EPageInfoSavedPage, ///< Page content, including all embedded content, as a buffer williamr@2: EPageInfoFocusedNodeUrl //< URL of the focused link. The function leaves if the focus is not on an anchor or imagemap williamr@2: }; williamr@2: /** williamr@2: * Indicates whether the browser is in Image Map view. williamr@2: */ williamr@2: enum TBrCtlState williamr@2: { williamr@2: /** williamr@2: * Currently, the williamr@2: * only state change that can be observed is in and out of Image Map view. williamr@2: */ williamr@2: EStateImageMapView = 0, williamr@2: EStateHistoryView, ///< For future use williamr@2: EStateThumbnailView, ///< For future use williamr@2: EStateWmlView, ///< For WML view williamr@2: EStateSmartTextView, ///< For Smart text recognition mode williamr@2: EStateToolBarMode, ///< For toolbar williamr@2: EStatePluginPlayer, williamr@2: EStateScriptLog, williamr@2: EStateZoomSliderMode, ///< For ZoomSlider williamr@2: EStateFullscreenBrowsing, ///< For entering/escaping fullscreen browsing williamr@2: EStateHistoryBeginning, williamr@2: EStateHistoryEnd, williamr@2: EStateSynchRequestMode, ///< For synchronous (XHR) requests williamr@2: EStatePluginFullScreen williamr@2: }; williamr@2: /** williamr@2: * Type of the focused element. williamr@2: */ williamr@2: enum TBrCtlElementType williamr@2: { williamr@2: EElementNone = 0, ///< No element is present. williamr@2: EElementImageBox, ///< Box containing an image. williamr@2: /** williamr@2: * Element used to create either of the following: williamr@2: * A link to another document williamr@2: * A bookmark within a document williamr@2: */ williamr@2: EElementAnchor, williamr@2: EElementTelAnchor, ///< Anchor with a "tel:" scheme williamr@2: EElementMailtoAnchor, ///< Anchor with a "mailto:" scheme williamr@2: EElementInputBox, ///< Input box that can be selected and activated. williamr@2: EElementActivatedInputBox, ///< Input box that contains an entry field into which the user can type. williamr@2: /** williamr@2: * Box that contains a list of items. The user williamr@2: * can select one of the items by clicking it. williamr@2: */ williamr@2: EElementSelectBox, williamr@2: /** williamr@2: * Push button that can contain text or images. For example, Submit. williamr@2: */ williamr@2: EElementButton, williamr@2: EElementTextAreaBox, ///< Input box that contains more than one line. williamr@2: EElementRootBox, ///< Root of the document. williamr@2: EElementObjectBox, ///< Placeholder for a plug-in that has not yet been downloaded. williamr@2: /** williamr@2: * Box containing a plug-in that the user can williamr@2: * manipulate; for example, by navigating links. williamr@2: */ williamr@2: EElementActivatedObjectBox, williamr@2: EElementDownloadedObjectBox, ///< Plug-in that is present but is not being manipulated. williamr@2: EElementFileSelectionBoxNoContent, ///< File-browsing box in which no file is selected. williamr@2: EElementFileSelectionBoxWithContent, ///< File-browsing box in which a file was selected previously. williamr@2: EElementAreaBox, ///< Image map. williamr@2: EElementCheckBoxChecked, ///< A check box that was selected. williamr@2: EElementCheckBoxUnChecked, ///< A check box that was not selected. williamr@2: EElementRadioButtonSelected, ///< A radio button that was selected. williamr@2: EElementRadioButtonUnSelected, ///< A radio button that was not selected. williamr@2: williamr@2: EElementMouseButtonListener, ///< A Mouse button listener williamr@2: EElementScrollBar, ///< A scroll bar williamr@2: williamr@2: EElementSmartLinkTel, ///< A telephone number in the page. williamr@2: EElementSmartLinkEmail, ///< an email address in the page. williamr@2: EElementBrokenImage, ///< A missing image williamr@2: EElementSmartLinkVoip, ///< A voip smartlink williamr@2: EElementSelectMultiBox ///< A select box with multiple select williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Identifies the navigation direction williamr@2: */ williamr@2: enum TBrCtlNavigationDirection williamr@2: { williamr@2: ENavigationBack, ///< Navigate to the previous page williamr@2: ENavigationForward ///< Navigate to the next page williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Returns information about the version of the Browser Control. williamr@2: */ williamr@2: enum TBrCtlVersionInfo williamr@2: { williamr@2: EVersionInfoName = 0, ///< Name of the Browser Control williamr@2: EVersionInfoVersion, ///< Version of the Browser Control williamr@2: EVersionInfoBuild, ///< Build of the Browser Control williamr@2: EBrowserVersion ///< Browser Version williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Returns information about the version of the Browser Control. williamr@2: */ williamr@2: enum TBrCtlParams williamr@2: { williamr@2: EParamsUnknown = -1, ///< Not used williamr@2: /** williamr@2: * List of content types that do not use the Download Manager williamr@2: */ williamr@2: EParamsSelfDownoadableTypes = 0, williamr@2: /** williamr@2: * List of headers that the Browser Control should add to each request williamr@2: */ williamr@2: EParamsRequestHeaders, williamr@2: EParamsMax ///< Not used williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Reserved for future use williamr@2: */ williamr@2: enum TBrCtlFindResponse williamr@2: { williamr@2: EFindNoMatches = 0, ///< Reserved for future use williamr@2: EFindWrapAround, ///< Reserved for future use williamr@2: EFindAllMatches, ///< Reserved for future use williamr@2: EFindMatch ///< Reserved for future use williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Specifies the type of method to call to fetch a URL. williamr@2: * The MbrCtlWindowObserver employs this method. williamr@2: */ williamr@2: enum TBrCtlMethod williamr@2: { williamr@2: /** williamr@2: * Get method should be used to fetch content from a URL williamr@2: */ williamr@2: EMethodGet, williamr@2: /** williamr@2: * POST method should be used to fetch content from a URL williamr@2: */ williamr@2: EMethodPost williamr@2: }; williamr@2: /** williamr@2: * Commands sent by the host application williamr@2: * to the Browser Control by calling the HandleDownloadCommandL function. williamr@2: */ williamr@2: enum TBrCtlDownloadCmd williamr@2: { williamr@2: /** williamr@2: * Pauses the download identified williamr@2: * by the aTransId parameter of the HandleDownloadCommandL function. williamr@2: */ williamr@2: EDownloadCmdPause, williamr@2: /** williamr@2: * Resumes the download identified by williamr@2: * the aTransId parameter of the HandleDownloadCommandL function. williamr@2: */ williamr@2: EDownloadCmdResume, williamr@2: /** williamr@2: * Cancels the download identified by the williamr@2: * aTransId parameter of the HandleDownloadCommandL function. williamr@2: */ williamr@2: EDownloadCmdCancel, williamr@2: /** williamr@2: * Notifies the Download Manager that the download is progressive. williamr@2: * This means that the file can be played while the download is in progress. williamr@2: */ williamr@2: EDownloadCmdMarkAsProgressive, williamr@2: /** williamr@2: * Notifies the Download Manager that the download is not progressive. williamr@2: * This means that the file cannot be played while the download is in progress. williamr@2: */ williamr@2: EDownloadCmdMarkAsNotProgressive williamr@2: }; williamr@2: williamr@2: enum TBrCtlBitmapInfo williamr@2: { williamr@2: EBitmapThumbnail = 0, williamr@2: EBitmapFavicon williamr@2: }; williamr@2: williamr@2: /** williamr@2: * The client commands. williamr@2: */ williamr@2: enum TBrCtlClientCommands williamr@2: { williamr@2: EClientCommandLaunchFindKeyword = 0, williamr@2: EClientCommandSubscribeToFeeds, williamr@2: EClientCommandShowContextMenu, williamr@2: EClientCommandToolbarSettings, williamr@2: EClientCommandGotoWebAddress, williamr@2: EClientCommandManageBookmarks, williamr@2: EClientCommandSaveAsBookmark, williamr@2: EClientCommandZoomIn, williamr@2: EClientCommandZoomOut, williamr@2: EClientCommandGoToHompage, williamr@2: EClientCommandRotateScreen, williamr@2: EClientCommandSavePage, williamr@2: EClientCommandSwitchWindow, williamr@2: EClientCommandShowHelp, williamr@2: EClientCommandToolbarConfigure, williamr@2: EClientCommandToolbarShowKeymap, williamr@2: EClientCommandFullScreen, williamr@2: EClientCommandZoomMode williamr@2: }; williamr@2: williamr@2: /** williamr@2: * The widget params. williamr@2: */ williamr@2: enum TBrCtlWidgetParams williamr@2: { williamr@2: EWidgetIdentifier = 0, williamr@2: EWidgetBundleId, williamr@2: EWidgetBasePath, williamr@2: EWidgetPublishState williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Orientation for rotating display williamr@2: */ williamr@2: enum TBrCtlOrientation williamr@2: { williamr@2: EOrientationUndefined = 0, williamr@2: EOrientationLandscape, williamr@2: EOrientationPortrait williamr@2: }; williamr@2: williamr@2: /** williamr@2: * How to notify javascript logs. williamr@2: */ williamr@2: enum TBrCtlScriptLog williamr@2: { williamr@2: /** williamr@2: * script log output disabled williamr@2: */ williamr@2: EScriptLogDisable, williamr@2: /** williamr@2: * script log output to a log file williamr@2: */ williamr@2: EScriptLogToFile, williamr@2: /** williamr@2: * script log output to GUI console williamr@2: */ williamr@2: EScriptLogToConsole, williamr@2: /** williamr@2: * script log output to both GUI console and file williamr@2: */ williamr@2: EScriptLogToConsoleFile williamr@2: }; williamr@2: williamr@2: enum TBrCtlFormData williamr@2: { williamr@2: EFormDataOff, williamr@2: EFormDataOnly, williamr@2: EFormDataPlusPassword williamr@2: }; williamr@2: }; williamr@2: williamr@2: #endif // BRCTLDEFS_H williamr@2: williamr@2: // End of File