📄 launchjavaview.cpp
字号:
/*
============================================================================
Name : CLaunchJavaView from LaunchJavaView.h
Author :
Version :
Copyright : Your copyright notice
Description : CLaunchJavaView implementation
============================================================================
*/
#include <APGCLI.H>
#include <aknviewappui.h>
#include <avkon.hrh>
#include <LaunchJava.rsg>
#include "LaunchJavaView.h"
#include "LaunchJavaContainer.h"
#include "LaunchJava.hrh"
// ---------------------------------------------------------
// CLaunchJavaView::ConstructL(const TRect& aRect)
// EPOC two-phased constructor
// ---------------------------------------------------------
//
void CLaunchJavaView::ConstructL()
{
BaseConstructL( R_LAUNCHJAVA_VIEW1 );
}
// ---------------------------------------------------------
// CLaunchJavaView::~CLaunchJavaView()
// destructor
// ---------------------------------------------------------
//
CLaunchJavaView::~CLaunchJavaView()
{
if ( iContainer )
{
AppUi()->RemoveFromViewStack( *this, iContainer );
}
delete iContainer;
}
// ---------------------------------------------------------
// TUid CLaunchJavaView::Id()
//
// ---------------------------------------------------------
//
TUid CLaunchJavaView::Id() const
{
return KViewId;
}
// ---------------------------------------------------------
// CLaunchJavaView::HandleCommandL(TInt aCommand)
// takes care of view command handling
// ---------------------------------------------------------
//
void CLaunchJavaView::HandleCommandL(TInt aCommand)
{
switch ( aCommand )
{
case EAknSoftkeyOk:
{
iEikonEnv->InfoMsg( _L("view1 ok") );
break;
}
case EAknSoftkeyBack:
{
AppUi()->HandleCommandL(EEikCmdExit);
break;
}
case ELaunchJavaCmdLaunch:
{
DoLaunchL();
break;
}
default:
{
AppUi()->HandleCommandL( aCommand );
break;
}
}
}
// ---------------------------------------------------------
// CLaunchJavaView::HandleClientRectChange()
// ---------------------------------------------------------
//
void CLaunchJavaView::HandleClientRectChange()
{
if ( iContainer )
{
iContainer->SetRect( ClientRect() );
}
}
// ---------------------------------------------------------
// CLaunchJavaView::DoActivateL(...)
//
// ---------------------------------------------------------
//
void CLaunchJavaView::DoActivateL(
const TVwsViewId& /*aPrevViewId*/,TUid /*aCustomMessageId*/,
const TDesC8& /*aCustomMessage*/)
{
if (!iContainer)
{
iContainer = new (ELeave) CLaunchJavaContainer;
iContainer->SetMopParent(this);
iContainer->ConstructL( ClientRect() );
AppUi()->AddToStackL( *this, iContainer );
}
}
// ---------------------------------------------------------
// CLaunchJavaView::DoDeactivate()
//
// ---------------------------------------------------------
//
void CLaunchJavaView::DoDeactivate()
{
if ( iContainer )
{
AppUi()->RemoveFromViewStack( *this, iContainer );
}
delete iContainer;
iContainer = NULL;
}
void CLaunchJavaView::DoLaunchL()
{
RApaLsSession apa;
User::LeaveIfError( apa.Connect() );
CleanupClosePushL( apa );
_LIT( KFileName, "c:\\Private\\102033E6\\MIDlets\\[10100b88]\\Rich.jar" );
TUid KUid = { 0x101bba4b };
TThreadId threadId;
TInt err = KErrNone;
TApaAppInfo info;
err = apa.GetAppInfo( info, KUid );
if ( err != KErrNone )
{
CEikonEnv::Static()->InfoWinL( _L("DoLaunchL"), _L("Error in getting AppInfo!") );
CleanupStack::PopAndDestroy( ); // apa
return;
}
// CEikonEnv::Static()->InfoWinL( _L("DoLaunchL"), info.iFullName );
err = apa.StartDocument( _L(""), KUid, threadId);
CleanupStack::PopAndDestroy( ); // apa
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -