1 #include "stdafx.h" 2 #include "CPlayerUIHelper.h" 3 #include "MusicPlayer2.h" 4 #include "Player.h" 5 6 CPlayerUIHelper()7CPlayerUIHelper::CPlayerUIHelper() 8 { 9 } 10 11 ~CPlayerUIHelper()12CPlayerUIHelper::~CPlayerUIHelper() 13 { 14 } 15 GetUIColors(const ColorTable & colorTable,bool dark,bool draw_alpha)16UIColors CPlayerUIHelper::GetUIColors(const ColorTable & colorTable, bool dark, bool draw_alpha) 17 { 18 UIColors colors{}; 19 //if (theApp.m_app_setting_data.dark_mode) 20 if (dark) 21 { 22 colors.color_text = ColorTable::WHITE; 23 colors.color_text_lable = theApp.m_app_setting_data.theme_color.light2; 24 colors.color_text_2 = theApp.m_app_setting_data.theme_color.light1; 25 colors.color_text_heighlight = theApp.m_app_setting_data.theme_color.light2; 26 colors.color_back = GRAY(64); 27 colors.color_lyric_back = theApp.m_app_setting_data.theme_color.dark3; 28 colors.color_control_bar_back = theApp.m_app_setting_data.theme_color.dark2; 29 colors.color_spectrum = theApp.m_app_setting_data.theme_color.light2; 30 colors.color_spectrum_cover = theApp.m_app_setting_data.theme_color.original_color; 31 colors.color_spectrum_back = theApp.m_app_setting_data.theme_color.dark1; 32 colors.color_button_back = theApp.m_app_setting_data.theme_color.dark3; 33 colors.color_stack_indicator = theApp.m_app_setting_data.theme_color.light2; 34 colors.color_scrollbar_handle = theApp.m_app_setting_data.theme_color.dark1; 35 if (draw_alpha) 36 { 37 colors.color_button_pressed = theApp.m_app_setting_data.theme_color.light2; 38 colors.color_button_hover = theApp.m_app_setting_data.theme_color.light1; 39 } 40 else 41 { 42 colors.color_button_pressed = theApp.m_app_setting_data.theme_color.dark0; 43 colors.color_button_hover = theApp.m_app_setting_data.theme_color.dark1; 44 } 45 } 46 else 47 { 48 colors.color_text = theApp.m_app_setting_data.theme_color.dark2; 49 colors.color_text_lable = theApp.m_app_setting_data.theme_color.original_color; 50 colors.color_text_2 = theApp.m_app_setting_data.theme_color.light1; 51 colors.color_text_heighlight = theApp.m_app_setting_data.theme_color.dark1; 52 colors.color_back = ColorTable::WHITE; 53 colors.color_lyric_back = theApp.m_app_setting_data.theme_color.light3; 54 colors.color_control_bar_back = theApp.m_app_setting_data.theme_color.light3; 55 colors.color_spectrum = theApp.m_app_setting_data.theme_color.original_color; 56 colors.color_spectrum_cover = theApp.m_app_setting_data.theme_color.original_color; 57 colors.color_spectrum_back = theApp.m_app_setting_data.theme_color.light3; 58 colors.color_button_back = theApp.m_app_setting_data.theme_color.light2; 59 colors.color_stack_indicator = theApp.m_app_setting_data.theme_color.dark0; 60 colors.color_scrollbar_handle = theApp.m_app_setting_data.theme_color.light2; 61 if (draw_alpha) 62 { 63 colors.color_button_pressed = theApp.m_app_setting_data.theme_color.dark0; 64 colors.color_button_hover = theApp.m_app_setting_data.theme_color.light1_5; 65 } 66 else 67 { 68 colors.color_button_pressed = theApp.m_app_setting_data.theme_color.light1_5; 69 colors.color_button_hover = theApp.m_app_setting_data.theme_color.light2_5; 70 } 71 } 72 73 return colors; 74 } 75 IsMidiLyric()76bool CPlayerUIHelper::IsMidiLyric() 77 { 78 return CPlayer::GetInstance().IsMidi() && theApp.m_play_setting_data.midi_use_inner_lyric && !CPlayer::GetInstance().MidiNoLyric(); 79 } 80 IsDrawStatusBar()81bool CPlayerUIHelper::IsDrawStatusBar() 82 { 83 return theApp.m_app_setting_data.always_show_statusbar || CPlayer::GetInstance().m_loading || (theApp.IsMeidaLibUpdating() && theApp.m_media_update_para.num_added > 0) 84 /*|| CPlayer::GetInstance().GetABRepeatMode() != CPlayer::AM_NONE*/; 85 86 } 87 GetScrollTextPixel()88double CPlayerUIHelper::GetScrollTextPixel() 89 { 90 //界面刷新频率越高,即界面刷新时间间隔越小,则每次滚动的像素值就要越小 91 double pixel = static_cast<double>(theApp.m_app_setting_data.ui_refresh_interval) * 0.0125 + 0.2; 92 pixel = static_cast<double>(theApp.GetDPI()) * pixel / 96; 93 if (pixel < 0.1) 94 pixel = 0.1; 95 if (pixel > 0.5 && pixel < 1) 96 pixel = 1; 97 return pixel; 98 } 99