xref: /MusicPlayer2/MusicPlayer2/SupportedFormatDlg.cpp (revision ed4a559c3ee49bf03b919e20bf10573dada4b52f)
1 // SupportedFormatDlg.cpp: 实现文件
2 //
3 
4 #include "stdafx.h"
5 #include "MusicPlayer2.h"
6 #include "SupportedFormatDlg.h"
7 #include "afxdialogex.h"
8 #include "AudioCommon.h"
9 
10 
11 // CSupportedFormatDlg 对话框
12 
13 IMPLEMENT_DYNAMIC(CSupportedFormatDlg, CBaseDialog)
14 
15 CSupportedFormatDlg::CSupportedFormatDlg(CWnd* pParent /*=nullptr*/)
16 	: CBaseDialog(IDD_SUPPORT_FORMAT_DIALOG, pParent)
17 {
18 
19 }
20 
21 CSupportedFormatDlg::~CSupportedFormatDlg()
22 {
23 }
24 
25 CString CSupportedFormatDlg::GetDialogName() const
26 {
27     return _T("SupportedFormatDlg");
28 }
29 
30 void CSupportedFormatDlg::DoDataExchange(CDataExchange* pDX)
31 {
32 	CBaseDialog::DoDataExchange(pDX);
33 	DDX_Control(pDX, IDC_FORMAT_LIST, m_format_list);
34 }
35 
36 
37 BEGIN_MESSAGE_MAP(CSupportedFormatDlg, CBaseDialog)
38 	ON_WM_GETMINMAXINFO()
39 END_MESSAGE_MAP()
40 
41 
42 // CSupportedFormatDlg 消息处理程序
43 
44 
45 BOOL CSupportedFormatDlg::OnInitDialog()
46 {
47 	CBaseDialog::OnInitDialog();
48 
49 	// TODO:  在此添加额外的初始化
50 
51 	SetIcon(AfxGetApp()->LoadIcon(IDR_MAINFRAME), FALSE);		// 设置小图标
52 
53 	//初始化列表
54 	//m_format_list.SetColor(theApp.m_app_setting_data.theme_color);
55 	CRect rect;
56 	m_format_list.GetWindowRect(rect);
57 	int width0, width1, width2;
58 	width0 = theApp.DPI(100);
59 	width1 = rect.Width() / 3;
60 	width2 = rect.Width() - width1 - width0 - theApp.DPI(20) - 1;
61 
62     m_format_list.SetExtendedStyle(m_format_list.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_LABELTIP);
63 	m_format_list.InsertColumn(0, CCommon::LoadText(IDS_PLUGIN_FILE_NAME), LVCFMT_LEFT, width0);		//插入第1列
64 	m_format_list.InsertColumn(1, CCommon::LoadText(IDS_FORMAT_SUPPORTED), LVCFMT_LEFT, width1);		//插入第2列
65 	m_format_list.InsertColumn(2, CCommon::LoadText(IDS_FILE_EXTENSION), LVCFMT_LEFT, width2);		//插入第2列
66 
67 	int index = 0;
68 	for (const auto support_format : CAudioCommon::m_surpported_format)
69 	{
70 		if (!support_format.file_name.empty())
71 		{
72 			m_format_list.InsertItem(index, support_format.file_name.c_str());
73 			m_format_list.SetItemText(index, 1, support_format.description.c_str());
74 			m_format_list.SetItemText(index, 2, support_format.extensions_list.c_str());
75 
76 			index++;
77 		}
78 	}
79 
80 	return TRUE;  // return TRUE unless you set the focus to a control
81 				  // 异常: OCX 属性页应返回 FALSE
82 }
83