void VLCControlsWnd::UpdateButtons() { if(hVideoPosScroll){ SetVideoPosScrollRangeByVideoLen(); SyncVideoPosScrollPosWithVideoPos(); } if(hVolumeSlider){ SyncVolumeSliderWithVLCVolume(); } if(hFSButton) { HANDLE hFSBitmap = WM().IsFullScreen() ? RC().hDeFullscreenBitmap : RC().hFullscreenBitmap; HANDLE hBitmap = (HANDLE)SendMessage(hFSButton, BM_GETIMAGE, (WPARAM)IMAGE_BITMAP, 0); if( WM().getNewMessageFlag() && (hBitmap == RC().hDeFullscreenBitmap || hBitmap == RC().hFullscreenBitmap) ) { SendMessage(hFSButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)RC().hNewMessageBitmap); //do not allow control window to close while there are new messages NeedShowControls(); } else{ if(hBitmap != hFSBitmap) SendMessage(hFSButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)hFSBitmap); } } if(hPlayPauseButton){ HANDLE hBmp = IsPlaying() ? RC().hPauseBitmap : RC().hPlayBitmap; SendMessage(hPlayPauseButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)hBmp); } }
void VLCFullScreenWnd::NeedShowControls() { if(!IsWindowVisible(hControlsWnd)){ libvlc_media_player_t* p_md = getMD(); if( p_md ){ if(hVideoPosScroll){ SetVideoPosScrollRangeByVideoLen(); SyncVideoPosScrollPosWithVideoPos(); } if(hVolumeSlider){ SyncVolumeSliderWithVLCVolume(); } if(hPlayPauseButton){ SendMessage(hPlayPauseButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)(IsPlaying()?hPauseBitmap:hPlayBitmap)); } } ShowWindow(hControlsWnd, SW_SHOW); } //hide controls after 2 seconds SetTimer(hControlsWnd, 1, 2*1000, NULL); }