📄 baseview.cpp
字号:
// BaseView.cpp: implementation of the JFZBaseView class.
//
//////////////////////////////////////////////////////////////////////
#include "BaseView.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CBaseView::CBaseView()
{
}
CBaseView::~CBaseView()
{
}
void CBaseView::OnResume()
{
m_pDoc->SetExitTimer(false);
OnTimer();
return;
}
void CBaseView::OnSuspend()
{
// 结束定时器标志
m_pDoc->GetKeyControl()->InitData();
m_pDoc->SetExitTimer(true);
return;
}
void CBaseView::OnSetTimer()
{
return;
}
void CBaseView::FreeData()
{
// m_pDoc = NULL;
}
void CBaseView::Release()
{
FreeData();
delete this;
}
void CBaseView::OnStartView()
{
// OnSetTimer();
}
void CBaseView::OnTimer()
{
return;
}
bool CBaseView::OnInitData()
{
// m_bSwitchView = false;
return true;
}
void CBaseView::LoadBmpResData(IBitmap* pbmDbd, int nResID, int16 nWidth, int16 nHeight)
{
uint8 czMapInfo[6] = {0};
void * pSource = NULL;
byte* pGround = NULL;
uint32 nSize;
int nOutSize = 0;
pSource = ISHELL_LoadResDataEx (((CGameApp*)GETAPPINSTANCE())->m_pIShell,
EIDOLON_RES_FILE,nResID, RESTYPE_IMAGE, NULL, &nSize);
m_pDoc->m_cUnzip.m_nInLength = nSize;
if (pSource == NULL)
{
ISHELL_FreeResData (((CGameApp*)GETAPPINSTANCE())->m_pIShell, pSource);
return;
}
nSize = *((uint16*)pSource);
pGround = (byte* )pSource + nSize;
m_pDoc->m_cUnzip.m_nInLength -= nSize;
byte *pData = (byte* )MALLOC(m_pDoc->m_cUnzip.m_nInLength);
MEMCPY(pData,(byte*)pGround, m_pDoc->m_cUnzip.m_nInLength);
MEMCPY(czMapInfo,(byte*)pGround, 2);
m_pDoc->m_cUnzip.textsize = ((int)czMapInfo[1] << 8) + (int)czMapInfo[0];
byte* pp = NULL;
m_pDoc->m_cUnzip.UnCompress(pData, m_pDoc->m_cUnzip.m_nInLength, pp, nOutSize);
ISHELL_FreeResData (((CGameApp*)GETAPPINSTANCE())->m_pIShell, pSource);
FREE(pData);
AEEImageInfo tInfo;
boolean bRealloc = FALSE;
IBitmap* pB = (IBitmap* )CONVERTBMP(pp, &tInfo, &bRealloc);//FALSE);
IBITMAP_BltIn(pbmDbd, 0, 0, nWidth, nHeight, pB,
0, 0, AEE_RO_TRANSPARENT);
m_pDoc->m_cUnzip.Release();
if (pB)
{
SYSFREE(pB);
pB = NULL;
}
}
IBitmap* CBaseView::LoadBmpResData(int nResID)
{
IBitmap* pbmDbd = NULL;
uint8 czMapInfo[6] = {0};
void * pSource = NULL;
byte* pGround = NULL;
uint32 nSize;
int nOutSize = 0;
pSource = ISHELL_LoadResDataEx (((CGameApp*)GETAPPINSTANCE())->m_pIShell,
EIDOLON_RES_FILE,nResID, RESTYPE_IMAGE, NULL, &nSize);
m_pDoc->m_cUnzip.m_nInLength = nSize;
if (pSource == NULL)
{
ISHELL_FreeResData (((CGameApp*)GETAPPINSTANCE())->m_pIShell, pSource);
return NULL;;
}
nSize = *((uint16*)pSource);
pGround = (byte* )pSource + nSize;
m_pDoc->m_cUnzip.m_nInLength -= nSize;
byte *pData = (byte* )MALLOC(m_pDoc->m_cUnzip.m_nInLength);
MEMCPY(pData,(byte*)pGround, m_pDoc->m_cUnzip.m_nInLength);
MEMCPY(czMapInfo,(byte*)pGround, 2);
m_pDoc->m_cUnzip.textsize = ((int)czMapInfo[1] << 8) + (int)czMapInfo[0];
byte* pp = NULL;
m_pDoc->m_cUnzip.UnCompress(pData, m_pDoc->m_cUnzip.m_nInLength, pp, nOutSize);
ISHELL_FreeResData (((CGameApp*)GETAPPINSTANCE())->m_pIShell, pSource);
FREE(pData);
AEEImageInfo tInfo;
boolean bRealloc = FALSE;
pbmDbd = (IBitmap* )CONVERTBMP(pp, &tInfo, &bRealloc);//FALSE);
m_pDoc->m_cUnzip.Release();
return pbmDbd;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -