Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
// DurationPage.cpp : Implementation of CDurationPage
#include "stdafx.h"
#include "ToolProps.h"
#include "DurationPage.h"
/////////////////////////////////////////////////////////////////////////////
// CDurationPage
CDurationPage::CDurationPage() { m_dwTitleID = IDS_TITLEDurationPage; m_dwHelpFileID = IDS_HELPFILEDurationPage; m_dwDocStringID = IDS_DOCSTRINGDurationPage; m_pDuration = NULL; }
CDurationPage::~CDurationPage()
{ if (m_pDuration) { m_pDuration->Release(); } }
STDMETHODIMP CDurationPage::SetObjects(ULONG cObjects,IUnknown **ppUnk)
{ if (cObjects < 1 || cObjects > 1) return E_UNEXPECTED; return ppUnk[0]->QueryInterface(IID_IDirectMusicDurationTool,(void **) &m_pDuration); }
STDMETHODIMP CDurationPage::Apply(void)
{ m_pDuration->SetScale(m_ctScale.GetValue()); m_bDirty = FALSE; return S_OK; }
LRESULT CDurationPage::OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{ if (m_pDuration) { m_ctScale.Init(GetDlgItem(IDC_SCALE),GetDlgItem(IDC_SCALE_DISPLAY),0,8.0,false);
float fScale; m_pDuration->GetScale(&fScale); m_ctScale.SetValue(fScale); } return 1; }
LRESULT CDurationPage::OnCommand(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{ LRESULT lr = m_ctScale.MessageHandler(uMsg, wParam,lParam, bHandled); if (bHandled) SetDirty(true); return lr; }
LRESULT CDurationPage::OnSlider(UINT uMsg, WPARAM wParam,LPARAM lParam, BOOL& bHandled)
{ LRESULT lr = m_ctScale.MessageHandler(uMsg, wParam,lParam, bHandled); if (bHandled) SetDirty(true); return lr; }
|