MAINFRM.CPP

// This code and information is provided "as is" without warranty of 
// any kind, either expressed or implied, including but not limited to
// the implied warranties of merchantability and/or fitness for a
// particular purpose.

// Copyright (C) 1996 - 1997 Intel corporation. All rights reserved.

// mainfrm.cpp : implementation of the CMainFrame class
//

#include "stdafx.h"
#include "IPlay.h"
#include "IPlayDoc.h"

#include "mainfrm.h"

#ifdef _DEBUG
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMainFrame

IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd)

BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)
ON_WM_CREATE()
ON_COMMAND(ID_MEDIA_INDEO, OnMediaIndeo)
ON_UPDATE_COMMAND_UI(ID_MEDIA_INDEO, OnUpdateMediaIndeo)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// arrays of IDs used to initialize control bars

// toolbar buttons - IDs are command buttons
static UINT BASED_CODE buttons[] =
{
// same order as in the bitmap 'toolbar.bmp'
ID_FILE_OPEN,
ID_SEPARATOR,
ID_MEDIA_PLAY,
ID_MEDIA_PAUSE,
ID_MEDIA_STOP,
ID_SEPARATOR,
ID_MEDIA_LOOP,
ID_MEDIA_ZOOMX2,
ID_SEPARATOR,
ID_SEPARATOR,
ID_SEPARATOR,
ID_MEDIA_INDEO
};

/////////////////////////////////////////////////////////////////////////////
// CMainFrame construction/destruction

CMainFrame::CMainFrame()
{
EnableDocking(CBRS_FLOAT_MULTI);
}

CMainFrame::~CMainFrame()
{
}

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{

if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;

if (!m_wndToolBar.Create(this) ||
!m_wndToolBar.LoadBitmap(IDR_MAINFRAME) ||
!m_wndToolBar.SetButtons(buttons,
sizeof(buttons)/sizeof(UINT)))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}

m_wndToolBar.SetSizes( CSize( 40, 40 ), CSize( 32, 32 ) );
m_wndToolBar.EnableDocking(CBRS_ALIGN_TOP);

// Enable tool tips
m_wndToolBar.SetBarStyle(m_wndToolBar.GetBarStyle() |
CBRS_TOOLTIPS | CBRS_FLYBY);

// Position window in upper, left corner
SetWindowPos( NULL, 0, 0, 424, 96, SWP_NOZORDER );
m_bIndeo = FALSE;
return 0;
}



/////////////////////////////////////////////////////////////////////////////
// CMainFrame diagnostics

#ifdef _DEBUG
void CMainFrame::AssertValid() const
{
CFrameWnd::AssertValid();
}

void CMainFrame::Dump(CDumpContext& dc) const
{
CFrameWnd::Dump(dc);
}

#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMainFrame message handlers



BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
// Set optimum size for view
cs.cx = 422;
cs.cy = 524;

cs.style = WS_OVERLAPPED | WS_CAPTION |
WS_THICKFRAME | WS_SYSMENU | WS_MINIMIZEBOX;

return CFrameWnd::PreCreateWindow(cs);
}


void CMainFrame::OnMediaIndeo()
{
m_bIndeo = !m_bIndeo;
if (m_bIndeo)
SetWindowPos(NULL, 0, 0, 422, 524, SWP_NOMOVE | SWP_NOZORDER );
else
SetWindowPos(NULL, 0, 0, 422, 96, SWP_NOMOVE | SWP_NOZORDER );

}

void CMainFrame::OnUpdateMediaIndeo(CCmdUI* pCmdUI)
{
pCmdUI->SetCheck( m_bIndeo );

}