📄 chvappview.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 + -