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

对话框与窗口

开发平台:

Visual C++

  1. // XTResizeDialog.cpp: implementation of the CXTResizeDialog class.
  2. //
  3. // This file is a part of the XTREME CONTROLS 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 "Common/XTPWinThemeWrapper.h"
  22. #include "XTResizeRect.h"
  23. #include "XTResizePoint.h"
  24. #include "XTResize.h"
  25. #include "XTResizeDialog.h"
  26. #ifdef _DEBUG
  27. #undef THIS_FILE
  28. static char THIS_FILE[] = __FILE__;
  29. #define new DEBUG_NEW
  30. #endif
  31. #pragma warning(disable: 4355) // 'this' : used in base member initializer list
  32. /////////////////////////////////////////////////////////////////////////////
  33. // CXTResizeDialog
  34. IMPLEMENT_DYNCREATE(CXTResizeDialog, CDialog)
  35. BEGIN_MESSAGE_MAP(CXTResizeDialog, CDialog)
  36. //{{AFX_MSG_MAP(CXTResizeDialog)
  37. ON_WM_SIZE()
  38. ON_WM_GETMINMAXINFO()
  39. ON_WM_DESTROY()
  40. //}}AFX_MSG_MAP
  41. END_MESSAGE_MAP()
  42. /////////////////////////////////////////////////////////////////////////////
  43. // CXTResizeDialog construction/destruction
  44. CXTResizeDialog::CXTResizeDialog()
  45. : CXTResize(this, 0)
  46. {
  47. m_nDialogID = 0;
  48. }
  49. CXTResizeDialog::CXTResizeDialog(const UINT nID, CWnd* pParent, const UINT nFlags) :
  50. CDialog(nID, pParent),
  51. CXTResize(this, nFlags)
  52. {
  53. m_nDialogID = nID;
  54. }
  55. CXTResizeDialog::CXTResizeDialog(LPCTSTR lpszTemplateName, CWnd* pParent, const UINT nFlags) :
  56. CDialog(lpszTemplateName, pParent),
  57. CXTResize(this, nFlags)
  58. {
  59. m_nDialogID = 0;
  60. }
  61. BOOL CXTResizeDialog::OnInitDialog()
  62. {
  63. // Only show the resize grip if the frame is a resizing frame
  64. DWORD dwStyle = ::GetWindowLong(m_hWnd, GWL_STYLE);
  65. if ((dwStyle & WS_THICKFRAME) == 0)
  66. {
  67. SetFlag(xtResizeNoSizeIcon);
  68. }
  69. CDialog::OnInitDialog();
  70. CXTResize::Init();
  71. return TRUE;
  72. }
  73. void CXTResizeDialog::OnGetMinMaxInfo(MINMAXINFO* pMMI)
  74. {
  75. CXTResize::GetMinMaxInfo(pMMI);
  76. }
  77. void CXTResizeDialog::OnSize(UINT nType, int cx, int cy)
  78. {
  79. CDialog::OnSize(nType, cx, cy);
  80. CXTResize::Size();
  81. }
  82. void CXTResizeDialog::OnDestroy()
  83. {
  84. // Save window placement if AutoLoadPlacement was used.
  85. if (!m_strSection.IsEmpty())
  86. {
  87. SavePlacement(m_strSection);
  88. }
  89. CDialog::OnDestroy();
  90. }