15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef REMOTING_HOST_VERIFY_CONFIG_WINDOW_WIN_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define REMOTING_HOST_VERIFY_CONFIG_WINDOW_WIN_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// altbase.h must be included before atlapp.h 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <atlbase.h> 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <atlapp.h> 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <atlcrack.h> 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <atlwin.h> 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <atluser.h> 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <string> 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/callback.h" 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "remoting/host/win/core_resource.h" 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace remoting { 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class VerifyConfigWindowWin : public ATL::CDialogImpl<VerifyConfigWindowWin> { 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public: 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) enum { IDD = IDD_VERIFY_CONFIG_DIALOG }; 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) BEGIN_MSG_MAP_EX(VerifyConfigWindowWin) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MSG_WM_INITDIALOG(OnInitDialog) 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MSG_WM_CLOSE(OnClose) 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) COMMAND_ID_HANDLER_EX(IDOK, OnOk) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) COMMAND_ID_HANDLER_EX(IDCANCEL, OnCancel) 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) END_MSG_MAP() 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) VerifyConfigWindowWin(const std::string& email, 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const std::string& host_id, 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const std::string& host_secret_hash); 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void OnCancel(UINT code, int id, HWND control); 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void OnClose(); 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) LRESULT OnInitDialog(HWND wparam, LPARAM lparam); 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void OnOk(UINT code, int id, HWND control); 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) private: 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Centers the dialog window against the owner window. 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void CenterWindow(); 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool VerifyHostSecretHash(); 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) CIcon icon_; 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const std::string email_; 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const std::string host_id_; 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const std::string host_secret_hash_; 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(VerifyConfigWindowWin); 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace remoting 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // REMOTING_HOST_VERIFY_CONFIG_WINDOW_WIN_H_ 58