www.pudn.com > TreePropSheetEx_Demo.zip > ResizableDialog.h


#if !defined(AFX_RESIZABLEDIALOG_H__INCLUDED_) 
#define AFX_RESIZABLEDIALOG_H__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
// ResizableDialog.h : header file 
// 
///////////////////////////////////////////////////////////////////////////// 
// 
// Copyright (C) 2000-2002 by Paolo Messina 
// (http://www.geocities.com/ppescher - ppescher@yahoo.com) 
// 
// The contents of this file are subject to the Artistic License (the "License"). 
// You may not use this file except in compliance with the License.  
// You may obtain a copy of the License at: 
// http://www.opensource.org/licenses/artistic-license.html 
// 
// If you find this code useful, credits would be nice! 
// 
///////////////////////////////////////////////////////////////////////////// 
 
#include "ResizableLayout.h" 
#include "ResizableGrip.h" 
#include "ResizableMinMax.h" 
#include "ResizableState.h" 
 
///////////////////////////////////////////////////////////////////////////// 
// CResizableDialog window 
 
class CResizableDialog : public CDialog, public CResizableLayout, 
						 public CResizableGrip, public CResizableMinMax, 
						 public CResizableState 
{ 
 
// Construction 
public: 
	CResizableDialog(); 
	CResizableDialog(UINT nIDTemplate, CWnd* pParentWnd = NULL); 
	CResizableDialog(LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL); 
 
// Attributes 
private: 
	// support for temporarily hiding the grip 
	DWORD m_dwGripTempState; 
 
	// flags 
	BOOL m_bEnableSaveRestore; 
	BOOL m_bRectOnly; 
 
	// internal status 
	CString m_sSection;			// section name (identifies a parent window) 
 
// Operations 
public: 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CResizableDialog) 
	protected: 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
	virtual ~CResizableDialog(); 
 
// used internally 
private: 
	void PrivateConstruct(); 
 
// callable from derived classes 
protected: 
	// section to use in app's profile 
	void EnableSaveRestore(LPCTSTR pszSection, BOOL bRectOnly = FALSE); 
 
	virtual CWnd* GetResizableWnd() 
	{ 
		// make the layout know its parent window 
		return this; 
	}; 
 
// Generated message map functions 
protected: 
	//{{AFX_MSG(CResizableDialog) 
	afx_msg void OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI); 
	afx_msg void OnSize(UINT nType, int cx, int cy); 
	afx_msg void OnDestroy(); 
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 
	afx_msg BOOL OnEraseBkgnd(CDC* pDC); 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
}; 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_RESIZABLEDIALOG_H__INCLUDED_)