diff -r 12f60d9a73b3 -r cbffe13eac63 csxhelp/inc/CSXHDocument.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/csxhelp/inc/CSXHDocument.h Wed Sep 01 12:30:56 2010 +0100 @@ -0,0 +1,210 @@ +/* +* 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 "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: CCSXHDocument class declaration +* +*/ + + +#ifndef INC_CSXHDOCUMENT_H_HEADER_INCLUDED_BC0121B7 +#define INC_CSXHDOCUMENT_H_HEADER_INCLUDED_BC0121B7 + +#include + +// Forward references +class CAknAppUi; +class CEikApplication; +class CCSXHHelpDataBase; +class CCSXHHelpContentBase; +class CEikAppUi; +class CEikProgressInfo; +class CAknProgressDialog; +class CIdle; +/** + @class CCSXHDocument +* An instance of class CCSXHDocument is the Document part of the AVKON +* application framework for the Csxhelp application +*/ + +class CCSXHDocument : public CAknDocument + { + public: +/** +* @function NewL +* @since S60 3.2 +* Construct a CCSXHDocument for the AVKON application aApp +* construction, and return a pointer to the created object +* @param aApp - Application Object +* @return a CCSXHDocument Pointer +*/ + static CCSXHDocument* NewL( + // application creating this document + CEikApplication& aApp); + // Construct a CCSXHDocument for the AVKON application aApp using two phase + // construction, and return a pointer to the created object + +/** +* @function NewLC +* @since S60 3.2 +* Construct a CCSXHDocument for the AVKON application aApp using two phase +* construction, and return a pointer to the created object +* @param aApp - Application Object +* @return a CCSXHDocument Pointer +*/ + static CCSXHDocument* NewLC( + // application creating this document + CEikApplication& aApp); + + +/** +* @function ~CCSXHDocument +* @since S60 3.2 +* Destroy the object and release all memory objects +*/ + ~CCSXHDocument(); + + public: // from CAknDocument +/** +* @function CreateAppUiL +* @since S60 3.2 +* Create a CCSXHAppUi object and return a pointer to it +* @return CCSXHAppUi class pointer +*/ + CEikAppUi* CreateAppUiL(); + + public: +/** +* @function SetDisplayTopic +* @since S60 3.2 +* @param aDisplayTopic - HelpContentbase Class pointer +*/ + void SetDisplayTopic(CCSXHHelpContentBase *aDisplayTopic); +/** +* @function SetDisplayAndPrevTopic +* @since S60 3.2 +* @param aDisplayTopic - HelpContentbase Class pointer +*/ + void SetDisplayAndPrevTopic(CCSXHHelpContentBase *aDisplayTopic); +/** +* @function GetDisplayTopic +* @since S60 3.2 +* @return HelpContentBase Class pointer +*/ + inline CCSXHHelpContentBase* GetDisplayTopic() const + {return iDisplayTopic;} +/** +* @function GetPrevTopic +* @since S60 3.2 +* @return HelpContentBase Class pointer +*/ + inline CCSXHHelpContentBase* GetPrevTopic() const + {return iPrevTopic;} +/** +* @function ClearPrevTopic +* @since S60 3.2 +* @Clears the previous topic +*/ + inline void ClearPrevTopic() + {iPrevTopic = NULL;} +/** +* @function GetHelpDataBase +* @since S60 3.2 +* @return HelpContentBase Class pointer +*/ + inline CCSXHHelpDataBase* GetHelpDataBase() const + {return iHelpDataBase;} + +/** +* @function GetHelpDataBase +* @since S60 3.2 +* Sends a Command to Application UI Class +* @param aCommand - Command to be Handled +*/ + void SendMessageToAppUiL(TInt aCommand); + +/** +* @function SetContextTopicAsDisplayTopicL +* @since S60 3.2 +* Parse the Message, Get the topic for Display & set this Object as Current Display Object +* @param aContextMessage - Message from Other Application for Context Sensitive launch +* @return ETrue for Topic Found /EFalse for topic Not found +*/ + TBool SetContextTopicAsDisplayTopicL(const TDesC8& aContextMessage); + +/** +* @function GetHtmlTopicForUrlL +* @since S60 3.2 +* Get the Object for HTML topic using url Name +* @param url - url Name +* @return Pointer to the HelpDataBase which contains HTMLtopic info +*/ + CCSXHHelpContentBase* GetHtmlTopicForUrlL(const TDesC &url); + +/** +* @function InitProgressBar +* @since S60 3.2 +* Initializes the progress bar +*/ + void InitProgressBarL(); + +/** +* @function FreeProgressBar +* @since S60 3.2 +* Frees the progress bar +*/ + void FreeProgressBarL(); + +/** + * function for TCAllBack protocol. + * called directly + * @since 1.1 + * @param aThis is the pointer to the actual instance + * @return Whether finished or not + */ + static TInt CallBack(TAny* aThis); + + /** + * call back function. + * called by CallBackL() + * @since 1.1 + * @return Whether finished or not + */ + TInt DoCallBackL(); + + private: +/** +* @function CCSXHDocument +* @since S60 3.2 +* Perform the first phase of two phase construction +*/ + CCSXHDocument( + // application creating this document + CEikApplication& aApp); + + private: + CCSXHHelpDataBase *iHelpDataBase; + CAknAppUi *iHelpAppUi; + + CCSXHHelpContentBase *iDisplayTopic; + CCSXHHelpContentBase *iPrevTopic; + + CAknProgressDialog *iProgressDialog; + + CIdle *iIdle; + + TInt iTotalKeywordsInResultView; + }; + + + +#endif /* INC_CSXHDOCUMENT_H_HEADER_INCLUDED_BC0121B7 */