Exemplo n.º 1
0
void CFillProp::UpdateColor()
{
	if (m_ctrlColor.m_Color != m_Color)
	{
		m_ctrlColor.m_Color = m_Color;
		m_ctrlColor.Invalidate();
	}

	CSliderCtrl *pCtrlRed = (CSliderCtrl *)GetDlgItem(IDC_SLIDER1);
	ASSERT(pCtrlRed != NULL);
	pCtrlRed->SetPos(GetRValue(m_Color));

	CSliderCtrl *pCtrlGreen = (CSliderCtrl *)GetDlgItem(IDC_SLIDER2);
	ASSERT(pCtrlGreen != NULL);
	pCtrlGreen->SetPos(GetGValue(m_Color));

	CSliderCtrl *pCtrlBlue = (CSliderCtrl *)GetDlgItem(IDC_SLIDER3);
	ASSERT(pCtrlBlue != NULL);
	pCtrlBlue->SetPos(GetBValue(m_Color));

	CString str;
	str.Format("%d",GetRValue(m_Color));
	SetDlgItemText(IDC_STATIC_RED,str);

	str.Format("%d",GetGValue(m_Color));
	SetDlgItemText(IDC_STATIC_GREEN,str);

	str.Format("%d",GetBValue(m_Color));
	SetDlgItemText(IDC_STATIC_BLUE,str);
}
Exemplo n.º 2
0
BOOL CConfigSound::OnInitDialog()
{
	CPropertyPage::OnInitDialog();

	CComboBox *pSampleRate	= static_cast<CComboBox*>(GetDlgItem(IDC_SAMPLE_RATE));
	CComboBox *pSampleSize	= static_cast<CComboBox*>(GetDlgItem(IDC_SAMPLE_SIZE));
	CComboBox *pDevices		= static_cast<CComboBox*>(GetDlgItem(IDC_DEVICES));
	
	CSliderCtrl *pBufSlider			  = static_cast<CSliderCtrl*>(GetDlgItem(IDC_BUF_LENGTH));
	CSliderCtrl *pBassSlider		  = static_cast<CSliderCtrl*>(GetDlgItem(IDC_BASS_FREQ));
	CSliderCtrl *pTrebleSliderFreq	  = static_cast<CSliderCtrl*>(GetDlgItem(IDC_TREBLE_FREQ));
	CSliderCtrl *pTrebleSliderDamping = static_cast<CSliderCtrl*>(GetDlgItem(IDC_TREBLE_DAMP));
	CSliderCtrl *pVolumeSlider		  = static_cast<CSliderCtrl*>(GetDlgItem(IDC_VOLUME));

	// Set ranges
	pBufSlider->SetRange(1, MAX_BUFFER_LEN);
	pBassSlider->SetRange(16, 4000);
	pTrebleSliderFreq->SetRange(20, 20000);
	pTrebleSliderDamping->SetRange(0, 90);
	pVolumeSlider->SetRange(0, 100);

	CSettings *pSettings = theApp.GetSettings();

	// Read settings
	switch (pSettings->Sound.iSampleRate) {
		case 11025: pSampleRate->SelectString(0, _T("11 025 Hz")); break;
		case 22050: pSampleRate->SelectString(0, _T("22 050 Hz")); break;
		case 44100: pSampleRate->SelectString(0, _T("44 100 Hz")); break;
		case 48000: pSampleRate->SelectString(0, _T("48 000 Hz")); break;
		case 96000: pSampleRate->SelectString(0, _T("96 000 Hz")); break;
	}

	switch (pSettings->Sound.iSampleSize) {
		case 16: pSampleSize->SelectString(0, _T("16 bit")); break;
		case 8:	 pSampleSize->SelectString(0, _T("8 bit")); break;
	}

	pBufSlider->SetPos(pSettings->Sound.iBufferLength);
	pBassSlider->SetPos(pSettings->Sound.iBassFilter);
	pTrebleSliderFreq->SetPos(pSettings->Sound.iTrebleFilter);
	pTrebleSliderDamping->SetPos(pSettings->Sound.iTrebleDamping);
	pVolumeSlider->SetPos(pSettings->Sound.iMixVolume);

	UpdateTexts();

	CDSound *pDSound = theApp.GetSoundGenerator()->GetSoundInterface();
	const int iCount = pDSound->GetDeviceCount();

	for (int i = 0; i < iCount; ++i)
		pDevices->AddString(pDSound->GetDeviceName(i));

	pDevices->SetCurSel(pSettings->Sound.iDevice);

	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}
Exemplo n.º 3
0
BOOL CSpotsMainDlg::PreTranslateMessage(MSG* pMsg)
{
	//屏蔽ESC关闭窗体/
	if (pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_ESCAPE) return TRUE;
	//屏蔽回车关闭窗体,但会导致回车在窗体上失效.
	if (pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN && pMsg->wParam) return TRUE;


	//一下代码实现按方向键滚动显示大图区域
	if (zoom != 8 && pMsg->message == WM_KEYDOWN && pMsg->wParam
		&& (pMsg->wParam == VK_LEFT || pMsg->wParam == VK_RIGHT ||
			pMsg->wParam == VK_UP || pMsg->wParam == VK_DOWN)
		)
	{
		if (pMsg->wParam == VK_LEFT)
		{
			CSliderCtrl *pSlidCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER_IMG_X);
			int x = pSlidCtrl->GetPos();
			x -= 20 * zoom;
			pSlidCtrl->SetPos(x);
			pSlidCtrl = 0;
		}
		else if (pMsg->wParam == VK_RIGHT)
		{
			CSliderCtrl *pSlidCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER_IMG_X);
			int x = pSlidCtrl->GetPos();
			x += 20 * zoom;
			pSlidCtrl->SetPos(x);
			pSlidCtrl = 0;
		}
		if (pMsg->wParam == VK_UP)
		{
			CSliderCtrl *pSlidCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER_IMG_Y);
			int y = pSlidCtrl->GetPos();
			y -= 20 * zoom;
			pSlidCtrl->SetPos(y);
			pSlidCtrl = 0;
		}
		else if (pMsg->wParam == VK_DOWN)
		{
			CSliderCtrl *pSlidCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER_IMG_Y);
			int y = pSlidCtrl->GetPos();
			y += 20 * zoom;
			pSlidCtrl->SetPos(y);
			pSlidCtrl = 0;
		}
		ShowImgROI();
	}

	//if (pMsg->message == WM_MOUSEWHEEL && (pMsg->hwnd == GetDlgItem(IDC_SLIDER_IMG_X)->m_hWnd || pMsg->hwnd == GetDlgItem(IDC_SLIDER_IMG_Y)->m_hWnd))
	//{
	//	return 1;
	//}

	return CDialog::PreTranslateMessage(pMsg);
}
BOOL CModulePropertiesDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Get active document
	CFrameWnd *pFrameWnd = static_cast<CFrameWnd*>(GetParent());
	m_pDocument = static_cast<CFamiTrackerDoc*>(pFrameWnd->GetActiveDocument());

	CListCtrl *pSongList = static_cast<CListCtrl*>(GetDlgItem(IDC_SONGLIST));
	pSongList->InsertColumn(0, _T("Songs"), 0, 150);
	pSongList->SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT);

	FillSongList();

	// Expansion chips
	CComboBox *pChipBox = static_cast<CComboBox*>(GetDlgItem(IDC_EXPANSION));
	int ExpChip = m_pDocument->GetExpansionChip();
	CChannelMap *pChannelMap = theApp.GetChannelMap();

	for (int i = 0; i < pChannelMap->GetChipCount(); ++i)
		pChipBox->AddString(pChannelMap->GetChipName(i));

	pChipBox->SetCurSel(pChannelMap->GetChipIndex(ExpChip));

	// Vibrato 
	CComboBox *pVibratoBox = static_cast<CComboBox*>(GetDlgItem(IDC_VIBRATO));
	pVibratoBox->SetCurSel((m_pDocument->GetVibratoStyle() == VIBRATO_NEW) ? 0 : 1);

	// Namco channel count
	CSliderCtrl *pChanSlider = static_cast<CSliderCtrl*>(GetDlgItem(IDC_CHANNELS));
	pChanSlider->SetRange(1, 8);
	CString channelsStr;
	channelsStr.LoadString(IDS_PROPERTIES_CHANNELS);
	if (ExpChip == SNDCHIP_N163) {
		int Channels = m_pDocument->GetNamcoChannels();
		pChanSlider->SetPos(Channels);
		pChanSlider->EnableWindow(TRUE);
		channelsStr.AppendFormat(_T(" %i"), Channels);
	}
	else {
		pChanSlider->SetPos(0);
		pChanSlider->EnableWindow(FALSE);
		channelsStr.Append(_T(" N/A"));
	}
	SetDlgItemText(IDC_CHANNELS_NR, channelsStr);

	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}
Exemplo n.º 5
0
HRESULT ConfigureSeekbar(IMediaSeeking *pMS, CSliderCtrl Seekbar, CStatic& strPosition, HWND hwndOwner)
{
    HRESULT hr;

    // Disable seekbar for new file and reset tracker/position label
    Seekbar.SetPos(0);
    Seekbar.EnableWindow(FALSE);
    g_rtTotalTime=0;

	LANGID dwLanguageID = GetSystemLanguagePrimaryID();
	switch (dwLanguageID)
	{
	case LANG_SPANISH :
		strPosition.SetWindowText(TEXT("Position: 00m:00s\0"));
		break;
	default:
		strPosition.SetWindowText(TEXT("Position: 00m:00s\0"));
		break;
	}	

    DWORD dwSeekCaps = AM_SEEKING_CanSeekAbsolute | AM_SEEKING_CanGetDuration;

    // Can we seek this file?  If so, enable trackbar.
    if (pMS && (S_OK == pMS->CheckCapabilities(&dwSeekCaps))) 
    {
        hr = pMS->GetDuration(&g_rtTotalTime);
        Seekbar.EnableWindow(TRUE);
    }

    g_hwnd = hwndOwner;

    return hr;
}
Exemplo n.º 6
0
BOOL COptionsSecurity::OnInitDialog() 
{
  COptions_PropertyPage::OnInitDialog();

  for (int i = 0; i < 2; i++) {
    m_chkbox[i].SetTextColour(CR_DATABASE_OPTIONS);
    m_chkbox[i].ResetBkgColour();//Use current window's background
  }

  OnLockOnIdleTimeout();
  CSpinButtonCtrl *pspin;

  pspin = (CSpinButtonCtrl *)GetDlgItem(IDC_IDLESPIN);
  pspin->SetBuddy(GetDlgItem(IDC_IDLE_TIMEOUT));
  pspin->SetRange(1, 120);
  pspin->SetBase(10);
  pspin->SetPos(m_IdleTimeOut);

  CSliderCtrl *pslider = (CSliderCtrl *)GetDlgItem(IDC_HASHITERSLIDER);
  pslider->SetRange(MinHIslider, MaxHIslider);
  pslider->SetTicFreq(1);
  pslider->SetPos(m_HashIterSliderValue);

  return TRUE;
}
Exemplo n.º 7
0
BOOL CSampleEditorDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	m_pSampleView = new CSampleView();
	m_pSampleView->SubclassDlgItem(IDC_SAMPLE, this);
	m_pSampleView->CalculateSample(m_pSample, IsDlgButtonChecked(IDC_DELTASTART) ? 64 : 0);
	m_pSampleView->UpdateInfo();

	CSliderCtrl *pitch = (CSliderCtrl*)GetDlgItem(IDC_PITCH);
	pitch->SetRange(0, 15);
	pitch->SetPos(15);

	MoveControls();

	// A timer for the flashing start cursor
	SetTimer(1, 500, NULL);

	CString title;
	GetWindowText(title);
	title.AppendFormat(_T(" [%s]"), m_pSample->Name);
	SetWindowText(title);

	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}
Exemplo n.º 8
0
void CColorPannel::UpdateVideoDisplay(int nMode, BYTE byPos)
{
	CSliderCtrl *pSlider;
	CStatic  *pStatic;
	switch(nMode) {
	case VIDEO_BRIGHT:
		pSlider = &m_slider_bright;
		pStatic = (CStatic *)GetDlgItem(IDC_INT_BRIGHT);
		break;
	case VIDEO_CONTRAST:
		pSlider = &m_slider_contrast;
		pStatic = (CStatic *)GetDlgItem(IDC_INT_CONTRAST);
		break;
	case VIDEO_HUE:
		pSlider = &m_slider_hue;
		pStatic = (CStatic *)GetDlgItem(IDC_INT_HUE);
		break;
	case VIDEO_SATURATION:
		pSlider = &m_slider_saturation;
		pStatic = (CStatic *)GetDlgItem(IDC_INT_SATURTION);
		break;
	default:
		return;
	}
	pSlider->SetPos(byPos);
	CString str;
	str.Format("[%03d]", byPos);
	pStatic->SetWindowText(str);
}
Exemplo n.º 9
0
BOOL CPPgGeneral::OnInitDialog()
{
	CPropertyPage::OnInitDialog();
	InitWindowStyles(this);

	((CEdit*)GetDlgItem(IDC_NICK))->SetLimitText(thePrefs.GetMaxUserNickLength());

	CWordArray aLanguageIDs;
	thePrefs.GetLanguages(aLanguageIDs);
	for (int i = 0; i < aLanguageIDs.GetSize(); i++){
		TCHAR szLang[128];
		int ret=GetLocaleInfo(aLanguageIDs[i], LOCALE_SLANGUAGE, szLang, ARRSIZE(szLang));

		if (ret==0)
			switch(aLanguageIDs[i]) {
				case LANGID_UG_CN:
					_tcscpy(szLang,_T("Uyghur") );
					break;
				case LANGID_GL_ES:
					_tcscpy(szLang,_T("Galician") );
					break;
				case LANGID_FR_BR:
					_tcscpy(szLang,_T("Breton (Brezhoneg)") );
					break;
				case LANGID_MT_MT:
					_tcscpy(szLang,_T("Maltese") );
					break;
				case LANGID_ES_AS:
					_tcscpy(szLang,_T("Asturian") );
					break;
				case LANGID_VA_ES:
					_tcscpy(szLang,_T("Valencian") );
					break;
				case LANGID_VA_ES_RACV:
					_tcscpy(szLang, _T("Valencian (RACV)"));
					break;
				default:
					ASSERT(0);
					_tcscpy(szLang,_T("?(unknown language)?") );
			}

		m_language.SetItemData(m_language.AddString(szLang), aLanguageIDs[i]);
	}

	UpdateEd2kLinkFixCtrl();

	CSliderCtrl *sliderUpdate = (CSliderCtrl*)GetDlgItem(IDC_CHECKDAYS);
	sliderUpdate->SetRange(2, 7, true);
	sliderUpdate->SetPos(thePrefs.GetUpdateDays());
	
	LoadSettings();
	Localize();
	GetDlgItem(IDC_CHECKDAYS)->ShowWindow( IsDlgButtonChecked(IDC_CHECK4UPDATE) ? SW_SHOW : SW_HIDE );
	GetDlgItem(IDC_DAYS)->ShowWindow( IsDlgButtonChecked(IDC_CHECK4UPDATE) ? SW_SHOW : SW_HIDE );

	return TRUE;  // return TRUE unless you set the focus to a control
				  // EXCEPTION: OCX Property Pages should return FALSE
}
Exemplo n.º 10
0
void CTwoControl::OnNMReleasedcaptureSliderf1(NMHDR *pNMHDR, LRESULT *pResult)
{
	// TODO: Add your control notification handler code here
	*pResult = 0;
	CSliderCtrl *Slider;
	Slider = reinterpret_cast<CSliderCtrl *>(GetDlgItem(IDC_SLIDERF2));
	const int nCurrent = Slider->GetPos();
	if (nCurrent >= m_nSlider1)
		Slider->SetPos(m_nSlider1);
}
Exemplo n.º 11
0
void CdynControlDlg::OnEnChangeEdit(UINT id)
{
    int idx = id - VIEW_ID_OFFSET;
    CString str;
    CEdit *edit = (CEdit*) GetDlgItem(id);    
    edit->GetWindowText(str);
    int deg = _ttoi(str);
    CSliderCtrl *ctrl = (CSliderCtrl*)GetDlgItem(idx + SLIDER_ID_OFFSET);
    ctrl->SetPos(deg);
}
Exemplo n.º 12
0
BOOL COptionsDlg::OnInitDialog() {
	CPropertyPage::OnInitDialog();
	
	CSliderCtrl *pSampleSlider = (CSliderCtrl*)GetDlgItem(IDC_SAMPLE_SLIDER);
	ASSERT(pSampleSlider != NULL);
	
	pSampleSlider->SetRange(0, ELEMENTS(SampleIntervals) - 1);  // Milliseconds
	pSampleSlider->SetTicFreq(1);
	pSampleSlider->SetPageSize(1);
	pSampleSlider->SetLineSize(1);
	int nPos = 0;
	for (int i = 0; i < ELEMENTS(SampleIntervals); i++) {
		if ((UINT)g_nSampleRate >= SampleIntervals[i])
			nPos = i;
	}
	pSampleSlider->SetPos(nPos);
	
	CSliderCtrl *pWindowSlider = (CSliderCtrl*)GetDlgItem(IDC_AVERAGE_SLIDER);
	ASSERT(pWindowSlider != NULL);
	pWindowSlider->SetRange(1, (MAX_SAMPLES - 1) / AVERAGING_MULTIPLIER);  // Seconds
	pWindowSlider->SetTicFreq(1);
	pWindowSlider->SetPageSize(1);
	pWindowSlider->SetLineSize(1);
	pWindowSlider->SetPos(g_nAveragingWindow / AVERAGING_MULTIPLIER);
	
	int nID;
	switch (g_MonitorMode) {
		case MONITOR_DUN    :  nID = IDC_USE_DUN;          break;
		case MONITOR_ADAPTER:  nID = IDC_MONITOR_ADAPTER;  break;
		case MONITOR_ALL    :  nID = IDC_USE_SNMP;         break;
		default             :  ASSERT(false);              break;
	}
	
	CheckRadioButton(IDC_USE_SNMP, IDC_MONITOR_ADAPTER, nID);
	m_Interfaces.EnableWindow(g_MonitorMode == MONITOR_ADAPTER);
	
	UpdateDlg();
	
	// Return TRUE unless you set the focus to a control
	// Exception: OCX Property Pages should return FALSE
	return TRUE;
}
Exemplo n.º 13
0
void COptionsGeneral::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
{
	CDialog::OnHScroll(nSBCode, nPos, pScrollBar);

	if( !pScrollBar || !m_bManualThumbChange)
		return;
	
	CSliderCtrl * pSlider = reinterpret_cast<CSliderCtrl*>( pScrollBar );
	
	if( pSlider && pSlider->GetDlgCtrlID() == IDC_WIDTH_SLIDER )
	{
		int pos = pSlider->GetPos();

		if( m_nThumbnailWidth != pos )
		{
			if( m_bSyncChangeThumbSize )
			{
				int nNewHeight = int(pos/m_fAspect);
				int nMaxHeight, nMinHeight;
				
				m_ThumbHeightSlider.GetRange( nMinHeight, nMaxHeight );
				if( nNewHeight < nMinHeight || nNewHeight > nMaxHeight )
				{
					MessageBeep( MB_ICONEXCLAMATION );
					pSlider->SetPos( m_nThumbnailWidth);
				}
				else
				{
					CSCADString str;

					m_nThumbnailWidth = pos;
					m_nThumbnailHeight = nNewHeight;
					m_bManualThumbChange = false;
					m_ThumbHeightSlider.SetPos( m_nThumbnailHeight);
					m_bManualThumbChange = true;
					str.Format( _T("%d"), m_nThumbnailWidth );
					GetDlgItem( IDC_WIDTH_EDIT )->SetWindowText( str );
					str.Format( _T("%d"), m_nThumbnailHeight );
					GetDlgItem( IDC_HEIGHT_EDIT )->SetWindowText( str );
				}
			}
			else
			{
				CSCADString str;

				str.Format( _T("%d"), pos );
				GetDlgItem( IDC_WIDTH_EDIT )->SetWindowText( str );
				m_nThumbnailWidth = pos;
			}
			UpdateThumbnail();

		}
	}
}
Exemplo n.º 14
0
void XDlgBarTimeline::UpdateSlider()
{
	CSliderCtrl *pSlider = (CSliderCtrl *)GetDlgItem( IDC_SLIDER_SPEED );
	if( pSlider )
	{
		pSlider->SetRange( 10, 100 );
		pSlider->SetPos( (int)(SPROBJ->GetSpeedCurrentAction() * 100) );
		pSlider->SetTicFreq( 5 );
		TCHAR szBuff[16];
		_stprintf_s( szBuff, _T("%1.2f"), SPROBJ->GetSpeedCurrentAction() );
		GetDlgItem( IDC_TEXT_SPEED )->SetWindowText( szBuff );
	}
}
Exemplo n.º 15
0
void CdynControlDlg::SetServo(UINT idx, int deg)
{
    CSliderCtrl *slider = (CSliderCtrl*)GetDlgItem(SLIDER_ID_OFFSET + idx);
    CEdit *edit = (CEdit*)GetDlgItem(VIEW_ID_OFFSET + idx);

    slider->SetPos(deg);
    CString str;
    str.Format(_T("%d"), deg);
    edit->SetWindowText(str);

    slider->UpdateWindow();
    edit->UpdateWindow();
}
Exemplo n.º 16
0
BOOL CDlgLight::OnInitDialog()
{
	CDialog::OnInitDialog();


	VERIFY(cbcol.SubclassDlgItem(IDC_BTCOLOR, this));
	cbcol.ChangeColor((BYTE)red, (BYTE)green, (BYTE)blue);
	CSliderCtrl  *cs = (CSliderCtrl  *)GetDlgItem(IDC_SLSPEED);
	cs->SetRange(1,255);
	cs->SetPos(lSpeed);

	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}
Exemplo n.º 17
0
void CADHistFrm::OnCustomdrawSLIDERScreenCur(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	CADHistDoc* pDoc = (CADHistDoc*)GetActiveDocument();  // 在Frame中取得当前文档指针
    CADHistWaveView* pWaveView = (CADHistWaveView*)(CWnd::FromHandle(pDoc->m_hWndWave)); 
	int nChannelCount = pDoc->m_Header.ADPara.LastChannel - pDoc->m_Header.ADPara.FirstChannel + 1;

	CSliderCtrl* pSliderScreenCur = (CSliderCtrl*)(m_wndSetupBar.GetDlgItem(IDC_SLIDER_ScreenCur));	
	int Pos=pSliderScreenCur->GetPos();  // 取得滑动条位置(即文件偏移(字))
	pSliderScreenCur->SetPos(Pos);
	pDoc->m_ScreenOffset = Pos - Pos%nChannelCount;		// 文档中的屏幕偏移等于滑尺的屏幕位置偏移 

	RedrawDataWindow();  // 重绘数据视图
	pWaveView->m_ADHistScope.AppendPoly(gl_BufferID, pDoc->m_ScreenOffset);

	*pResult = 0;
}
Exemplo n.º 18
0
void CADHistFrm::OnTimer(UINT_PTR nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	CADHistDoc* pDoc = (CADHistDoc*)GetActiveDocument();  // 在Frame中取得当前文档指针
	CADHistWaveView* pWaveView = (CADHistWaveView*)(CWnd::FromHandle(pDoc->m_hWndWave));
	CSliderCtrl* pSliderOffset = (CSliderCtrl*)(m_wndSetupBar.GetDlgItem(IDC_SLIDER_Offset));
	pDoc->m_Offset += pDoc->m_Rate;
	pSliderOffset->SetPos(pDoc->m_Offset);
	if (pDoc->m_Offset>=(pDoc->m_FileLength-sizeof(::_FILE_HEADER))/pDoc->m_ChannelCount-pDoc->m_nCount) // m_FileLength WORD
	//if(pDoc->m_Offset+pDoc->m_nCount >= pDoc->m_FileLength-sizeof(::_FILE_HEADER))
	{
		KillTimer(1);
	}

	RedrawDataWindow();
	CMDIChildWnd::OnTimer(nIDEvent);
}
Exemplo n.º 19
0
BOOL CDlgMagicBar::InitDialogBar()
{


	UpdateData(FALSE);//这个一定要啊,这样就会有和CDialog一样的数据交换效果了

	CSliderCtrl  *pSlideThreshold = (CSliderCtrl  *)GetDlgItem(IDC_SLIDER_THRESHOLED);
	pSlideThreshold->SetRange(0,200);
	pSlideThreshold->SetPos(30);

	CString str;
	str.Format("%d",pSlideThreshold->GetPos());
	SetDlgItemText(IDC_STATIC_THRESHOLD,str);
	m_threshold = pSlideThreshold->GetPos();

	return TRUE;
}
Exemplo n.º 20
0
void ReadMediaPosition(IMediaSeeking *pMS, CSliderCtrl& Seekbar, CStatic& strPosition)
{
    HRESULT hr;
    REFERENCE_TIME rtNow;

    // Read the current stream position
    hr = pMS->GetCurrentPosition(&rtNow);
    if (FAILED(hr))
        return;

    // Convert position into a percentage value and update slider position
    long lTick = (long)((rtNow * 100) / g_rtTotalTime);
    Seekbar.SetPos(lTick);
	
    // Update the 'current position' string on the main dialog
    UpdatePosition(pMS, rtNow, strPosition);
}
Exemplo n.º 21
0
void CdynControlDlg::CreatePositionBundle(cJSON *json, int x, int y, int w, int h)
{   
    int idx = cJSON_GetObjectItem(json, "id")->valueint;
    ids.push_back(idx);

    CString str;
    char *name = cJSON_GetObjectItem(json, "name")->valuestring;

    int min = cJSON_GetObjectItem(json, "min")->valueint;
    int max = cJSON_GetObjectItem(json, "max")->valueint;

    str.Format(_T("0x%x: %s\n    [%d, %d]"), idx, charTotchar(name), min, max);

    CButton *checkBox = new CButton();
    checkBox->Create(str, 
        WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE,
                     CRect(x, y, x + CHECK_WIDTH, y + h), 
                     this, 
                     CHECK_ID_OFFSET + idx);    
    checkBox->SetCheck(BST_CHECKED);

    CSliderCtrl *slider = new CSliderCtrl();
    int width = w - (CHECK_WIDTH + VIEW_WIDTH);
    int ptx = x + CHECK_WIDTH;    

    slider->Create(WS_CHILD | WS_VISIBLE | BS_TOP,
                   CRect(ptx, y, ptx + width, y + h),
                   this, 
                   SLIDER_ID_OFFSET + idx);                   
    slider->SetRange(min, max);
    slider->SetTicFreq(1);
    int initPos = cJSON_GetObjectItem(json, "init")->valueint;    
    slider->SetPos(initPos);
    
    CEdit *edit = new CEdit();    
    ptx += width;
    width = VIEW_WIDTH;

    edit->Create(WS_CHILD | WS_VISIBLE | BS_TOP, 
                 CRect(ptx, y, ptx + width, y + 30), 
                 this, 
                 VIEW_ID_OFFSET + idx);
    str.Format(_T("%d"), initPos);
    edit->SetWindowText(str);
}
Exemplo n.º 22
0
/* #FN#
   Sets up the state of the dialog controls */
void
/* #AS#
   Nothing */
CTapeDlg::
SetDlgState()
{
	CSliderCtrl *pSlider = (CSliderCtrl *)GetDlgItem( IDC_TAPE_SLIDER );
	CFileStatus  fsStatus;

	ASSERT(NULL != pSlider);

	/* Check if there is the pointed cassette file */
	BOOL bTape = _IsPathAvailable( m_szTapeFile ) &&
				 CFile::GetStatus( m_szTapeFile, fsStatus );

	pSlider->SetRange( 1, cassette_max_block + 1, FALSE );
	pSlider->SetTicFreq( (cassette_max_block / 30) + 1 );
	pSlider->SetPageSize( (cassette_max_block / 30) + 1 );
	pSlider->SetPos( cassette_current_block );
	pSlider->EnableWindow( bTape );

	SetDlgItemText( IDC_TAPE_FILE, m_szTapeFile );
	SetDlgItemText( IDC_TAPE_DESC, m_bCasImage ? cassette_description : (bTape ? m_szLabels[ LABEL_NOCASIMAGE ] : "") );

	SetPosInfo( cassette_current_block );

#ifdef WIN_NETWORK_GAMES
	if( ST_KAILLERA_ACTIVE )
	{
		_RdOnlyEdit( IDC_TAPE_FILE,   TRUE  );
		_EnableCtrl( IDC_TAPE_BROWSE, FALSE );
		_EnableCtrl( IDC_TAPE_EJECT,  FALSE );
		_EnableCtrl( IDC_TAPE_REWIND, FALSE );
		_EnableCtrl( IDC_TAPE_SLIDER, FALSE );
	}
	else
#endif
	{
		_EnableCtrl( IDC_TAPE_EJECT,  bTape );
		_EnableCtrl( IDC_TAPE_REWIND, bTape );
	}
} /* #OF# CTapeDlg::SetDlgState */
Exemplo n.º 23
0
void CModulePropertiesDlg::OnCbnSelchangeExpansion()
{
	CComboBox *pExpansionChipBox = static_cast<CComboBox*>(GetDlgItem(IDC_EXPANSION));
	CSliderCtrl *pSlider = static_cast<CSliderCtrl*>(GetDlgItem(IDC_CHANNELS));

	// Expansion chip
	unsigned int iExpansionChip = theApp.GetChannelMap()->GetChipIdent(pExpansionChipBox->GetCurSel());

	CString channelsStr;
	channelsStr.LoadString(IDS_PROPERTIES_CHANNELS);
	if (iExpansionChip == SNDCHIP_N163) {
		pSlider->EnableWindow(TRUE);
		int Channels = m_pDocument->GetNamcoChannels();
		pSlider->SetPos(Channels);
		channelsStr.AppendFormat(_T(" %i"), Channels);
	}
	else {
		pSlider->EnableWindow(FALSE);
		channelsStr.Append(_T(" N/A"));
	}
	SetDlgItemText(IDC_CHANNELS_NR, channelsStr);
}
Exemplo n.º 24
0
void CModulePropertiesDlg::OnCbnSelchangeExpansion()
{
    CComboBox *pExpansionChipBox = (CComboBox*)GetDlgItem(IDC_EXPANSION);
    CMainFrame *pMainFrame = (CMainFrame*)GetParentFrame();
    CSliderCtrl *pSlider = (CSliderCtrl*)GetDlgItem(IDC_CHANNELS);

    // Expansion chip
    unsigned int iExpansionChip = theApp.GetChannelMap()->GetChipIdent(pExpansionChipBox->GetCurSel());

    if (iExpansionChip == SNDCHIP_N163) {
        pSlider->EnableWindow(TRUE);
        int Channels = m_pDocument->GetNamcoChannels();
        pSlider->SetPos(Channels);
        CString text;
        text.Format(_T("Channels: %i"), Channels);
        SetDlgItemText(IDC_CHANNELS_NR, text);
    }
    else {
        pSlider->EnableWindow(FALSE);
        SetDlgItemText(IDC_CHANNELS_NR, _T("Channels: N/A"));
    }
}
Exemplo n.º 25
0
void CADHistFrm::OnCustomdrawSLIDEROffset(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	CADHistDoc* pDoc = (CADHistDoc*)GetActiveDocument();  // 在Frame中取得当前文档指针
    CADHistWaveView* pWaveView = (CADHistWaveView*)(CWnd::FromHandle(pDoc->m_hWndWave)); 

	CSliderCtrl* pSliderOffset = (CSliderCtrl*)(m_wndSetupBar.GetDlgItem(IDC_SLIDER_Offset));	
	pDoc->m_Offset=pSliderOffset->GetPos();  // 取得滑动条位置(即文件偏移(字))
	pSliderOffset->SetPos(pDoc->m_Offset);


// 	CString str;	
// 	CEdit* pEditOffset = (CEdit*)(m_wndSetupBar.GetDlgItem(IDC_EDIT_Offset));	
// 	CEdit* pEditScreenPos = (CEdit*)(m_wndSetupBar.GetDlgItem(IDC_EDIT_ScreenPos));
// 	str.Format(_T("%d"), Pos);
// 	pEditOffset->SetWindowText(str);  // 显示文件偏移
// 	str.Format(_T("%d"), Pos);
// 	pEditScreenPos->SetWindowText(str);   
	RedrawDataWindow();  // 重绘数据视图
	//pWaveView->m_ADHistScope.AppendPoly(gl_BufferID, gl_Offset);

	*pResult = 0;

}
Exemplo n.º 26
0
BOOL CBrushBaseParamTabDialog::OnInitDialog()
{
	CDialog::OnInitDialog();

	CEdit* pEdit;
	CComboBox* pCombo;
	CSliderCtrl* pSld;

	//base radius
	m_prev_org_rad = m_pEditBrush->GetOrgRadius();
	pSld = (CSliderCtrl*) GetDlgItem(IDC_BASE_RAD_SLD);
	if (pSld) {
		pSld->SetRange(
			IEBrush::MIN_RADIUS,
			IEBrush::MAX_RADIUS);
		pSld->SetPos( m_prev_org_rad );
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_BASE_RAD_SLD\n");
	}
	pEdit = (CEdit*) GetDlgItem(IDC_BASE_RAD_EDIT);
	if (pEdit) {
		TCHAR txt[256];
		wsprintf(txt, "%d", m_prev_org_rad);
		pEdit->SetWindowText(txt);
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_BASE_RAD_EDIT\n");
	}
	m_prev_rad_ctrl_id = m_pEditBrush->GetRadiusCtrlID();
	pCombo = (CComboBox*) GetDlgItem(IDC_RAD_CTRL_COMBO);
	if (pCombo) {
		pCombo->InsertString(IE_BRUSH_CTRL_ID::OFF, "オフ");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::PRESSURE, "筆圧");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::AZIMUTH, "回転");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::ALTITUDE, "傾き");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::RANDOM, "ランダム");
		pCombo->SetCurSel(m_prev_rad_ctrl_id);
	}

	//alpha
	m_prev_alpha_ctrl_id = m_pEditBrush->GetAlphaCtrlID();
	pCombo = (CComboBox*) GetDlgItem(IDC_ALPHA_CTRL_COMBO);
	if (pCombo) {
		pCombo->InsertString(IE_BRUSH_CTRL_ID::OFF, "オフ");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::PRESSURE, "筆圧");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::AZIMUTH, "回転");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::ALTITUDE, "傾き");
		pCombo->InsertString(IE_BRUSH_CTRL_ID::RANDOM, "ランダム");
		pCombo->SetCurSel(m_prev_alpha_ctrl_id);
	}

	//hardness
	m_prev_hardness = m_pEditBrush->GetHardness();
	pSld = (CSliderCtrl*) GetDlgItem(IDC_HARDNESS_SLD);
	if (pSld) {
		pSld->SetRange(0, 100);
		pSld->SetPos( m_prev_hardness );
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_HARDNESS_SLD\n");
	}
	pEdit = (CEdit*) GetDlgItem(IDC_HARDNESS_EDIT);
	if (pEdit) {
		TCHAR txt[256];
		wsprintf(txt, "%d", m_prev_hardness);
		pEdit->SetWindowText(txt);
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_HARDNESS_EDIT\n");
	}

	//min radius
	m_prev_min_rad = m_pEditBrush->GetMinRadius();
	pSld = (CSliderCtrl*) GetDlgItem(IDC_MIN_RAD_SLD);
	if (pSld) {
		pSld->SetRange(0, 100);
		pSld->SetPos( m_prev_min_rad );
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_MIN_RAD_SLD\n");
	}
	pEdit = (CEdit*) GetDlgItem(IDC_MIN_RAD_EDIT);
	if (pEdit) {
		TCHAR txt[256];
		wsprintf(txt, "%d", m_prev_min_rad);
		pEdit->SetWindowText(txt);
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_MIN_RAD_EDIT\n");
	}

	//min alpha
	m_prev_min_alpha = m_pEditBrush->GetMinAlpha();
	pSld = (CSliderCtrl*) GetDlgItem(IDC_MIN_ALPHA_SLD);
	if (pSld) {
		pSld->SetRange(0, 100);
		pSld->SetPos( m_prev_min_alpha );
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_MIN_ALPHA_SLD\n");
	}
	pEdit = (CEdit*) GetDlgItem(IDC_MIN_ALPHA_EDIT);
	if (pEdit) {
		TCHAR txt[256];
		wsprintf(txt, "%d", m_prev_min_alpha);
		pEdit->SetWindowText(txt);
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_MIN_ALPHA_EDIT\n");
	}

	//interval
	m_prev_interval = m_pEditBrush->GetInterval();
	pSld = (CSliderCtrl*) GetDlgItem(IDC_INTERVAL_SLD);
	if (pSld) {
		pSld->SetRange(
			IEBrush::MIN_INTERVAL,
			IEBrush::MAX_INTERVAL);
		pSld->SetPos( m_prev_interval );
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_INTERVAL_SLD\n");
	}
	pEdit = (CEdit*) GetDlgItem(IDC_INTERVAL_EDIT);
	if (pEdit) {
		TCHAR txt[256];
		wsprintf(txt, "%d", m_prev_interval);
		pEdit->SetWindowText(txt);
	}
	else {
		::OutputDebugString("CBrushBaseParamTabDialog::OnInitDialog(), not found IDC_INTERVAL_EDIT\n");
	}

	return TRUE;
}
BOOL 
CPGRStereoControlDialog::OnInitDialog() 
{
   char		  valueText[ 128 ];
   CSliderCtrl*	  pSlider;
   
   // Set up stereo mask slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_STEREO );
   pSlider->SetRange( 0, 11 );         // 1-23 odd
   sprintf( valueText, "%d", m_nStereoMaskSize );
   GetDlgItem( PGRRES_STATIC_STEREO )->SetWindowText( valueText );
   pSlider->SetPos( (m_nStereoMaskSize - 1) / 2 );
   
   // Set up edge mask slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_EDGE );
   pSlider->SetRange( 0, 5 );           // 1-11 odd
   sprintf( valueText, "%d", m_nEdgeMaskSize );
   GetDlgItem( PGRRES_STATIC_EDGE )->SetWindowText( valueText );
   pSlider->SetPos( (m_nEdgeMaskSize - 1) / 2 );
   
   // Set up maximum disparity slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_DISPARITY );
   int maxDisp = getMaxDisparityAllowed( false );
   pSlider->SetRange( 0, maxDisp );     // 0-maxDisp 
   sprintf( valueText, "%d", m_nMaxDisparity );
   GetDlgItem( PGRRES_STATIC_DISPARITY )->SetWindowText( valueText );
   pSlider->SetPos( m_nMaxDisparity );

   // Set up minimum disparity slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_MINDISPARITY );
   pSlider->SetRange( 0, maxDisp );     // 0-maxDisp
   sprintf( valueText, "%d", m_nMinDisparity );
   GetDlgItem( PGRRES_STATIC_MINDISPARITY )->SetWindowText( valueText );
   pSlider->SetPos( m_nMinDisparity );
   
   // Set up texture validation slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_TEXTURE );
   pSlider->SetRange( 0, 400 );        // 0-4  (float 1/100) 
   sprintf( valueText, "%5.2f", m_fTextureValidation );
   GetDlgItem( PGRRES_STATIC_TEXTURE )->SetWindowText( valueText );
   pSlider->SetPos( (int)(m_fTextureValidation * 100.0) );
   
   // Set up uniqueness validation slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_UNIQUENESS );
   pSlider->SetRange( 0, 300 );    // 0-10 (float 1/100)
   sprintf( valueText, "%5.2f", m_fUniquenessValidation );
   GetDlgItem( PGRRES_STATIC_UNIQUENESS )->SetWindowText( valueText );
   pSlider->SetPos( (int)(m_fUniquenessValidation * 100.00) );

   // Set up point size slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_POINT_SIZE );
   pSlider->SetRange( 0, 200 );    
   sprintf( valueText, "%d%%", m_fPointSize );
   GetDlgItem( PGRRES_STATIC_POINT_SIZE )->SetWindowText( valueText );
   pSlider->SetPos( (int)(m_fPointSize ) );
   
   // Set up surface validation size slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_SURFACEVALIDATIONSIZE );
   pSlider->SetRange( 0, 400 );          
   sprintf( valueText, "%d", m_nSurfaceValidationSize );
   GetDlgItem( PGRRES_STATIC_SURFACEVALIDATIONSIZE )->SetWindowText( valueText );
   pSlider->SetPos( m_nSurfaceValidationSize );
   
   // Set up surface validation difference slider
   pSlider = (CSliderCtrl*)GetDlgItem( PGRRES_SLIDER_SURFACEVALIDATIONDIFF );
   pSlider->SetRange( 0, 300 );     
   sprintf( valueText, "%3.2f", m_fSurfaceValidationDiff );
   GetDlgItem( PGRRES_STATIC_SURFACEVALIDATIONDIFF )->SetWindowText( valueText );
   pSlider->SetPos( (int)(m_fSurfaceValidationDiff * 100.0) );

   
   CDialog::OnInitDialog();

   // disable the Invalid Colors check box if the heatmap check box 
   // is on
   if ( m_checkHeatmap.GetCheck() == TRUE )
   {
      m_checkInvalidColors.EnableWindow( FALSE );
   }
   
   //
   m_comboBoxRectification.InsertString( 0, "Standard" );
   m_comboBoxRectification.InsertString( 1, "Enhanced 1" );
   m_comboBoxRectification.InsertString( 2, "Enhanced 2" );

   UpdateData( FALSE );

   // Create a tips for the various controls
   m_tipCtrl.Create( this );
   m_tipCtrl.AddWindowTool( &m_checkInvalidColors, 
      _T("Use different colors for each kind of invalid pixel"
	 "(See color icons in validation box)") );
   m_tipCtrl.AddWindowTool( &m_checkHeatmap,
      _T("Display disparity as a 'heatmap' or a grayscale") );
   m_tipCtrl.AddWindowTool( &m_buttonAlg3Cam,
      _T("Use 3 camera stereo - Bumblebee XB3 only") );
   m_tipCtrl.AddWindowTool( &m_buttonAlg2CamV,
      _T("Use 2 camera stereo - Wide Baseline") );
   m_tipCtrl.AddWindowTool( &m_buttonAlg2CamH,
      _T("Use 2 camera stereo - Narrow Baseline") );
   m_tipCtrl.AddWindowTool( &m_sliderSurfaceValidationSize,
      _T("Controls the minimum size that a valid surface must be (in pixels)") );
   m_tipCtrl.AddWindowTool( &m_sliderSurfaceValidationDiff,
      _T("Controls the maximum disparity difference between adjacent pixels for"
      " them to be in the same surface") );
   m_tipCtrl.AddWindowTool( &m_sliderUniqueness,
      _T("Uniqueness threshold - higher values mean less aggressive validation") );
   m_tipCtrl.AddWindowTool( &m_sliderTexture,
      _T("Texture threshold - higher values mean more aggressive validation") );
   m_tipCtrl.AddWindowTool( &m_sliderStereo,
      _T("Controls the size of the stereo correlation mask") );
   m_tipCtrl.AddWindowTool( &m_sliderEdge,
      _T("Controls the size of the edge extraction mask - 7 or 9 is recommended") );
   m_tipCtrl.AddWindowTool( &m_sliderDisparity,
      _T("Controls the maximum disparity searched") );
   m_tipCtrl.AddWindowTool( &m_sliderMinDisparity,
      _T("Controls the minimum disparity searched") );
   m_tipCtrl.AddWindowTool( &m_checkSmooth,
      _T("Should always be left on! - turns pre-smoothing in rectification on or off.") );
   m_tipCtrl.AddWindowTool( &m_checkEdge,
      _T("Indicates whether stereo correlation should be done on edge or greyscale images -"
	 "edge correlation is less sensitive to image brightness differences and is more robust") );
   m_tipCtrl.AddWindowTool( &m_checkStereoButton,
      _T("Turns stereo process on and off") );
   m_tipCtrl.AddWindowTool( &m_checkSubpixel,
      _T("Turns subpixel interpolation on and off - subpixel interpolation on gives more"
      " accurate 3D views") );
   m_tipCtrl.AddWindowTool( &m_checkUniqueness,
      _T("Turns uniqueness validation on and off - recommended to be left OFF") );
   m_tipCtrl.AddWindowTool( &m_checkTexture,
      _T("Turns texture validation on and off - recommended to be left ON") );
   m_tipCtrl.AddWindowTool( &m_checkBackForth,
      _T("Turns back-and-forth validation on and off - only available for 2 camera stereo,"
      " this validation method is very useful") );
   m_tipCtrl.AddWindowTool( &m_checkSurfaceValidation,
      _T("Turns surface validation on or off - recommended to be left ON") );
   m_tipCtrl.AddWindowTool( &m_buttonAlg3Cam,
      _T("") );
	
   return TRUE;
}
Exemplo n.º 28
0
void VideoAbsSUBDlg::OnTimer(UINT_PTR nIDEvent)
{
	// TODO:  在此添加消息处理程序代码和/或调用默认值

	//CDialogEx::OnTimer(nIDEvent);
	switch (nIDEvent)
	{
	case 1://player1的滑动条
		{
		if (Tab1_playpiece)
		{
			CSliderCtrl * SliderCtrl = ((CSliderCtrl*)GetDlgItem(IDC_SLIDER1_TAB1));
			SliderCtrl->SetPos(Tab1_Player1.m_currentFrameNO);
		}
		else
		{
			CSliderCtrl * SliderCtrl = ((CSliderCtrl*)GetDlgItem(IDC_SLIDER1_TAB1));
			int CurrentPos = SliderCtrl->GetPos();                            ///<获取当前进度条位置
			int NewCurrentFrameNO = (double)CurrentPos*double(Tab1_Player1.m_endFrameNO - Tab1_Player1.m_startFrameNO)
				/ (double)SliderCtrl->GetRangeMax();     ///<根据当前进度条位置,重新计算帧号

			if (Tab1_Player1.m_playState != PLAY_STATE_STOP && Tab1_Player1.m_playState != PLAY_STATE_FAST_FORWORD &&Tab1_Player1.m_playState != PLAY_STATE_PLAY_PIECE)///<若播放器处于正常播放或暂停状态
			{
				if (abs(NewCurrentFrameNO - Tab1_Player1.m_currentFrameNO)>5)
				{
					Tab1_Player1.m_currentFrameNO = NewCurrentFrameNO;             ///<根据新计算的帧号,重置播放器
				}
			}
			SliderCtrl->SetPos(Tab1_Player1.m_currentFrameNO);                   ///<根据新计算的帧号,重置滑动条
			CWnd *pWndTimeDis = GetDlgItem(IDC_STATIC_TAB1_ORI_TIME);
			if (Tab1_Player1.m_playState != PLAY_STATE_STOP)                     ///<非停止状态下,用方式一显示时间
			{
				Tab1_Player1.ShowTime(Tab1_Player1.m_currentFrameNO, Tab1_Player1.m_endFrameNO - Tab1_Player1.m_startFrameNO,
					Tab1_Player1.m_videoTimeInSecond, pWndTimeDis, 1);
			}
			else                                                            ///<停止状态下,用方式二显示时间
			{
				SliderCtrl->SetPos(0);
				Tab1_Player1.ShowTime(Tab1_Player1.m_currentFrameNO, Tab1_Player1.m_endFrameNO - Tab1_Player1.m_startFrameNO,
					Tab1_Player1.m_videoTimeInSecond, pWndTimeDis, 0);
			}
		}
	    }

	case 2://player2的滑动条
	{
		if (Tab1_playpiece)
		{
			CSliderCtrl * SliderCtrl = ((CSliderCtrl*)GetDlgItem(IDC_SLIDER2_TAB1));
			SliderCtrl->SetPos(Tab1_Player2.m_currentFrameNO);
		}
		else
		{
			CSliderCtrl * SliderCtrl = ((CSliderCtrl*)GetDlgItem(IDC_SLIDER2_TAB1));
			int CurrentPos = SliderCtrl->GetPos();                            ///<获取当前进度条位置
			int NewCurrentFrameNO = (double)CurrentPos*double(Tab1_Player2.m_endFrameNO - Tab1_Player2.m_startFrameNO)
				/ (double)SliderCtrl->GetRangeMax();     ///<根据当前进度条位置,重新计算帧号

			if (Tab1_Player2.m_playState != PLAY_STATE_STOP && Tab1_Player2.m_playState != PLAY_STATE_FAST_FORWORD &&Tab1_Player2.m_playState != PLAY_STATE_PLAY_PIECE)///<若播放器处于正常播放或暂停状态
			{
				if (abs(NewCurrentFrameNO - Tab1_Player2.m_currentFrameNO)>5)
				{
					Tab1_Player2.m_currentFrameNO = NewCurrentFrameNO;             ///<根据新计算的帧号,重置播放器
				}
			}
			SliderCtrl->SetPos(Tab1_Player2.m_currentFrameNO);                   ///<根据新计算的帧号,重置滑动条
			CWnd *pWndTimeDis = GetDlgItem(IDC_STATIC_TAB1_ABS_TIME);
			if (Tab1_Player2.m_playState != PLAY_STATE_STOP)                     ///<非停止状态下,用方式一显示时间
			{
				Tab1_Player2.ShowTime(Tab1_Player2.m_currentFrameNO, Tab1_Player2.m_endFrameNO - Tab1_Player2.m_startFrameNO,
					Tab1_Player2.m_videoTimeInSecond, pWndTimeDis, 1);
			}
			else                                                            ///<停止状态下,用方式二显示时间
			{
				SliderCtrl->SetPos(0);
				Tab1_Player2.ShowTime(Tab1_Player2.m_currentFrameNO, Tab1_Player2.m_endFrameNO - Tab1_Player2.m_startFrameNO,
					Tab1_Player2.m_videoTimeInSecond, pWndTimeDis, 0);
			}
		}
	}
	case 3:///<刷进度条
	{
		if (!Tab1_ifStartPro)
		{
			Tab1_Pro->SetPos(0);
			SetDlgItemText(IDC_STATIC_TAB1_PRO, _T(""));//helloworld
		}
		else if (Tab1_videoPro->m_IfDoneFus)///<如果已经生成摘要则将ClistCtrl中响应的行显示为“已生成摘要”
		{
			Tab1_ifStartPro = false;
			MessageBox(_T("已生成摘要"));
			GetDlgItem(IDC_PROGRESS_TAB1)->ShowWindow(false);
		}
		///如果正在生成还未生成完毕,刷新进度条上方的显示处理阶段
		else if (Tab1_videoPro->m_IfContinue)
		{
			int VideoPos = (int)Tab1_videoPro->ProcessingSpeed();
			if (VideoPos == 0)
			{
				//SetDlgItemText(IDC_STATIC_TAB1_PRO, "视频预处理……");
				if(Tab1_videoPro->StepBitmapDefault[0] == false)
				{
					CBitmap *m_bmp=new CBitmap;
					m_bmp->LoadBitmap(IDB_STEP1);
					m_bmp=UIBeautifier.CBitmapResize(*m_bmp,668.0*UIBeautifier.rcDeskRect.Width()/1214,501.0*UIBeautifier.rcDeskRect.Height()/760);

					HBITMAP hBmp;// = HBITMAP(m_bmp);//将CBitmap转换为HBITMAP
					hBmp=(HBITMAP)(*m_bmp);
					((CStatic *)GetDlgItem(IDC_STATIC_TAB1_ABS))->SetBitmap(hBmp);
					Tab1_videoPro->StepBitmapDefault[0] = true;
				}				
			}
			//if (VideoPos == 1)
			//{
			//	//SetDlgItemText(IDC_STATIC_TAB1_PRO, "生成切分视频……");
			//	if(Tab1_videoPro->StepBitmapDefault[1] == false)
			//	{
			//		CBitmap *m_bmp=new CBitmap;
			//		m_bmp->LoadBitmap(IDB_STEP2);
			//		m_bmp=UIBeautifier.CBitmapResize(*m_bmp,668.0*UIBeautifier.rcDeskRect.Width()/1214,501.0*UIBeautifier.rcDeskRect.Height()/760);

			//		HBITMAP hBmp;// = HBITMAP(m_bmp);//将CBitmap转换为HBITMAP
			//		hBmp=(HBITMAP)(*m_bmp);
			//		((CStatic *)GetDlgItem(IDC_STATIC_TAB1_ABS))->SetBitmap(hBmp);
			//		Tab1_videoPro->StepBitmapDefault[1] = true;
			//	}		
			//}
			if (VideoPos == 1)
			{
				//SetDlgItemText(IDC_STATIC_TAB1_PRO, "视频背景处理……");
				if(Tab1_videoPro->StepBitmapDefault[2] == false)
				{
					CBitmap *m_bmp=new CBitmap;
					m_bmp->LoadBitmap(IDB_STEP3);
					m_bmp=UIBeautifier.CBitmapResize(*m_bmp,668.0*UIBeautifier.rcDeskRect.Width()/1214,501.0*UIBeautifier.rcDeskRect.Height()/760);

					HBITMAP hBmp;// = HBITMAP(m_bmp);//将CBitmap转换为HBITMAP
					hBmp=(HBITMAP)(*m_bmp);
					((CStatic *)GetDlgItem(IDC_STATIC_TAB1_ABS))->SetBitmap(hBmp);
					Tab1_videoPro->StepBitmapDefault[2] = true;
				}	
			}
			if (VideoPos == 2)
			{
				//SetDlgItemText(IDC_STATIC_TAB1_PRO, "视频前景处理……");
				if(Tab1_videoPro->StepBitmapDefault[3] == false)
				{
					CBitmap *m_bmp=new CBitmap;
					m_bmp->LoadBitmap(IDB_STEP4);
					m_bmp=UIBeautifier.CBitmapResize(*m_bmp,668.0*UIBeautifier.rcDeskRect.Width()/1214,501.0*UIBeautifier.rcDeskRect.Height()/760);

					HBITMAP hBmp;// = HBITMAP(m_bmp);//将CBitmap转换为HBITMAP
					hBmp=(HBITMAP)(*m_bmp);
					((CStatic *)GetDlgItem(IDC_STATIC_TAB1_ABS))->SetBitmap(hBmp);
					Tab1_videoPro->StepBitmapDefault[3] = true;
				}	
			}
			if (VideoPos == 3)
			{
				//SetDlgItemText(IDC_STATIC_TAB1_PRO, "视频融合……");
				if(Tab1_videoPro->StepBitmapDefault[4] == false)
				{
					CBitmap *m_bmp=new CBitmap;
					m_bmp->LoadBitmap(IDB_STEP5);
					m_bmp=UIBeautifier.CBitmapResize(*m_bmp,668.0*UIBeautifier.rcDeskRect.Width()/1214,501.0*UIBeautifier.rcDeskRect.Height()/760);

					HBITMAP hBmp;// = HBITMAP(m_bmp);//将CBitmap转换为HBITMAP
					hBmp=(HBITMAP)(*m_bmp);
					((CStatic *)GetDlgItem(IDC_STATIC_TAB1_ABS))->SetBitmap(hBmp);
					Tab1_videoPro->StepBitmapDefault[4] = true;
				}	
			}
			Tab1_Pro->SetPos((int)(Tab1_videoPro->ProcessingSpeed()*100.0));
		}
		else
		{
			if ((int)Tab1_videoPro->ProcessingSpeed() == -1)
			{
				Tab1_ifStartPro = false;
				MessageBox(_T("视频时长过短,无需融合处理"));

			}
		}
	}
	case 4://摘要窗口的左键单击
	{
		if (Tab1_Player2.m_gotCVlclick == TRUE)  //&& Abstractplayer.m_playState == PLAY_STATE_PAUSE
		{
			Tab1_clickedObjRecPosInVec = -1;
			CPoint posInWnd = Tab1_Player2.m_lBtnUpPosInCVWnd;///<播放器对象传出的点击坐标,此时的点击位置已经是原始帧尺寸的坐标
			double clickPosXInImg = double(posInWnd.x);
			double clickPosYInImg = double(posInWnd.y);///<注意此时的点击位置已经是原始帧尺寸的坐标
			Tab1_distanceToRecCenter = 1000000;

			Tab1_objectRectVector.clear();
			///<从数据库中读取ROI信息
			if (!Tab1_MysqlHandle->FindROIFromNewTraceTable(Tab1_Player2.m_currentFrameNO, &Tab1_objectRectVector, Tab1_videoPro->m_tableParams.NewTraceTable))//////"00015_h_NewTraceTable"
			{
				AfxMessageBox(_T("数据库出错"));
				return;
			}

			for (int i = 0; i<Tab1_objectRectVector.size(); i++)///<遍历所有ROI目标框
			{
				if (clickPosXInImg < Tab1_objectRectVector[i].x + Tab1_objectRectVector[i].width && clickPosXInImg >Tab1_objectRectVector[i].x///<判断点击是否在当前框内
					&& clickPosYInImg < Tab1_objectRectVector[i].y + Tab1_objectRectVector[i].height && clickPosYInImg > Tab1_objectRectVector[i].y)
				{
					int tempDistance = (clickPosXInImg - (Tab1_objectRectVector[i].x + Tab1_objectRectVector[i].width / 2))*
						(clickPosXInImg - (Tab1_objectRectVector[i].x + Tab1_objectRectVector[i].width / 2)) +
						(clickPosYInImg - (Tab1_objectRectVector[i].y + Tab1_objectRectVector[i].height / 2))*
						(clickPosYInImg - (Tab1_objectRectVector[i].y + Tab1_objectRectVector[i].height / 2));///<计算点击位置与当前ROI中心的距离

					if (tempDistance < Tab1_distanceToRecCenter)
					{
						Tab1_distanceToRecCenter = tempDistance;///<当前距离小于记录的最小距离,则更新这个最小距离
						Tab1_clickedObjRecPosInVec = i;         ///<并记录当前ROI在向量中的下标值
					}
				}
			}
			if (Tab1_clickedObjRecPosInVec == -1)
			{
				return;
			}
			/*if (m_theObjRecClicked != m_objectRectVector[m_clickedObjRecPosInVec])
			{*/
			Tab1_theObjRecClicked = Tab1_objectRectVector[Tab1_clickedObjRecPosInVec];
			int m_theorigFrame = 0;
			if (Tab1_videoPro != NULL)
			{
				int m_origPara = Tab1_MysqlHandle->FindOrigParaFromFGTraceTable(Tab1_videoPro->m_tableParams.FGTraceTableName, Tab1_theObjRecClicked);
				m_theorigFrame = Tab1_MysqlHandle->FindOrigFrameFromVideoFGTable(Tab1_videoPro->m_tableParams.VideoFGTableName, m_origPara);//m_videoPro->m_tableParams.NewTraceTable

				//m_theorigFrame = m_MysqlVideoParaSearchHandle->FindOrigFrameFromNewTraceTable(m_videoPro->m_tableParams.NewTraceTable,m_theObjRecClicked);//m_videoPro->m_tableParams.NewTraceTable
			}

			if (m_theorigFrame == -1)
			{
				MessageBox(_T("数据库有误"));
				Tab1_Player2.m_gotCVlclick = FALSE;
				return;
			};
			//else
			//{
			//	Originalplayer.m_startFrameNO = MAX(0,m_theorigFrame-500);///<未能得到帧号,则默认播放前500帧和后1000帧
			//	Originalplayer.m_endFrameNO   = Originalplayer.m_startFrameNO + 1000;
			//}

			//player1.m_filePath = absOriNameTansf(Abstractplayer.m_filePath);				
			Tab1_Player1.m_currentFrameNO = m_theorigFrame;                                 ///<初始化原始视频播放器
			//}
			Tab1_playpiece = TRUE;
			Tab1_Player2.m_gotCVlclick = FALSE;                                       ///<点击比对完毕,将得到点击标志位置否
		}
	}



	default:
		break;
	}
}
Exemplo n.º 29
0
BOOL CPPgGeneral::OnInitDialog()
{
	CPropertyPage::OnInitDialog();
	InitWindowStyles(this);

	((CEdit*)GetDlgItem(IDC_NICK))->SetLimitText(thePrefs.GetMaxUserNickLength());

	CWordArray aLanguageIDs;
	thePrefs.GetLanguages(aLanguageIDs);
	for (int i = 0; i < aLanguageIDs.GetSize(); i++){
		TCHAR szLang[128];
		int ret=GetLocaleInfo(aLanguageIDs[i], LOCALE_SLANGUAGE, szLang, ARRSIZE(szLang));

		if (ret==0 && aLanguageIDs[i]== LANGID_GL_ES )
			_tcscpy(szLang,_T("Galician") );
		else if (ret==0 && aLanguageIDs[i]==LANGID_FR_BR )
			_tcscpy(szLang,_T("Breton (Brezhoneg)") );
		else if (ret==0 && aLanguageIDs[i]==LANGID_MT_MT )
			_tcscpy(szLang,_T("Maltese") );
		else if (ret==0 && aLanguageIDs[i]==LANGID_ES_AS )
			_tcscpy(szLang,_T("Asturian") );

		if (!_tcscmp(szLang, _T("中文(台湾)"))) //Added by thilon on 2006.09.06
			_tcscpy(szLang, _T("中文(繁体)"));
	
		if (!_tcscmp(szLang, _T("中文(中国)")))	//Added by thilon on 2006.09.06
			_tcscpy(szLang, _T("中文(简体)"));

		if (!_tcscmp(szLang, _T("Chinese (Taiwan)")))
			_tcscpy(szLang, _T("Chinese (Tradition)"));

		
		if (!_tcscmp(szLang, _T("Chinese (PRC)")))
			_tcscpy(szLang, _T("Chinese (Simplified)"));

		m_language.SetItemData(m_language.AddString(szLang), aLanguageIDs[i]);
	}

	//Chocobo Start
	//eMule自动更新,modified by Chocobo on 2006.08.01
	//屏蔽修改更新间隔
	CSliderCtrl *sliderUpdate = (CSliderCtrl*)GetDlgItem(IDC_CHECKDAYS);
	sliderUpdate->SetRange(1, 7, true);//自动更新时间1-7,modified by Chocobo on 2006.08.17
	sliderUpdate->SetPos(thePrefs.GetUpdateDays());
	//Chocobo End

	//Changed by thilon on 2007.11.01
	m_iFileBufferSize = thePrefs.m_iFileBufferSize;
	
	
	// added by vc-yavey on 20100429 : config rss <begin>
	m_uRssIntervalSecond = thePrefs.m_uRssUpdateInterval;
	m_bRssAutoDownload = thePrefs.m_bRssAutoDownload;
	// added by vc-yavey on 20100429 : config rss <end>

	LoadSettings();
	//Localize();

	GetDlgItem(IDC_CHECKDAYS)->ShowWindow( IsDlgButtonChecked(IDC_CHECK4UPDATE) ? SW_SHOW : SW_HIDE );
	GetDlgItem(IDC_DAYS)->ShowWindow( IsDlgButtonChecked(IDC_CHECK4UPDATE) ? SW_SHOW : SW_HIDE );

	return TRUE;  // return TRUE unless you set the focus to a control
				  // EXCEPTION: OCX Property Pages should return FALSE
}
Exemplo n.º 30
-1
BOOL CPPgGeneral::OnInitDialog()
{
	CPropertyPage::OnInitDialog();
	InitWindowStyles(this);

	// eF-Mod :: InvisibleMode
	// Add keys to ComboBox 
	for(int i='A'; i<='Z'; i++) 
		((CComboBox*)GetDlgItem(IDC_INVISIBLE_MODE_SELECT_COMBO))->AddString(CString((TCHAR)(i))); 
	for(int i='0'; i<='9'; i++) 
		((CComboBox*)GetDlgItem(IDC_INVISIBLE_MODE_SELECT_COMBO))->AddString(CString((TCHAR)(i))); 
	// eF-Mod end

	((CEdit*)GetDlgItem(IDC_NICK))->SetLimitText(thePrefs.GetMaxUserNickLength());

	CWordArray aLanguageIDs;
	thePrefs.GetLanguages(aLanguageIDs);
	for (int i = 0; i < aLanguageIDs.GetSize(); i++){
		TCHAR szLang[128];
		int ret=GetLocaleInfo(aLanguageIDs[i], LOCALE_SLANGUAGE, szLang, ARRSIZE(szLang));

		if (ret==0 && aLanguageIDs[i]== LANGID_GL_ES )
			_tcscpy(szLang,_T("Galician") );
		else if (ret==0 && aLanguageIDs[i]==LANGID_FR_BR )
			_tcscpy(szLang,_T("Breton (Brezhoneg)") );

		m_language.SetItemData(m_language.AddString(szLang), aLanguageIDs[i]);
	}

	UpdateEd2kLinkFixCtrl();

	GetDlgItem(IDC_ONLINESIG)->ShowWindow( thePrefs.IsExtControlsEnabled()?SW_SHOW:SW_HIDE );

	CSliderCtrl *sliderUpdate = (CSliderCtrl*)GetDlgItem(IDC_CHECKDAYS);
	sliderUpdate->SetRange(2, 7, true);
	sliderUpdate->SetPos(thePrefs.GetUpdateDays());
	
	LoadSettings();
	Localize();
	GetDlgItem(IDC_CHECKDAYS)->ShowWindow( IsDlgButtonChecked(IDC_CHECK4UPDATE) ? SW_SHOW : SW_HIDE );
	GetDlgItem(IDC_DAYS)->ShowWindow( IsDlgButtonChecked(IDC_CHECK4UPDATE) ? SW_SHOW : SW_HIDE );

	return TRUE;  // return TRUE unless you set the focus to a control
				  // EXCEPTION: OCX Property Pages should return FALSE
}