OSDN Git Service

IEコンポーネント使い始めまで
[nlite/nlite.git] / nlite / nlite_addTomylistWindow.cpp
1 #include "stdafx.h"
2 #include "nlite_include.h"
3
4
5 namespace nlite{
6
7         static const LPCTSTR ADDMYLIST_URL = TEXT("http://www.nicovideo.jp/mylist_add/video/");
8
9         CAddToMyListWindow::CAddToMyListWindow(CNicoVideoAuth &in_auth):refAuth(in_auth){}
10
11
12         BOOL CAddToMyListWindow::PreTranslateMessage(MSG* pMsg){
13                 if((pMsg->message < WM_KEYFIRST || pMsg->message > WM_KEYLAST) &&
14                         (pMsg->message < WM_MOUSEFIRST || pMsg->message > WM_MOUSELAST))
15                         return FALSE;
16
17                 return (BOOL)SendMessage(WM_FORWARDMSG, 0, (LPARAM)pMsg);
18         }
19
20
21         INT_PTR CAddToMyListWindow::OnCreate(LPCREATESTRUCT lpCreateStruct){
22                 LRESULT lRet = DefWindowProc();
23
24                 HRESULT hRet = QueryControl(&m_pWB2);
25                 if(SUCCEEDED(hRet)){
26                         DispEventAdvise(m_pWB2, &DIID_DWebBrowserEvents2);
27                 }
28
29
30
31                 return lRet;
32         }
33
34
35         VOID CAddToMyListWindow::OnDestroy(){
36                 if(m_pWB2){
37                         DispEventUnadvise(m_pWB2, &DIID_DWebBrowserEvents2);
38                 }
39
40                 SetMsgHandled(false);
41         }
42
43         VOID WINAPI CAddToMyListWindow::OnBeforeNavigate2(IDispatch** dispatch, VARIANT* url, VARIANT* flags,VARIANT* frameName, VARIANT* postData, VARIANT* headers, VARIANT_BOOL* cancel){
44
45                 dumpln(TEXT("event:Set"));
46                 return;
47
48         }
49         
50         VOID CAddToMyListWindow::Navigate(LPCTSTR lpszUrl){
51                 if(m_pWB2){
52                         CComVariant v;
53                         CNLiteString userSession(refAuth.GetUserSession());
54                         CComVariant header(userSession);
55                         
56                         
57                         //header.SetByRef((BSTR)userSession);
58                         
59                         m_pWB2->Navigate(CNLiteString(lpszUrl), &v, &v, &v, &v);
60
61                         
62                         
63                 }
64         }
65         
66         CAddToMyListDialog::CAddToMyListDialog(CNicoVideoAuth &in_auth):refAuth(in_auth),addToMyListWindow(in_auth){
67
68
69         }
70         VOID CAddToMyListDialog::SetLiveNo(LPCTSTR lvNo){
71                 liveNo = ADDMYLIST_URL;
72                 liveNo += lvNo;
73         }
74
75         VOID CAddToMyListDialog::OnEndDialog(){
76
77                 addToMyListWindow.DestroyWindow();
78         }
79
80         BOOL CAddToMyListDialog::OnInitDialog(CWindow wndFocus, LPARAM lInitParam){
81                 
82
83                 
84                 
85                 
86                 // \83X\83N\83\8a\81[\83\93\82Ì\92\86\89\9b\82É\94z\92u
87                 CenterWindow();
88
89                 /*
90                 // \91å\82«\82¢\83A\83C\83R\83\93\90Ý\92è
91                 HICON hIcon = AtlLoadIconImage(IDD_ADDMYLISTDIALOG, LR_DEFAULTCOLOR,
92                         ::GetSystemMetrics(SM_CXICON), ::GetSystemMetrics(SM_CYICON));
93                 SetIcon(hIcon, TRUE);
94
95                 // \8f¬\82³\82¢\83A\83C\83R\83\93\90Ý\92è
96                 HICON hIconSmall = AtlLoadIconImage(IDD_ADDMYLISTDIALOG, LR_DEFAULTCOLOR,
97                         ::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON));
98                 SetIcon(hIconSmall, FALSE);
99                 */
100                 RECT selfRc;
101                 this->GetClientRect(&selfRc);
102
103                 addToMyListWindow.Create(m_hWnd, selfRc,_T("Shell.Explorer.2"),WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN, WS_EX_CLIENTEDGE, IDC_IE);
104                 
105
106
107
108
109
110                 addToMyListWindow.Navigate(liveNo);
111                 
112                 return TRUE;
113         }
114
115         VOID CAddToMyListDialog::OnOK(UINT uNotifyCode, int nID, CWindow wndCtl){
116                 OnEndDialog();
117                 EndDialog(nID);
118         }
119
120         VOID CAddToMyListDialog::OnCancel(UINT uNotifyCode, int nID, CWindow wndCtl){
121                 OnEndDialog();
122                 EndDialog(nID);
123         }
124
125
126 }