frmesappui.cpp.bak
来自「symbian 3nd 实现短信息收发」· BAK 代码 · 共 266 行
BAK
266 行
/* Copyright (c) 2008, Nokia. All rights reserved */
#include <avkon.hrh>
#include <aknnotewrappers.h>
#include <FrMes.mbg>
#include "FrMes.pan"
#include "FrMesAppUi.h"
#include "RegisterView.h"
#include "LogonView.h"
#include "MainInterfaceView.h"
#include "PersonInfoView.h"
#include "CreatInfoView.h"
#include "DetailInfoView.h"
#include "HelpView.h"
#include "CardClipView.h"
#include "DetailCardView.h"
#include "ModifyCardView.h"
#include "CreateCardView.h"
#include "SelectCardView.h"
#include "MessageView.h"
#include "CreateMesView.h"
#include "ReceiveMesView.h"
#include "DetailMesView.h"
#include "SendingMesView.h"
#include "SendMesView.h"
#include "BookMesView.h"
#include "FrMes.hrh"
#include "s32file.h"
#include "FrMesDB.h"
#include <eikapp.h>
void CFrMesAppUi::ConstructL()
{
BaseConstructL(EAknEnableSkin);
m_pDB = CFrMesDB::NewL();
CleanupStack::PushL(m_pDB);
m_pDB->ReadDBL();
CleanupStack::Pop();
iRegisterView = CRegisterView::NewL();
AddViewL(iRegisterView);
iLogonView = CLogonView::NewL();
AddViewL(iLogonView);
iMainInterfaceView = CMainInterfaceView::NewL();
AddViewL(iMainInterfaceView);
iPersonInfoView = CPersonInfoView::NewL();
AddViewL(iPersonInfoView);
iCreatInfoView = CCreatInfoView::NewL();
AddViewL(iCreatInfoView);
iDetailInfoView = CDetailInfoView::NewL();
AddViewL(iDetailInfoView);
iHelpView = CHelpView::NewL();
AddViewL(iHelpView);
iCardClipView = CCardClipView::NewL();
AddViewL(iCardClipView);
iDetailCardView = CDetailCardView::NewL();
AddViewL(iDetailCardView);
iModifyCardView = CModifyCardView::NewL();
AddViewL(iModifyCardView);
iCreateCardView = CCreateCardView::NewL();
AddViewL(iCreateCardView);
iSelectCardView = CSelectCardView::NewL();
AddViewL(iSelectCardView);
iMessageView = CMessageView::NewL();
AddViewL(iMessageView);
iCreateMesView = CCreateMesView::NewL();
AddViewL(iCreateMesView);
iReceiveMesView = CReceiveMesView::NewL();
AddViewL(iReceiveMesView);
iDetailMesView = CDetailMesView::NewL();
AddViewL(iDetailMesView);
iSendingMesView = CSendingMesView::NewL();
AddViewL(iSendingMesView);
iSendMesView = CSendMesView::NewL();
AddViewL(iSendMesView);
iBookMesView = CBookMesView::NewL();
AddViewL(iBookMesView);
if(!ReadINI())
SetDefaultViewL(*iRegisterView);
else
SetDefaultViewL(*iLogonView);
}
CFrMesAppUi::CFrMesAppUi()
{
// add any construction that cannot leave here
}
CFrMesAppUi::~CFrMesAppUi()
{
delete m_pDB;
}
// void CFrMesAppUi::GetAppPath(TDes& aPath)
// {
// TFileName appFullName;
// appFullName = Application()->AppFullName();
// TParsePtr parse(appFullName);
// aPath.Copy(parse.DriveAndPath());
// }
void CFrMesAppUi::HandleCommandL(TInt aCommand)
{
switch(aCommand)
{
case EEikCmdExit:
case EAknSoftkeyExit:
{
m_pDB->SaveDBL();
Exit();
}
break;
case EFrMesCmdRegisterMenu2:
{
ActivateLocalViewL(KLogonViewId);
}
break;
case EFrMesCmdRegisterMenu1:
{
ActivateLocalViewL(KMainInterfaceViewId);
}
break;
case EAknSoftkeyLogon:
{
ActivateLocalViewL(KMainInterfaceViewId);
}
break;
// case EFrMesCmdMainInterfaceMenu1:
// {
// ActivateLocalViewL(KPersonInfoViewId);
// }
// break;
case EFrMesCmdMainInterfaceMenu2:
{
KPreViewID = KMainInterfaceViewId;
ActivateLocalViewL(KHelpViewId);
}
break;
case EFrMesCmdPersonInfoMenu2:
{
ActivateLocalViewL(KCreatInfoViewId);
}
break;
case EFrMesCmdPersonInfoMenu1:
{
KPreViewID = KPersonInfoViewId;
ActivateLocalViewL(KDetailInfoViewId);
}
break;
case EFrMesCmdPersonInfoMenu4:
{
KPreViewID = KPersonInfoViewId;
ActivateLocalViewL(KHelpViewId);
}
break;
case EAknSoftkeyBack:
{
ActivateLocalViewL(KPreViewID);
}
break;
case EAknSoftkeyReturn:
{
ActivateLocalViewL(KMainInterfaceViewId);
}
break;
case EAknSoftkeyOk:
case EAknSoftkeyCancel:
{
ActivateLocalViewL(KPersonInfoViewId);
}
break;
default:
Panic(EFrMesBasicUi);
break;
}
}
TBool CFrMesAppUi::ReadINI()
{
#ifdef __WINS__
_LIT(KFrMesUserFile,"c:\\system\\data\\user.ini");
#else
_LIT(KFrMesUserFile,"c:\\system\\apps\\FrMes\\user.ini");
#endif
RFs &iFession = CEikonEnv::Static()->FsSession();//声明一个RFs类型的句柄以访问File服务器
RFile file;
User::LeaveIfError( file.Open(iFession, KFrMesUserFile, EFileRead));//打开文件
TInt aSize;
file.Size(aSize); //得到文件长度
file.Close();
if(aSize == 0)
return EFalse;
else
return ETrue;
}
CGulIcon* CFrMesAppUi::LoadGraphicsL(TInt aType)
{
TBuf<KMaxPath> pathAppMbm;
#ifdef __WINS__
pathAppMbm.Copy(_L("z:\\system\\apps\\frmes\\frmes.mbm"));
#else
TFileName appFullName;
appFullName = Application()->AppFullName();
TParsePtr parse(appFullName);
pathAppMbm.Copy(parse.DriveAndPath());
pathAppMbm.Append(_L("frmes.mbm"));
#endif
switch(aType)
{
case 0:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesDiskete,EMbmFrmesDiskete_mask);
case 1:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesAlert,EMbmFrmesAlert_mask);
case 2:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesCardclip,EMbmFrmesCardclip_mask);
case 3:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesMessage,EMbmFrmesMessage_mask);
case 4:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesCreatemes,EMbmFrmesCreatemesm);
case 5:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesReceivemes,EMbmFrmesReceivemesm);
case 6:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesNotebook,EMbmFrmesNotebookm);
case 7:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesSendmes,EMbmFrmesSendmesm);
case 8:
return iEikonEnv->CreateIconL(pathAppMbm, EMbmFrmesSendingmes,EMbmFrmesAlert_mask);
default:
return NULL;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?