--- a/csxhelp/src/CSXHDocument.cpp Thu Aug 19 09:42:56 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-/*
-* 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 definition
-*
-*/
-
-
-#include "CSXHDocument.h"
-#include "CSXHAppUi.h"
-
-#include "CSXHHelpDataBase.h"
-#include "CSXHKywdTOC1.h"
-#include "CSXHViewIDs.h"
-#include <eikprogi.h>
-
-#include <cshelp.rsg>
-#include <AknProgressDialog.h>
-
-
-// Standard Symbian OS construction sequence
-CCSXHDocument* CCSXHDocument::NewL(CEikApplication& aApp)
- {
- CCSXHDocument* self = NewLC(aApp);
- CleanupStack::Pop(self);
- return self;
- }
-
-CCSXHDocument* CCSXHDocument::NewLC(CEikApplication& aApp)
- {
- CCSXHDocument* self = new (ELeave) CCSXHDocument(aApp);
- CleanupStack::PushL(self);
- return self;
- }
-
-CCSXHDocument::CCSXHDocument(CEikApplication& aApp) : CAknDocument(aApp)
- {// no implementation required
- }
-
-CCSXHDocument::~CCSXHDocument()
- {
- delete iHelpDataBase;
- }
-
-CEikAppUi* CCSXHDocument::CreateAppUiL()
- {
- // Create the application user interface, and return a pointer to it,
- // the framework takes ownership of this object. ConstructL of the AppUi
- // object will be called by the Application Framework
- iHelpAppUi = new (ELeave) CCSXHAppUi;
-
- HBufC* appToc = CCSXHAppUi::GetCoeEnv()->AllocReadResourceLC( R_CSHELP_TOC_APP_HELPS );
- iHelpDataBase = CCSXHHelpDataBase::NewL(CCSXHAppUi::GetCoeEnv(),AppCaption(), *appToc);
- CleanupStack::PopAndDestroy( appToc );
-
- iDisplayTopic = iHelpDataBase->GetMainTopics();
- iPrevTopic = NULL;
-
- iProgressDialog = NULL;
-
- return iHelpAppUi;
- }
-// --------------------------------------------------------------------------
-// Sets the topic to be displayed next
-// --------------------------------------------------------------------------
-void CCSXHDocument::SetDisplayTopic(CCSXHHelpContentBase* aDisplayTopic)
- {
- iDisplayTopic = aDisplayTopic;
- iPrevTopic = NULL;
-
- if(iDisplayTopic == NULL)
- iDisplayTopic = iHelpDataBase->GetMainTopics();
- }
-// --------------------------------------------------------------------------
-// Sets the topic to be displayed next and the previous topic
-// The previous topic is needed to highlight the correct item in the listbox
-// --------------------------------------------------------------------------
-void CCSXHDocument::SetDisplayAndPrevTopic(CCSXHHelpContentBase* aDisplayTopic)
- {
- iPrevTopic = iDisplayTopic;
- iDisplayTopic = aDisplayTopic;
-
- if(iDisplayTopic == NULL)
- iDisplayTopic = iHelpDataBase->GetMainTopics();
-
- }
-
-void CCSXHDocument::SendMessageToAppUiL(TInt aCommand)
- {
- iHelpAppUi->ProcessCommandL(aCommand);
- }
-
-// --------------------------------------------------------------------------
-// Sets the context topic as the next topic to be displayed
-// --------------------------------------------------------------------------
-TBool CCSXHDocument::SetContextTopicAsDisplayTopicL(const TDesC8& aContextMessage)
- {
- CCSXHHelpContentBase* topic = iHelpDataBase->GetContextTopic(aContextMessage);
- if(topic)
- {
- SetDisplayTopic(topic);
- return ETrue;
- }
- return EFalse;
- }
-CCSXHHelpContentBase* CCSXHDocument::GetHtmlTopicForUrlL(const TDesC& url)
- {
- return iHelpDataBase->GetHtmlTopicForUrlL(url);
- }
-
-void CCSXHDocument::InitProgressBarL()
- {
-
- iProgressDialog = new(ELeave)CAknProgressDialog(
- REINTERPRET_CAST(CEikDialog**,&iProgressDialog));
- iProgressDialog->PrepareLC(R_CSHELP_SEARCH_PROGRESS_NOTE);
-
- CEikProgressInfo* pBar = iProgressDialog->GetProgressInfoL();
- iTotalKeywordsInResultView = iHelpDataBase->InitGenerateKeywordTOC2ListL(
- STATIC_CAST(CCSXHKywdTOC1*,iDisplayTopic));
- pBar->SetFinalValue(iTotalKeywordsInResultView);
- iIdle = CIdle::NewL(CActive::EPriorityLow);
- TCallBack callback(CallBack, this);
- iIdle->Start(callback);
- iProgressDialog->RunDlgLD(CAknNoteDialog::ENoTone);
- }
-
-void CCSXHDocument::FreeProgressBarL()
- {
- delete iIdle;
- iIdle = NULL;
- if(iProgressDialog)
- {
- iProgressDialog->ProcessFinishedL();
- iProgressDialog = NULL;
- }
- }
-
-TInt CCSXHDocument::CallBack(TAny* aThis)
- {
- TInt err(KErrNone);
- TBool res(EFalse);
- CCSXHDocument* self = STATIC_CAST(CCSXHDocument*, aThis);
- TRAP( err, res = self->DoCallBackL() );
- if(err != KErrNone )
- {
- TRAP_IGNORE(self->FreeProgressBarL());
- }
- return res;
- }
-TBool CCSXHDocument::DoCallBackL()
- {
- if(!iProgressDialog)
- {
- delete iIdle;
- iIdle = NULL;
- return EFalse;
- }
-
- CEikProgressInfo* pBar= iProgressDialog->GetProgressInfoL();
- pBar->SetAndDraw(iHelpDataBase->GetKeywordSearchCount());
-
- if(iHelpDataBase->GetKeywordSearchCount() >= iTotalKeywordsInResultView)
- {
- FreeProgressBarL();
- return EFalse;
- }
-
- return ETrue;
- }
-