⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chvappview.cpp

📁 在SB手机上实现了HVO软件的功能
💻 CPP
字号:
/*
 * HView [c]2004 Marcin Skoczylas, All rights reserved
 *
 * This file is under GPL license, see gpl.txt file
 *
 */

#include <aknviewappui.h>
#include <avkon.hrh>


#include <eikspane.h>
#include <e32std.h>
#include <eikmenub.h>
#include <avkon.hrh>
#include <barsread.h>
#include <akntitle.h>
#include <aknnavi.h>
#include <akncontext.h>
#include <avkon.rsg>
#include "hv.hrh"
#include "CHVAppView.h"
#include "CHVContainer.h"

#include <hview.rsg>

#include "DBG_LOGF.h"

CHVAppView::CHVAppView()
{
}

void CHVAppView::ConstructL(CHVAppUi *appUi)
{
	BaseConstructL(R_HVAPP_VIEW);
	this->appUi = appUi;
}

CHVAppView::~CHVAppView()
{
	if (iContainer)
	{
		AppUi()->RemoveFromStack(iContainer);
	}
	delete iContainer;
}


TUid CHVAppView::Id() const
{
    return KAppViewId;
}

void CHVAppView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
{
	//CAknExMenuView
	LOGF("init menu pane\n");

	if (aResourceId == R_HV_MENU_OPTIONS)
	{
		if (!iContainer || iContainer->fileOpened == false)
		{
			aMenuPane->SetItemDimmed(ESwitchToPlain, ETrue);
			aMenuPane->SetItemDimmed(ESwitchToBinary, ETrue);
			//aMenuPane->SetItemDimmed(ESearchFile, ETrue);
			aMenuPane->SetItemDimmed(EGotoFilePos, ETrue);
		}
		else if (iContainer->viewMode == EViewPlain)
		{
			aMenuPane->SetItemDimmed(ESwitchToPlain, ETrue);
			aMenuPane->SetItemDimmed(ESwitchToBinary, EFalse);
			//aMenuPane->SetItemDimmed(ESearchFile, EFalse);
			aMenuPane->SetItemDimmed(EGotoFilePos, EFalse);
		}
		else if (iContainer->viewMode == EViewBinary)
		{
			aMenuPane->SetItemDimmed(ESwitchToBinary, ETrue);
			aMenuPane->SetItemDimmed(ESwitchToPlain, EFalse);
			//aMenuPane->SetItemDimmed(ESearchFile, EFalse);
			aMenuPane->SetItemDimmed(EGotoFilePos, EFalse);
		}

	}
	LOGF("done init menu pane\n");
}


void CHVAppView::HandleCommandL(TInt aCommand)
{   
	/*
	switch (aCommand)
        {
        default:
      */  
			
			AppUi()->HandleCommandL(aCommand);

            
		/*	
			break;
        }

  */
}

void CHVAppView::HandleClientRectChange()
{
    if (iContainer)
	{
        iContainer->SetRect(ClientRect());
    }
}

// Creates the Container class object.
void CHVAppView::DoActivateL(const TVwsViewId& /*aPrevViewId*/,
                                    TUid /*aCustomMessageId*/,
                                    const TDesC8& /*aCustomMessage*/)
{
    iContainer = new (ELeave) CHVContainer;
    iContainer->SetMopParent(this);
    iContainer->ConstructL(ClientRect(), appUi);
    AppUi()->AddToStackL(*this, iContainer);
}

// Deletes the Container class object.
// ---------------------------------------------------------
void CHVAppView::DoDeactivate()
{
    if (iContainer)
    {
        AppUi()->RemoveFromStack(iContainer);
	}
    
    delete iContainer;
    iContainer = NULL;
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -