// EtcDlg.cpp : Implementation file
//

#include "stdafx.h"
#include "remotetest.h"
#include "EtcDlg.h"
#include "RemoteTestDlg.h"


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CEtcDlg  dialog


CEtcDlg::CEtcDlg(CVAIBO *vaibo, CWnd* pParent/*=NULL*/)
	: CDialog(CEtcDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CEtcDlg)
	m_bLock = FALSE;
	//}}AFX_DATA_INIT
	// Virtual AIBO
	m_vaibo = vaibo;
}


void CEtcDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CEtcDlg)
	DDX_Check(pDX, IDC_CHECK_LOCK, m_bLock);
	DDX_Control(pDX, IDC_COMBO_VOLUME, m_ComboVolume);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CEtcDlg, CDialog)
	//{{AFX_MSG_MAP(CEtcDlg)
	ON_BN_CLICKED(IDC_BTN_BUTTERY, OnBtnBattery)
	ON_BN_CLICKED(IDC_BTN_IP, OnBtnIp)
	ON_BN_CLICKED(IDC_BTN_IS_LOCK, OnBtnIsLock)
	ON_BN_CLICKED(IDC_CHECK_LOCK, OnCheckLock)
	ON_BN_CLICKED(IDC_BTN_STATUS, OnBtnStatus)
	ON_BN_CLICKED(IDC_BTN_ISCON, OnBtnIscon)
	ON_BN_CLICKED(IDC_BTN_VOLUME, OnBtnVolume)
	ON_BN_CLICKED(IDC_BTN_GETVOLUME, OnBtnGetVolume)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CEtcDlg message handlers

BOOL CEtcDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	m_ComboVolume.SetCurSel( 0 );

	return TRUE;   // return TRUE  unless you set the focus to a control
}

void CEtcDlg::OnBtnBattery()
{

	CString strMsg;
	strMsg.Format(_T("Battery: %d percent"), m_vaibo->GetBatteryLevel());
	AfxMessageBox(strMsg);
}

void CEtcDlg::OnBtnIp()
{

	CString strMsg;
	TCHAR tmp[256];
	m_vaibo->GetLocalIPAddress(tmp);
	strMsg.Format(_T("IP address: %s"), tmp);
	AfxMessageBox(strMsg);
}

void CEtcDlg::OnBtnIsLock()
{

	if (m_vaibo->IsLock()) {
		AfxMessageBox(_T("Lock: Yes"));
	} else {
		AfxMessageBox(_T("Lock: No"));
	}
}

void CEtcDlg::OnCheckLock()
{

	UpdateData(TRUE);
	m_vaibo->SetLock(m_bLock);
}

void CEtcDlg::OnBtnStatus()
{

	CString strMsg;
	strMsg.Format(_T("Status: %d"), m_vaibo->GetStatus());
	AfxMessageBox(strMsg);
}

void CEtcDlg::OnBtnIscon()
{

	if (m_vaibo->IsControlReady()) {
		AfxMessageBox(_T("ControlReady: Yes"));
	} else {
		AfxMessageBox(_T("ControlReady: No"));
	}
}

void CEtcDlg::OnBtnVolume()
{
	m_vaibo->SetVolume( m_ComboVolume.GetCurSel() );
}

void CEtcDlg::OnBtnGetVolume()
{

	m_vaibo->RequestVolume();
}

void CEtcDlg::ChangeVolume(int volume)
{
	m_ComboVolume.SetCurSel(volume);
}
