Ejemplo n.º 1
0
BOOL COutputsPage::OnInitDialog() 
/////////////////////////////////////////////////////////////////////////////
{
	ULONG	ulValue;

	CPropertyPage::OnInitDialog();

	// Create the ToolTip control.
	m_tooltip.Create(this);
	m_tooltip.Activate(TRUE);

	// TODO: Use one of the following forms to add controls:
	// m_tooltip.AddTool(GetDlgItem(IDC_<name>), <string-table-id>);

	int	nLineCtls = IDC_OUT2_VOLUME - IDC_OUT1_VOLUME;

	for( int i=0; i<16; i++ )
	{
		CWnd *pCtl = GetDlgItem(IDC_OUT1_VOLUME+(i*nLineCtls));

		FaderSetRange( pCtl->m_hWnd, MIN_VOLUME, MAX_VOLUME );
		m_pHalMixer->GetControl( LINE_OUT_1 + i, LINE_NO_SOURCE, CONTROL_VOLUME, 0, &ulValue );
		FaderSetPosition( pCtl->m_hWnd, ulValue );

		m_tooltip.AddTool( pCtl, IDS_TT_VOLUME);

		m_tooltip.AddTool(GetDlgItem(IDC_OUT1_VUMETER+(i*nLineCtls)), IDS_TT_VUMETER);
		m_tooltip.AddTool(GetDlgItem(IDC_OUT1_MUTE+(i*nLineCtls)), IDS_TT_MUTE);
		m_tooltip.AddTool(GetDlgItem(IDC_OUT1_PHASE+(i*nLineCtls)), IDS_TT_PHASE);
		m_tooltip.AddTool(GetDlgItem(IDC_OUT1_DITHER+(i*nLineCtls)), IDS_TT_DITHER);
	}

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
Ejemplo n.º 2
0
void COutputsPage::UpdateLine(int nLine)
/////////////////////////////////////////////////////////////////////////////
{
	ULONG	ulValue;
	char	szBuffer[ 40 ];

	CWnd *pCtl = GetDlgItem(IDC_OUT1_VOLUME+nLine);
	m_pHalMixer->GetControl( LINE_OUT_1+nLine, LINE_NO_SOURCE, CONTROL_VOLUME, 0, &ulValue );
	FaderSetPosition( pCtl->m_hWnd, ulValue );
	
	for( int nSrc = LINE_PLAY_MIXA; nSrc <= LINE_PLAY_MIXD; nSrc++ )
	{
		m_pHalMixer->GetControl( LINE_OUT_1+nLine, nSrc, CONTROL_SOURCE, 0, &ulValue );
		if( ulValue == 0xFF )
			ulValue = -1;
		sprintf( szBuffer, "%02d", (ulValue+1) );
		SetDlgItemText( IDC_OUT1_PMIXA_SELECT+(nLine*4)+(nSrc-LINE_PLAY_MIXA), szBuffer );

		m_pHalMixer->GetControl( LINE_OUT_1+nLine, nSrc, CONTROL_MUTE, 0, &ulValue );
		((CButton *)GetDlgItem( IDC_OUT1_PMIXA_MUTE+(nLine*4)+(nSrc-LINE_PLAY_MIXA) ))->SetCheck( ulValue );
	}

	m_pHalMixer->GetControl( LINE_OUT_1+nLine, LINE_NO_SOURCE, CONTROL_MUTE, 0, &ulValue );
	((CButton *)GetDlgItem(IDC_OUT1_MUTE+nLine))->SetCheck( ulValue );
	
	m_pHalMixer->GetControl( LINE_OUT_1+nLine, LINE_NO_SOURCE, CONTROL_PHASE, 0, &ulValue );
	((CButton *)GetDlgItem(IDC_OUT1_PHASE+nLine))->SetCheck( ulValue );

	m_pHalMixer->GetControl( LINE_OUT_1+nLine, LINE_NO_SOURCE, CONTROL_DITHER, 0, &ulValue );
	((CButton *)GetDlgItem(IDC_OUT1_DITHER+nLine))->SetCheck( ulValue );
}
Ejemplo n.º 3
0
void CTestPage::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
/////////////////////////////////////////////////////////////////////////////
{
	USHORT	wPos = (USHORT)nPos;
	int		nChange = 0, nAbs;
	int		nVolume;
	int		nID = GetWindowLong( pScrollBar->m_hWnd, GWL_ID );
	int		nCh;

	switch( nSBCode )
	{
	case SB_LINEUP:			nChange = VOLCHG_SMALL;		break;
	case SB_LINEDOWN:		nChange = -VOLCHG_SMALL;	break;
	case SB_PAGEUP:			nChange = VOLCHG_LARGE;		break;
	case SB_PAGEDOWN:		nChange = -VOLCHG_LARGE;	break;
	case SB_THUMBPOSITION:
	case SB_THUMBTRACK:		nAbs = wPos;				break;
	case SB_TOP:			nAbs = MAX_VOLUME;			break;
	case SB_BOTTOM:			nAbs = MIN_VOLUME;			break;
	case SB_ENDSCROLL:		return;
	}

	if( nChange )
	{
		nVolume = FaderGetPosition( pScrollBar->m_hWnd );
		nVolume += nChange;
	}
	else
	{
		nVolume = nAbs;
	}
	
	if( nVolume > MAX_VOLUME )	nVolume = MAX_VOLUME;
	if( nVolume < 0 )			nVolume = 0;

	//switch( nID )
	//{
	//case IDC_PLAY1L_VOLUME:	nCh = LEFT;		break;
	//case IDC_PLAY1R_VOLUME:	nCh = RIGHT;	break;
	//}
	nCh = LEFT;

	m_pHalMixer->SetControl( LINE_OUT_1, LINE_PLAY_0 + m_PlayDevice.GetCurSel(), CONTROL_VOLUME, nCh, nVolume );
	
	((CHalTestDlg *)GetParent())->ShowVolume( nVolume );
	
	FaderSetPosition( pScrollBar->m_hWnd, nVolume );
}
Ejemplo n.º 4
0
void COutputsPage::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
/////////////////////////////////////////////////////////////////////////////
{
	USHORT	wPos = (USHORT)nPos;
	int		nChange = 0, nAbs;
	int		nVolume;
	int		nID = GetWindowLong( pScrollBar->m_hWnd, GWL_ID );

	switch( nSBCode )
	{
	case SB_LINEUP:			nChange = VOLCHG_SMALL;		break;
	case SB_LINEDOWN:		nChange = -VOLCHG_SMALL;	break;
	case SB_PAGEUP:			nChange = VOLCHG_LARGE;		break;
	case SB_PAGEDOWN:		nChange = -VOLCHG_LARGE;	break;
	case SB_THUMBPOSITION:
	case SB_THUMBTRACK:		nAbs = wPos;				break;
	case SB_TOP:			nAbs = MAX_VOLUME;			break;
	case SB_BOTTOM:			nAbs = MIN_VOLUME;			break;
	case SB_ENDSCROLL:		return;
	}

	if( nChange )
	{
		nVolume = FaderGetPosition( pScrollBar->m_hWnd );
		nVolume += nChange;
	}
	else
	{
		nVolume = nAbs;
	}
	
	if( nVolume > MAX_VOLUME )	nVolume = MAX_VOLUME;
	if( nVolume < 0 )			nVolume = 0;
	
	((CHalTestDlg *)GetParent())->ShowVolume( nVolume );
	
	FaderSetPosition( pScrollBar->m_hWnd, nVolume );

	m_pHalMixer->SetControl( LINE_OUT_1 + (nID - IDC_OUT1_VOLUME), LINE_NO_SOURCE, CONTROL_VOLUME, 0, nVolume );
}