xref: /MusicPlayer2/MusicPlayer2/AddToPlaylistDlg.h (revision 6ff78c2af22a2540d4da0cd487a360b3fffc6e91)
1d3cd05cdSZhong Yang #pragma once
2d5347edbSZhong Yang #include "BaseDialog.h"
3*6ff78c2aSlrisora #include "CListBoxEnhanced.h"
4c1e723c3SZhong Yang #include "SearchEditCtrl.h"
5d3cd05cdSZhong Yang 
6d3cd05cdSZhong Yang 
7d3cd05cdSZhong Yang // CAddToPlaylistDlg 对话框
8d3cd05cdSZhong Yang 
9d5347edbSZhong Yang class CAddToPlaylistDlg : public CBaseDialog
10d3cd05cdSZhong Yang {
11d3cd05cdSZhong Yang 	DECLARE_DYNAMIC(CAddToPlaylistDlg)
12d3cd05cdSZhong Yang 
13d3cd05cdSZhong Yang public:
14d3cd05cdSZhong Yang 	CAddToPlaylistDlg(CWnd* pParent = nullptr);   // 标准构造函数
15d3cd05cdSZhong Yang 	virtual ~CAddToPlaylistDlg();
16d3cd05cdSZhong Yang 
17d3cd05cdSZhong Yang // 对话框数据
18d3cd05cdSZhong Yang #ifdef AFX_DESIGN_TIME
19d3cd05cdSZhong Yang 	enum { IDD = IDD_ADD_TO_PLAYLIST_DIALOG };
20d3cd05cdSZhong Yang #endif
21d3cd05cdSZhong Yang 
22d3cd05cdSZhong Yang     CString GetPlaylistSelected() const { return m_playlist_selected; }
23d3cd05cdSZhong Yang 
24d3cd05cdSZhong Yang protected:
25d3cd05cdSZhong Yang     CListBoxEnhanced m_playlist_list_ctrl;
26d3cd05cdSZhong Yang     CString m_playlist_selected;
27c1e723c3SZhong Yang     CSearchEditCtrl m_search_edit;
28c1e723c3SZhong Yang     bool m_searched{ false };           //是否处于搜索状态
29c1e723c3SZhong Yang     std::list<wstring> m_list;          //播放列表的列表
30c1e723c3SZhong Yang     std::list<wstring> m_search_result; //搜索结果
31d3cd05cdSZhong Yang 
32d3cd05cdSZhong Yang protected:
33d5347edbSZhong Yang     virtual CString GetDialogName() const override;
34*6ff78c2aSlrisora     virtual bool InitializeControls() override;
35*6ff78c2aSlrisora 
36c1e723c3SZhong Yang     void ShowList();
37c1e723c3SZhong Yang     void QuickSearch(const wstring& key_word);
38d5347edbSZhong Yang 
39d3cd05cdSZhong Yang 	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持
40d3cd05cdSZhong Yang 
41d3cd05cdSZhong Yang 	DECLARE_MESSAGE_MAP()
42d3cd05cdSZhong Yang public:
43d3cd05cdSZhong Yang     virtual BOOL OnInitDialog();
44d3cd05cdSZhong Yang     virtual void OnOK();
453fc72513SZhong Yang     afx_msg void OnNMDblclkList1(NMHDR *pNMHDR, LRESULT *pResult);
46c1e723c3SZhong Yang     afx_msg void OnEnChangeSearchEdit();
47c1e723c3SZhong Yang protected:
48c1e723c3SZhong Yang     afx_msg LRESULT OnSearchEditBtnClicked(WPARAM wParam, LPARAM lParam);
49d3cd05cdSZhong Yang };
50