// ApplicationModeMsgWnd.cpp : 実装ファイル
//

#include "stdafx.h"
#include "04WebServer.h"
#include "ApplicationModeMsgWnd.h"

// CApplicationModeMsgWnd

IMPLEMENT_DYNAMIC(CApplicationModeMsgWnd, CWnd)

CApplicationModeMsgWnd::CApplicationModeMsgWnd()
{
	m_firstConnect = 0;
	m_noConnectTimer = 0;
}

CApplicationModeMsgWnd::~CApplicationModeMsgWnd()
{
}


BEGIN_MESSAGE_MAP(CApplicationModeMsgWnd, CWnd)
	ON_WM_TIMER()
END_MESSAGE_MAP()



// CApplicationModeMsgWnd メッセージ ハンドラ


/*!
	ウィンドウ作成
*/
int CApplicationModeMsgWnd::CreateMsgWindow()
{
	if(CreateEx(0,::AfxRegisterWndClass(NULL), "04WebServer - CApplicationModeMsgWndClass",0 ,0 ,0 ,0 ,0 ,HWND_MESSAGE,0) == 0)
		return(-1);

	//	タイマ
	SetTimer(200, 1000, NULL);
	return(0);
}

/*!
	タイマハンドラ
*/
void CApplicationModeMsgWnd::OnTimer(UINT_PTR nIDEvent)
{
	//	初回接続？
	if(!m_firstConnect)
	{
		//	タイムアウト？
		if(m_noConnectTimer >= APPLICATION_MODE_FIRST_CONNECT_WAIT)
			DestroyWindow();
	}
	else
	{
		//	タイムアウト？
		if(m_noConnectTimer >= APPLICATION_MODE_DISCONNECT_EXIT_WAIT)
			DestroyWindow();
	}

	//	接続あり？
	if(GET_APP()->GetConnectedControllerCount() > 0)
	{
		m_noConnectTimer = 0;
		m_firstConnect = TRUE;
	}
	else
	{
		m_noConnectTimer++;
	}

	CWnd::OnTimer(nIDEvent);
}
