ChildFrm.cpp
上传用户:szled88
上传日期:2015-04-09
资源大小:43957k
文件大小:3k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. // ChildFrm.cpp : implementation of the CChildFrame class
  2. //
  3. // This file is a part of the XTREME TOOLKIT PRO MFC class library.
  4. // (c)1998-2008 Codejock Software, All Rights Reserved.
  5. //
  6. // THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
  7. // RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
  8. // CONSENT OF CODEJOCK SOFTWARE.
  9. //
  10. // THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
  11. // IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
  12. // YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
  13. // SINGLE COMPUTER.
  14. //
  15. // CONTACT INFORMATION:
  16. // support@codejock.com
  17. // http://www.codejock.com
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. #include "stdafx.h"
  21. #include "TabbedView.h"
  22. #include "ChildFrm.h"
  23. #include "TabbedViewView.h"
  24. #ifdef _DEBUG
  25. #define new DEBUG_NEW
  26. #undef THIS_FILE
  27. static char THIS_FILE[] = __FILE__;
  28. #endif
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CChildFrame
  31. IMPLEMENT_DYNCREATE(CChildFrame, CMDIChildWnd)
  32. BEGIN_MESSAGE_MAP(CChildFrame, CMDIChildWnd)
  33. //{{AFX_MSG_MAP(CChildFrame)
  34. // NOTE - the ClassWizard will add and remove mapping macros here.
  35. //    DO NOT EDIT what you see in these blocks of generated code !
  36. //}}AFX_MSG_MAP
  37. ON_UPDATE_COMMAND_UI(ID_POPUP_EDIT, OnUpdatePopupEdit)
  38. END_MESSAGE_MAP()
  39. /////////////////////////////////////////////////////////////////////////////
  40. // CChildFrame construction/destruction
  41. CChildFrame::CChildFrame()
  42. {
  43. // TODO: add member initialization code here
  44. }
  45. CChildFrame::~CChildFrame()
  46. {
  47. }
  48. BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
  49. {
  50. // TODO: Modify the Window class or styles here by modifying
  51. //  the CREATESTRUCT cs
  52. if( !CMDIChildWnd::PreCreateWindow(cs) )
  53. return FALSE;
  54. cs.dwExStyle &= ~WS_EX_CLIENTEDGE;
  55. return TRUE;
  56. }
  57. /////////////////////////////////////////////////////////////////////////////
  58. // CChildFrame diagnostics
  59. #ifdef _DEBUG
  60. void CChildFrame::AssertValid() const
  61. {
  62. CMDIChildWnd::AssertValid();
  63. }
  64. void CChildFrame::Dump(CDumpContext& dc) const
  65. {
  66. CMDIChildWnd::Dump(dc);
  67. }
  68. #endif //_DEBUG
  69. /////////////////////////////////////////////////////////////////////////////
  70. // CChildFrame message handlers
  71. void CChildFrame::OnUpdateFrameTitle(BOOL bAddToTitle)
  72. {
  73. // update our parent window first
  74. GetMDIFrame()->OnUpdateFrameTitle(bAddToTitle);
  75. if ((GetStyle() & FWS_ADDTOTITLE) == 0)
  76. return;     // leave child window alone!
  77. CDocument* pDocument = GetActiveDocument();
  78. if (bAddToTitle)
  79. {
  80. CString strWindowText;
  81. if (pDocument == NULL)
  82. strWindowText = m_strTitle;
  83. else
  84. strWindowText = pDocument->GetTitle();
  85. CTabbedViewView* pView = (CTabbedViewView*)GetDlgItem(AFX_IDW_PANE_FIRST);
  86. if (pView)
  87. {
  88. CString strCaption = pView->m_wndTabControl.GetSelectedItem()->GetCaption();
  89. strWindowText += _T(" - ") + strCaption;
  90. }
  91. // set title if changed, but don't remove completely
  92. AfxSetWindowText(m_hWnd, strWindowText);
  93. }
  94. }
  95. void CChildFrame::OnUpdatePopupEdit(CCmdUI* pCmdUI)
  96. {
  97. CXTPControl* pControl = CXTPControl::FromUI(pCmdUI);
  98. BOOL bVisible = DYNAMIC_DOWNCAST(CEditView, GetActiveView()) != 0;
  99. pCmdUI->Enable();
  100. pControl->SetVisible(bVisible);
  101. }