⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mp3playerwindow.cpp

📁 music player developemntm usic player developemntm usic player developemntmusic player developemnt
💻 CPP
📖 第 1 页 / 共 3 页
字号:
		static KeyCode KeyPressed = 0;	BOOLEAN dispatched = TRUE;	DataItem item;	switch(msg.Id())	{			case KeyDownMsg::ID:		{			KeyDownMsg* key_down_msg;			CastMsg(key_down_msg, &msg);			KeyPressed = key_down_msg->GetKeyCode();			switch(KeyPressed)			{				case c_key_down:				case c_key_vol_down: /* ONLY IF CLAMSHELL CLOSED */					{						m_volume-= (100/VOLUME_STEPS);						if(m_volume < 0)							m_volume = 0;						//mvaclass_call : DECREASE THE VOLUME (m_volume)						mvaClass_AudioSetVolume_SA(m_Mmi2DriverVolume[m_volume/VOLUME_STEPS]);						m_volume_bar.SetProgress(m_volume);						//KeyPressed = 0;					}					return TRUE;				case c_key_up:				case c_key_vol_up: /* ONLY IF CLAMSHELL CLOSED */					{						m_volume+= (100/VOLUME_STEPS);						if( m_volume > 100)								m_volume = 100;						//mvaclass_call : INCREASE THE VOLUME (m_volume)						mvaClass_AudioSetVolume_SA(m_Mmi2DriverVolume[m_volume/VOLUME_STEPS]);						m_volume_bar.SetProgress(m_volume);						//KeyPressed = 0;					}					return TRUE;								case c_key_right:				case c_key_3: /* ONLY IF CLAMSHELL CLOSED */					m_playback_timer.Stop();					m_spectrum_analyser_timer.Stop();					m_index_of_song++;					if (m_index_of_song > m_mp3player_app->GetMP3PlayerSongsProv()->RowCount() - 1)						m_index_of_song = 0;					if (GetContextId() == ContextID("MP3Player.MainWinPause"))					{						SetContextId(ContextID("MP3Player.MainWinPlay"));						//mvaclass_call : RESUME THE CURRENT SONG						mvaClass_AudioResume_SA();					}					//mvaclass_call : START THE NEXT SONG					mvaClass_AudioNextSong_SA();					// Get title from provider					m_mp3player_app->GetMP3PlayerSongsProv()->GetDataItem(c_mp3player_songtitle, m_index_of_song, item);					SetTitle(item.GetWString());					// Get length from provider					m_mp3player_app->GetMP3PlayerSongsProv()->GetDataItem(c_mp3player_songlength, m_index_of_song, item);					m_current_mp3_max_time = (UINT16)(item.GetNumber());					m_current_mp3_max_time_mins = m_current_mp3_max_time / 60;					m_current_mp3_max_time_secs = m_current_mp3_max_time - (m_current_mp3_max_time_mins * 60);					m_current_mp3_time = 0;					m_current_mp3_time_mins = 0;					m_current_mp3_time_secs = 0;					m_playback_timer.Start();					m_spectrum_analyser_timer.Start();					UpdatePlaybackTimeAndProgressBar();					UpdateSpectrumAnalyser();					//KeyPressed = 0;					return TRUE;				case c_key_left:				case c_key_1: /* ONLY IF CLAMSHELL CLOSED */					m_playback_timer.Stop();					m_spectrum_analyser_timer.Stop();					m_index_of_song--;					if (m_index_of_song < 0)						m_index_of_song = m_mp3player_app->GetMP3PlayerSongsProv()->RowCount() - 1;					if (GetContextId() == ContextID("MP3Player.MainWinPause"))					{						SetContextId(ContextID("MP3Player.MainWinPlay"));						//mvaclass_call : RESUME THE CURRENT SONG						mvaClass_AudioResume_SA();					}					//mvaclass_call : START THE PREVIOUS SONG					mvaClass_AudioPrevSong_SA();					// Get title from provider					m_mp3player_app->GetMP3PlayerSongsProv()->GetDataItem(c_mp3player_songtitle, m_index_of_song, item);					SetTitle(item.GetWString());					// Get length from provider					m_mp3player_app->GetMP3PlayerSongsProv()->GetDataItem(c_mp3player_songlength, m_index_of_song, item);					m_current_mp3_max_time = (UINT16)(item.GetNumber());					m_current_mp3_max_time_mins = m_current_mp3_max_time / 60;					m_current_mp3_max_time_secs = m_current_mp3_max_time - (m_current_mp3_max_time_mins * 60);					m_current_mp3_time = 0;					m_current_mp3_time_mins = 0;					m_current_mp3_time_secs = 0;					m_playback_timer.Start();					m_spectrum_analyser_timer.Start();					UpdatePlaybackTimeAndProgressBar();					UpdateSpectrumAnalyser();					//KeyPressed = 0;					return TRUE;				case c_key_2: /* ONLY IF CLAMSHELL CLOSED */					if (GetContextId() == ContextID("MP3Player.MainWinPlay"))						FeatureBroker::GetInstance()->GetFeature("MP3Player", "SkPause")->Execute();					else if (GetContextId() == ContextID("MP3Player.MainWinPause"))						FeatureBroker::GetInstance()->GetFeature("MP3Player", "SkPlay")->Execute();					return TRUE;				case c_key_5:					if (enable_3d) 						{						mvaClass_AudioSetEffect_SA(MVA_DSP_MP3_EFFECT_DISABLE);						enable_3d=FALSE;						m_3d_box.SetBitmap(&empty_bit);						}					else {						mvaClass_AudioSetEffect_SA(MVA_DSP_MP3_EFFECT_SURROOUND);						enable_3d=TRUE;						m_3d_box.SetBitmap(&bit_3d);						}					Invalidate();					return TRUE;				case c_key_6:					switch(equal_effect)						{						case 0:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_TECHNO);							m_volume_text.SetText(L"Techno");							break;						case 1:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_ROCK);							m_volume_text.SetText(L"Rock");							break;						case 2:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_OPTIMAL);							m_volume_text.SetText(L"Optimal");							break;						case 3:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_METAL);							m_volume_text.SetText(L"Metal");							break;						case 4:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_POP);							m_volume_text.SetText(L"Pop");							break;						case 5:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_JAZZ);							m_volume_text.SetText(L"Jazz");							break;						case 6:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_SPEECH);							m_volume_text.SetText(L"Speech");							break;						case 7:							equal_effect++;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_LAST);							m_volume_text.SetText(L"Last");							break;						case 8:							equal_effect=0;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_FLAT);							m_volume_text.SetText(L"Normal");							break;						default:							break;						}					Invalidate();					return TRUE;									case c_key_4:					switch(equal_effect)						{						case 0:							equal_effect=8;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_LAST);							m_volume_text.SetText(L"Last");							break;						case 1:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_FLAT);							m_volume_text.SetText(L"Normal");							break;						case 2:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_TECHNO);							m_volume_text.SetText(L"Techno");							break;						case 3:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_ROCK);							m_volume_text.SetText(L"Rock");							break;						case 4:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_OPTIMAL);							m_volume_text.SetText(L"Optimal");							break;						case 5:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_METAL);							m_volume_text.SetText(L"Metal");							break;						case 6:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_POP);							m_volume_text.SetText(L"Pop");							break;						case 7:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_JAZZ);							m_volume_text.SetText(L"Jazz");							break;						case 8:							equal_effect--;							mvaClass_AudioSetEq_SA(MVA_DSP_MP3_EQ_SPEECH);							m_volume_text.SetText(L"Speech");							break;						default:							break;						}						Invalidate();					return TRUE;				default:					break;			}		}		break;		/*case KeyUpMsg::ID:		{			KeyUpMsg* key_up_msg;			CastMsg(key_up_msg, &msg);			KeyCode key_code = key_up_msg->GetKeyCode();			if(KeyPressed == key_code) 				MP3PlayerWindow::SetFrequency(key_code);		}		break;*/		/*case LongKeyPressMsg::ID:		{			LongKeyPressMsg *long_press_msg;			CastMsg(long_press_msg, &msg);			KeyCode key_code = long_press_msg->GetKeyCode();			if((key_code>=c_key_1) && (key_code<=c_key_9))				SaveFrequency(key_code);			else if(key_code==c_key_up)				m_fmradio_app->GetRadioDevice()->SeekStation(RadioAudioDevice::SeekDirectionUp, RadioAudioDevice::SeekModeAuto);			else if(key_code==c_key_down)				m_fmradio_app->GetRadioDevice()->SeekStation(RadioAudioDevice::SeekDirectionDown, RadioAudioDevice::SeekModeAuto);			KeyPressed = 0;		}		break;*/		default:			break;	}	dispatched = Base::OnMessage(msg);		return dispatched;}/*	------------------------------------------------------------------------	OnTimeout	------------------------------------------------------------------------ */BOOLEAN MP3PlayerWindow::OnTimeout(const Timer &timer){	if (&timer == &m_playback_timer)	{		//mvaclass_call : DO TIME CALCULATION ONLY IF THE SONG IS STILL PLAYING		if (mvaClass_AudioIsPlaying_SA())		{			//m_current_mp3_time++;			UINT32 curLength;			UINT32 bitrate;			//mvaclass_call : GET THE BITRATE AND THE CURRENT BITSTREAM CONSUMED			mvaClass_AudioGetBitrate_SA(&bitrate); // from the playing file			mvaClass_AudioGetCurLength_SA(&curLength); // from the playing file			m_current_mp3_time = curLength * 8 / (bitrate * 1000L);			m_current_mp3_time_mins = m_current_mp3_time / 60;			m_current_mp3_time_secs = m_current_mp3_time - (m_current_mp3_time_mins * 60);		}		else		{			DataItem item;			m_playback_timer.Stop();			m_spectrum_analyser_timer.Stop();			m_index_of_song++;			if (m_index_of_song > m_mp3player_app->GetMP3PlayerSongsProv()->RowCount() - 1)				m_index_of_song = 0;			//mvaclass_call : START THE NEXT SONG			mvaClass_AudioPlay_SA(m_index_of_song);			// Get title from provider			m_mp3player_app->GetMP3PlayerSongsProv()->GetDataItem(c_mp3player_songtitle, m_index_of_song, item);			SetTitle(item.GetWString());			// Get length from provider			m_mp3player_app->GetMP3PlayerSongsProv()->GetDataItem(c_mp3player_songlength, m_index_of_song, item);			m_current_mp3_max_time = (UINT16)(item.GetNumber());			m_current_mp3_max_time_mins = m_current_mp3_max_time / 60;			m_current_mp3_max_time_secs = m_current_mp3_max_time - (m_current_mp3_max_time_mins * 60);			m_current_mp3_time = 0;			m_current_mp3_time_mins = 0;			m_current_mp3_time_secs = 0;			m_playback_timer.Start();			m_spectrum_analyser_timer.Start();			UpdateSpectrumAnalyser();		}		UpdatePlaybackTimeAndProgressBar();	}	else if (&timer == &m_spectrum_analyser_timer) {		//m_spectrum_analyser_index++;		//if (m_spectrum_analyser_index >= SPECTRUM_ANALYSER_MAX_INDEX)		//	m_spectrum_analyser_index = 0;		UpdateSpectrumAnalyser();	}	return FALSE;}	// OnTimeout

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -