--- a/browserui/browser/BrowserAppInc/BrowserGotoPane.h Thu Aug 19 09:57:56 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,482 +0,0 @@
-/*
-* Copyright (c) 2002 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: Browser Goto pane.
-*
-*/
-
-
-#ifndef WML_GOTO_PANE_BASE_H
-#define WML_GOTO_PANE_BASE_H
-
-// DEFINES
-#ifndef GOTOPANE_POPUPLIST_DISABLE
-#define GOTOPANE_POPUPLIST_DISABLE EFalse
-#endif
-
-#ifndef GOTOPANE_POPUPLIST_ENABLE
-#define GOTOPANE_POPUPLIST_ENABLE ETrue
-#endif
-
-// INCLUDE FILES
-#include <coecntrl.h>
-#include <eikedwin.h>
-#include <Avkon.mbg>
-
-// FORWARD DECLARATION
-class CAknInputFrame;
-class CBrowserGotoPane;
-class CBrowserAdaptiveListPopup;
-class CBrowserContentView;
-
-// CLASS DECLARATION
-/**
-* Mixin class for handling Goto Pane events.
-*
-* @lib Browser.app
-* @since Series60 1.2
-*/
-class MGotoPaneObserver
- {
-
- public: // types
-
- enum TEvent /// Goto Pane events.
- {
- EEventEnterKeyPressed ///< Enter (OK) key pressed.
- };
-
- public: // new methods
-
- /**
- * Handle Goto Pane event. Derived classes must implement.
- * @since Series60 1.2
- * @param aGotoPane The Goto Pane in which the event occurred
- * @param aEvent Goto Pane event
- */
- virtual void HandleGotoPaneEventL( CBrowserGotoPane* aGotoPane, TEvent aEvent ) = 0;
- };
-
-
-/**
-* Key event handled. Has higher priority than FEP,
-* to be able to catch up/down key event and forward
-* them to goto pane's editor.
-*
-* @lib Browser.app
-* @since Series 60 1.2
-*/
-class CBrowserKeyEventHandled : public CCoeControl, public MEikEdwinObserver
- {
- public:
-
- /**
- * public constructor
- * @param aGotoPane pointer to goto pane that key events are controled
- */
- CBrowserKeyEventHandled( CBrowserGotoPane& aGotoPane );
-
- /**
- * Catches key events before FEP could do it.
- * @since Series60 1.2
- * @param aKeyEvent
- * @param aType
- * @return
- */
- virtual TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
-
- /**
- * Catches EEventTextUpdate event.
- * @since Series60 1.2
- * @param aKeyEvent
- * @param aType
- * @return
- */
- virtual void HandleEdwinEventL(CEikEdwin* aEdwin,TEdwinEvent aEventType);
-
- /**
- * Put control to control stack or remove it from there.
- * @since Series60 1.2
- * @param aEnable ETrue puts control to the control stack with higher
- * priority than FEP has. EFalse removes control from the stack.
- */
- void EnableL( TBool aEnable );
-
- /**
- * Set iFirstKeyEvent to TRUE.
- * @since Series60 1.2
- */
- void Reset();
-
- /**
- * Get LeftRightEvent.
- * @since Series60 1.2
- */
-
- TBool IsLeftRightEvent() { return iLeftRightEvent; }
-
- /**
- * SetFirstKey.
- * @since Series60 3.2
- */
- void SetFirstKeyEvent(TBool aFirstKeyEvent) {iFirstKeyEvent = aFirstKeyEvent;}
-
-
- protected:
-
- // key event catching enable flag
- TBool iEnabled;
-
- // only first key event is catched
- TBool iFirstKeyEvent;
-
- //
- TBool iLeftRightEvent;
-
- // goto pane control of which key events are catched
- CBrowserGotoPane& iGotoPane;
- };
-
-/**
-* Goto Pane Base for the WML Browser & Bookmarks.
-* It looks just like a search field.
-*
-* @lib Browser.app
-* @since Series 60 1.2
-*/
-class CBrowserGotoPane:
- public CCoeControl, public MCoeControlObserver, public MCoeFepObserver
- {
- public:
- /**
- * Two-phased constructor. Leaves on failure.
- * @since Series60 1.2
- * @param aParent Parent control
- * @param aIconBitmapId Id of the icon to display
- * @param aIconMaskId Id of the icon`s mask
- * @param aPopupListStatus True if the pane uses popuplist,
- * otherwise false.
- * @param aContentView Pointer to content view
- * @param aFindKeywordMode Set true if the pane is a find keyword pane.
- * @return The constructed Goto Pane control
- */
- static CBrowserGotoPane* NewL
- (
- const CCoeControl* aParent,
- TInt aIconBitmapId = EMbmAvkonQgn_indi_find_goto,
- TInt aIconMaskId = EMbmAvkonQgn_indi_find_goto_mask,
- TBool aPopupListStatus = GOTOPANE_POPUPLIST_ENABLE,
- CBrowserContentView* aContentView = NULL,
- TBool aFindKeywordMode = EFalse
- );
-
- /**
- * Destructor.
- */
- virtual ~CBrowserGotoPane();
-
- /**
- * Makes goto pane (un)visible.
- * @since Series60 1.2
- * @param ETrue to set visible
- */
- virtual void MakeVisibleL( TBool aVisible );
-
- /**
- * Non-leaving version of MakeVisibleL.
- * @since Series60 1.2
- * @param ETrue to set visible
- */
- virtual void MakeVisible( TBool aVisible );
-
- /**
- * See description in calslbs.h.
- */
- void HandleFindSizeChanged();
-
- /**
- * Enable key event handler.
- * @since Series60 1.2
- * @param aEnable TRUE to enable
- */
- void EnableKeyEventHandlerL( TBool aEnable );
-
- /**
- * Activate GoTo Pane.
- */
- void SetGotoPaneActiveL();
-
- /**
- * Activate Search Pane.
- */
- void SetSearchPaneActiveL();
-
- /**
- * Check if we are in Goto Mode
- * @return ETrue if we are in Goto Mode; EFalse otherwise.
- */
- inline TBool GotoPaneActive() const { return iGotoPaneActive; }
-
- /**
- * Check if we are in Search Mode
- * @return ETrue if we are in Search Mode; EFalse otherwise.
- */
- inline TBool SearchPaneActive() const { return iSearchPaneActive; }
-
- public: // from MCoeControlObserver
-
- /**
- * Handle control event.
- * @since Series60 1.2
- * @param aControl The control
- * @param aEventType Event type
- */
- void HandleControlEventL
- ( CCoeControl* aControl, TCoeEvent aEventType );
-
- public: // from CCoeControl
-
- /**
- * Handle key event.
- * @since Series60 1.2
- * @param aKeyEvent The key event
- * @param aType Key event type
- * @return Response (was the key event consumed?)
- */
- virtual TKeyResponse OfferKeyEventL
- ( const TKeyEvent& aKeyEvent, TEventCode aType );
-
- /**
- * HandlePointerEventL
- * From CCoeControl
- *
- */
- void HandlePointerEventL(const TPointerEvent& /*aPointerEvent*/);
-
- /**
- * HandleResourceChange
- * From CCoeControl
- */
- void HandleResourceChange(TInt aType);
-
-
- public: // from CCoeControl
-
- /**
- * Count component controls.
- * @since Series60 1.2
- * @return Number of component controls
- */
- virtual TInt CountComponentControls() const;
-
- /**
- * Get a component control by index.
- * @since Series60 1.2
- * @param aIndex Index of component control to be returned
- * @return Component control or NULL
- */
- virtual CCoeControl* ComponentControl( TInt aIndex ) const;
-
- /**
- * Sets the OrdinalPosition of GotoPane
- * @param aPos The OrdinalPosition
- */
- void SetOrdinalPosition( TInt aPos );
-
- public: // Text manipulation
-
- /**
- * Length of the Search text in the editor.
- * @return The text length
- */
- TInt SearchTextLength() const;
-
- /**
- * Length of the text in the editor.
- * @since Series60 1.2
- * @return The text length
- */
- TInt TextLength() const;
-
- /**
- * Get text from the editor.
- * @since Series60 1.2
- * @return text from the editor
- */
- HBufC* GetTextL() const;
-
- /**
- * Set text.
- * @since Series60 1.2
- * @param aTxt Text to set
- * appended if needed.
- */
- virtual void SetTextL( const TDesC& aTxt );
-
- /**
- * Set Editor Font Posture to Italic.
- */
- void SetTextModeItalicL( );
-
- /**
- * Set Search text.
- * @param aTxt Text to set
- * appended if needed.
- */
- void SetSearchTextL( const TDesC& aTxt );
-
- /**
- * Selects all text in the editor.
- * See CEikEdwin's SelectAllL();
- * @since Series60 1.2
- */
- void SelectAllL();
-
- /**
- * Set info text.
- * @since Series60 1.2
- * @param aText Text to be displayed as info
- */
- void SetInfoTextL( const TDesC& aText );
-
- /**
- * Perform clipboard functionality.
- * @since Series60 1.2
- * @param aClipboardFunc Function to perform
- */
- void ClipboardL( CEikEdwin::TClipboardFunc aClipboardFunc );
-
- /**
- * Returns editor control of goto pane.
- * @since Series60 1.2
- * @return editor control of goto pane
- */
- CEikEdwin* Editor() const;
-
- void ResetPrevText();
-
- public: // observer support
-
- /**
- * Set observer. Pass NULL pointer to unset. Panics if already set.
- * @since Series60 1.2
- */
- void SetGPObserver( MGotoPaneObserver* aObserver );
-
- /**
- * Gives back a pointer to adaptivepopuplist
- */
- CBrowserAdaptiveListPopup* PopupList();
-
- /**
- * Handles the completion of a FEP transaction
- */
- void HandleCompletionOfTransactionL();
-
- /**
- * Handles the start of a FEP transaction
- */
- void HandleStartOfTransactionL();
-
- protected: // Construct / destruct
- /**
- * Constructor.
- * @param
- */
- CBrowserGotoPane( CBrowserContentView* aContentView, TBool aFindKeywordMode );
-
- /**
- * Second-phase constructor. Leaves on failure.
- * @param aParent Parent control
- */
- void ConstructL( const CCoeControl* aParent, TInt aIconBitmapId, TInt aIconMaskId, TBool aPopupListStatus );
-
- /**
- * Constructs Search Pane.
- */
- void ConstructSearchPaneL();
-
- protected: // from CCoeControl
-
- /**
- * Handle size change, lay out and draw components.
- */
- virtual void SizeChanged();
-
- /**
- * Handle focus change.
- * @since Series60 1.2
- * @param aDrawNow Draw now?
- */
- virtual void FocusChanged( TDrawNow aDrawNow );
-
- private:
-
- /**
- * Set the text and redraw.
- * @since Series60 1.2
- */
- void DoSetTextL( const TDesC& aTxt );
-
- void ActivateVKB();
-
-
- protected: // data
-
- CBrowserContentView* iContentView; //Not owned.
-
- // If the control is in find keyword pane mode.
- TBool iFindKeywordMode;
-
- // HandleFEPFind
- TBool iHandleFEPFind;
-
- // The previously typed text into iEditor
- HBufC* iPrevKeyword;
-
- // Editor. Owned.
- CEikEdwin* iEditor;
-
- // Input frame. Owned.
- CAknInputFrame* iInputFrame;
-
- // Search Editor. Owned.
- CEikEdwin* iSearchEditor;
-
- // Search Input frame. Owned.
- CAknInputFrame* iSearchInputFrame;
-
- // Observer (may be NULL). Not owned.
- MGotoPaneObserver* iGPObserver;
-
-
- CBrowserKeyEventHandled *iGotoKeyHandled;
-
- /// adaptive popuplist
- CBrowserAdaptiveListPopup* iBAdaptiveListPopup;
-
- // Represents Active Editors
- TBool iGotoPaneActive;
- TBool iSearchPaneActive;
-
- // Default text in Search Editor.Owned.
- HBufC* iDefaultSearchText;
-
- // Search Input Frame Icon Id, used for tracking the Search Icon Changes.
- TInt iSearchIconId;
-
- // Stores the Search Icon File Path.
- TFileName iSearchIconFilePath;
- };
-
-#endif