/3rd_party/wtl/Samples/TabBrowser/OpenDlg.h

https://code.google.com/p/softart/ · C Header · 66 lines · 51 code · 14 blank · 1 comment · 2 complexity · 34e7a2075bc190056a57cb6fc425137f MD5 · raw file

  1. // OpenDlg.h - COpenDlg class
  2. #pragma once
  3. class COpenDlg : public CDialogImpl<COpenDlg>
  4. {
  5. public:
  6. enum { IDD = IDD_OPEN };
  7. CString m_strURL;
  8. bool m_bNewTab;
  9. COpenDlg(LPCTSTR lpstrURL) : m_bNewTab(false)
  10. {
  11. m_strURL = lpstrURL;
  12. }
  13. BEGIN_MSG_MAP(COpenDlg)
  14. MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
  15. COMMAND_ID_HANDLER(IDOK, OnOK)
  16. COMMAND_ID_HANDLER(IDCANCEL, OnCancel)
  17. END_MSG_MAP()
  18. LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
  19. {
  20. if(m_strURL.IsEmpty())
  21. {
  22. m_bNewTab = true;
  23. CButton btnCheck = GetDlgItem(IDC_NEW_TAB);
  24. btnCheck.SetCheck(1);
  25. btnCheck.EnableWindow(FALSE);
  26. }
  27. else
  28. {
  29. CEdit edit = GetDlgItem(IDC_EDIT_URL);
  30. edit.SetWindowText(m_strURL);
  31. CButton btnCheck = GetDlgItem(IDC_NEW_TAB);
  32. btnCheck.SetCheck(m_bNewTab ? 1 : 0);
  33. }
  34. return TRUE;
  35. }
  36. LRESULT OnOK(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
  37. {
  38. CEdit edit = GetDlgItem(IDC_EDIT_URL);
  39. int nLen = edit.GetWindowTextLength();
  40. edit.GetWindowText(m_strURL.GetBuffer(nLen), nLen + 1);
  41. m_strURL.ReleaseBuffer();
  42. CButton btnCheck = GetDlgItem(IDC_NEW_TAB);
  43. m_bNewTab = (btnCheck.GetCheck() != 0);
  44. EndDialog(wID);
  45. return 0;
  46. }
  47. LRESULT OnCancel(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
  48. {
  49. EndDialog(wID);
  50. return 0;
  51. }
  52. };