/**
* @file XTPResizeDialog.h
*
* @copyright
* (c) 1998-2025 Codejock Software, All Rights Reserved.
*
* This source file is the property of Codejock Software and must not be
* redistributed by any means without the explicit written permission of
* Codejock Software.
*
* The use of this source code is governed by the terms and conditions specified
* in the Toolkit Pro license agreement. Codejock Software grants you, as a
* single software developer, the limited right to use this software on one
* computer only.
*
* Contact Information:
* support@codejock.com
* http://www.codejock.com
*
*/
/** @cond */
#if !defined(__XTPRESIZEDIALOG_H__)
# define __XTPRESIZEDIALOG_H__
/** @endcond */
# if _MSC_VER > 1000
# pragma once
# endif // _MSC_VER > 1000
# include "Common/Base/Diagnostic/XTPDisableNoisyWarnings.h"
/**
* @brief
* CXTPResizeDialog is a multiple inheritance class derived from CDialog
* and CXTPResize. CXTPResizeDialog is used to create a resizable CDialog
* type object that allows its dialog items to be resized or moved dynamically.
*/
class _XTP_EXT_CLASS CXTPResizeDialog
: public CDialog
, public CXTPResize
{
/** @cond */
DECLARE_DYNCREATE(CXTPResizeDialog)
/** @endcond */
public:
/**
* @brief
* Constructs a CXTPResizeDialog object.
* @details
* Styles to be added or removed can be combined by using the bitwise
* OR (|) operator. It can be one or more of the following:
* xtpResizeNoSizeIcon: Do not add size icon.
* xtpResizeNoHorizontal: No horizontal resizing.
* xtpResizeNoVertical: No vertical resizing.
* xtpResizeNoMinsize: Do not require a minimum size.
* xtpResizeNoClipChildren: Do not set clip children style.
* xtpResizeNoTransparentGroup: Do not set transparent style
* for group boxes.
*/
CXTPResizeDialog();
/**
* @brief
* Constructs a CXTPResizeDialog object.
* @param nID Contains the ID number of a dialog box template resource.
* @param pParent Pointer to the parent or owner window object of type
* CWnd, which the dialog object belongs to. If it is NULL,
* then the dialog object's parent window is set to the main
* application window.
* @param nFlags Flags that are to be passed to CXTPResize that specify the
* attributes of the resizing property page. They can be one
* or more of the values listed in the Remarks section.
* @details
* Styles to be added or removed can be combined by using the bitwise
* OR (|) operator. It can be one or more of the following:
* xtpResizeNoSizeIcon: Do not add size icon.
* xtpResizeNoHorizontal: No horizontal resizing.
* xtpResizeNoVertical: No vertical resizing.
* xtpResizeNoMinsize: Do not require a minimum size.
* xtpResizeNoClipChildren: Do not set clip children style.
* xtpResizeNoTransparentGroup: Do not set transparent style
* for group boxes.
*/
CXTPResizeDialog(const UINT nID, CWnd* pParent = 0, const UINT nFlags = 0);
/**
* @brief
* Constructs a CXTPResizeDialog object.
* @param lpszTemplateName Contains a NULL-terminated string that is the name of a
* dialog-box template resource.
* @param pParent Pointer to the parent or owner window object of type
* CWnd, which the dialog object belongs to. If it is NULL,
* then the dialog object's parent window is set to the main
* application window.
* @param nFlags Flags that are to be passed to CXTPResize that specify the
* attributes of the resizing property page. They can be one
* or more of the values listed in the Remarks section.
* @details
* Styles to be added or removed can be combined by using the bitwise
* OR (|) operator. It can be one or more of the following:
* xtpResizeNoSizeIcon: Do not add size icon.
* xtpResizeNoHorizontal: No horizontal resizing.
* xtpResizeNoVertical: No vertical resizing.
* xtpResizeNoMinsize: Do not require a minimum size.
* xtpResizeNoClipChildren: Do not set clip children style.
* xtpResizeNoTransparentGroup: Do not set transparent style
* for group boxes.
*/
CXTPResizeDialog(LPCTSTR lpszTemplateName, CWnd* pParent = 0, const UINT nFlags = 0);
protected:
/** @cond */
DECLARE_MESSAGE_MAP()
//{{AFX_MSG(CXTPResizeDialog)
virtual BOOL OnInitDialog();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnGetMinMaxInfo(MINMAXINFO* lpMMI);
afx_msg void OnDestroy();
//}}AFX_MSG
/** @endcond */
protected:
UINT m_nDialogID; /**< Contains the ID number of a dialog box template resource. */
};
# if (_MSC_VER > 1200)
/**
* @brief
* CXTPResizeDHtmlDialog is a multiple inheritance class derived from CDHtmlDialog
* and CXTPResize. CXTPResizeDHtmlDialog is used to create a resizable CDHtmlDialog
* type object that allows its dialog items to be resized or moved dynamically.
*/
class _XTP_EXT_CLASS CXTPResizeDHtmlDialog
: public CDHtmlDialog
, public CXTPResize
{
DECLARE_DYNCREATE(CXTPResizeDHtmlDialog)
public:
/**
* @brief
* Constructs a CXTPResizeDialog object.
*/
CXTPResizeDHtmlDialog();
/**
* @brief
* Constructs a CXTPResizeDialog object.
* @param nID Contains the ID number of a dialog box template resource.
* @param nHtmlResID Contains the ID number of an HTML resource.
* @param pParent Pointer to the parent or owner window object of type
* CWnd, which the dialog object belongs to. If it is NULL,
* then the dialog object's parent window is set to the main
* application window.
* @param nFlags Flags that are to be passed to CXTPResize that specify the
* attributes of the resizing property page. They can be one
* or more of the values listed in the Remarks section.
* @details
* Styles to be added or removed can be combined by using the bitwise
* OR (|) operator. It can be one or more of the following:
* xtpResizeNoSizeIcon: Do not add size icon.
* xtpResizeNoHorizontal: No horizontal resizing.
* xtpResizeNoVertical: No vertical resizing.
* xtpResizeNoMinsize: Do not require a minimum size.
* xtpResizeNoClipChildren: Do not set clip children style.
* xtpResizeNoTransparentGroup: Do not set transparent style
* for group boxes.
*/
CXTPResizeDHtmlDialog(const UINT nID, UINT nHtmlResID = 0, CWnd* pParent = 0,
const UINT nFlags = 0);
/**
* @brief
* Constructs a CXTPResizeDialog object.
* @param lpszTemplateName Contains a NULL-terminated string that is the name of a
* dialog-box template resource.
* @param szHtmlResID The NULL-terminated string that is the name of an HTML resource.
* @param pParent Pointer to the parent or owner window object of type
* CWnd, which the dialog object belongs to. If it is NULL,
* then the dialog object's parent window is set to the main
* application window.
* @param nFlags Flags that are to be passed to CXTPResize that specify the
* attributes of the resizing property page. They can be one
* or more of the values listed in the Remarks section.
* @details
* Styles to be added or removed can be combined by using the bitwise
* OR (|) operator. It can be one or more of the following:
* xtpResizeNoSizeIcon: Do not add size icon.
* xtpResizeNoHorizontal: No horizontal resizing.
* xtpResizeNoVertical: No vertical resizing.
* xtpResizeNoMinsize: Do not require a minimum size.
* xtpResizeNoClipChildren: Do not set clip children style.
* xtpResizeNoTransparentGroup: Do not set transparent style
* for group boxes.
*/
CXTPResizeDHtmlDialog(LPCTSTR lpszTemplateName, LPCTSTR szHtmlResID, CWnd* pParent = 0,
const UINT nFlags = 0);
protected:
/** @cond */
DECLARE_MESSAGE_MAP()
//{{AFX_MSG(CXTPResizeDHtmlDialog)
virtual BOOL OnInitDialog();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnGetMinMaxInfo(MINMAXINFO* lpMMI);
afx_msg void OnDestroy();
//}}AFX_MSG
/** @endcond */
protected:
UINT m_nDialogID; /**< Contains the ID number of a dialog box template resource */
};
# endif
# include "Common/Base/Diagnostic/XTPEnableNoisyWarnings.h"
/** @cond */
#endif // !defined(__XTPRESIZEDIALOG_H__)
/** @endcond */