2024-12-21 10:04:04 +08:00
|
|
|
#include "stdafx.h"
|
|
|
|
|
#include "ServiceManagerEx.h"
|
|
|
|
|
#include "MainSplit.h"
|
|
|
|
|
#include "ManagerView.h"
|
|
|
|
|
#include "StateView.h"
|
|
|
|
|
|
|
|
|
|
IMPLEMENT_DYNAMIC(CMainSplit, CSplitterWnd)
|
|
|
|
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CMainSplit, CSplitterWnd)
|
|
|
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
|
|
|
|
CMainSplit::CMainSplit()
|
|
|
|
|
: m_pManagerView(NULL)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CMainSplit::~CMainSplit()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::CreateSplit(CWnd* pParent, int paneId, const RECT& rect, CCreateContext* pContext)
|
|
|
|
|
{
|
|
|
|
|
CreateStatic(pParent, 1, 2, WS_CHILD | WS_VISIBLE | WS_BORDER, paneId);
|
|
|
|
|
CreateView(0, 0, RUNTIME_CLASS(CManagerView), CSize(rect.right / 3 * 2, 0), pContext);
|
|
|
|
|
m_pManagerView = (CManagerView*)GetPane(0, 0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::ShowWnd(bool show)
|
|
|
|
|
{
|
|
|
|
|
int cmd = (show) ? SW_SHOWNORMAL : SW_HIDE;
|
|
|
|
|
|
|
|
|
|
ShowWindow(cmd);
|
|
|
|
|
|
|
|
|
|
if (m_pManagerView)
|
|
|
|
|
m_pManagerView->ShowWindow(cmd);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::BuildView()
|
|
|
|
|
{
|
|
|
|
|
if (m_pManagerView)
|
|
|
|
|
m_pManagerView->BuildView();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::RefreshView()
|
|
|
|
|
{
|
|
|
|
|
if (m_pManagerView)
|
|
|
|
|
m_pManagerView->RefreshView();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::SetManagerViewType(ViewType type)
|
|
|
|
|
{
|
|
|
|
|
if (m_pManagerView)
|
|
|
|
|
m_pManagerView->SetViewType(type);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::ResizeView(const RECT& rect)
|
|
|
|
|
{
|
|
|
|
|
SetColumnInfo(0, rect.right / 3 * 2, 0);
|
|
|
|
|
RecalcLayout();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::Update()
|
|
|
|
|
{
|
|
|
|
|
static DWORD prevTick = ::GetTickCount();
|
|
|
|
|
DWORD curTick = ::GetTickCount();
|
|
|
|
|
if (curTick - prevTick < 100)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
prevTick = curTick;
|
|
|
|
|
|
|
|
|
|
if (m_pManagerView)
|
|
|
|
|
m_pManagerView->Update();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnPatchStart()
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnPatchStart();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnPatchProgress(int id, const wchar_t* key, unsigned long progress, unsigned long progressMax)
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnPatchProgress(id, key, progress, progressMax);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnPatchEnd(bool succeeded)
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnPatchEnd(succeeded);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnUnzipProgress(int id, const wchar_t* filename, unsigned long progress, unsigned long progressMax)
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnUnzipProgress(id, filename, progress, progressMax);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnWorldMaxUser(int id, int maxUser)
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnWorldMaxUser(id, maxUser);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnPatchFail(int id, const wchar_t* msg)
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnPatchFail(id, msg);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnPatchCompleted(int id)
|
|
|
|
|
{
|
|
|
|
|
if (!m_pManagerView)
|
|
|
|
|
{
|
|
|
|
|
ASSERT(0);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_pManagerView->OnPatchCompleted(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CMainSplit::OnCommandPatch()
|
|
|
|
|
{
|
|
|
|
|
m_pManagerView->OnCommandPatch();
|
|
|
|
|
}
|