You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
290 lines
11 KiB
C
290 lines
11 KiB
C
2 years ago
|
// XTPPopupPaintManager.h: interface for the CXTPPopupPaintManager class.
|
||
|
//
|
||
|
// This file is a part of the XTREME CONTROLS MFC class library.
|
||
|
// (c)1998-2012 Codejock Software, All Rights Reserved.
|
||
|
//
|
||
|
// THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
|
||
|
// RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
|
||
|
// CONSENT OF CODEJOCK SOFTWARE.
|
||
|
//
|
||
|
// THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
|
||
|
// IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
|
||
|
// YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
|
||
|
// SINGLE COMPUTER.
|
||
|
//
|
||
|
// CONTACT INFORMATION:
|
||
|
// support@codejock.com
|
||
|
// http://www.codejock.com
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
//{{AFX_CODEJOCK_PRIVATE
|
||
|
#if !defined(_XTPPOPUPPAINTMANAGER_H__)
|
||
|
#define _XTPPOPUPPAINTMANAGER_H__
|
||
|
//}}AFX_CODEJOCK_PRIVATE
|
||
|
|
||
|
#if _MSC_VER > 1000
|
||
|
#pragma once
|
||
|
#endif // _MSC_VER > 1000
|
||
|
|
||
|
class CXTPPopupItem;
|
||
|
class CXTPPopupItemText;
|
||
|
class CXTPPopupItemIcon;
|
||
|
class CXTPPopupControl;
|
||
|
|
||
|
//===========================================================================
|
||
|
// Summary:
|
||
|
// CXTPPopupPaintManager is a class used to perform specialized
|
||
|
// drawing tasks.
|
||
|
//===========================================================================
|
||
|
class _XTP_EXT_CLASS CXTPPopupPaintManager
|
||
|
{
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Constructs a CXTPPopupPaintManager object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
CXTPPopupPaintManager();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Destroys a CXTPPopupPaintManager object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual ~CXTPPopupPaintManager();
|
||
|
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function will draw the background of popup window.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// rcClient - Size of area to fill.
|
||
|
// pControl - Popup control to draw
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual void DrawBackground(CDC* pDC, CXTPPopupControl* pControl, CRect rcClient);
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function will draw the controlled item object
|
||
|
// of popup window.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// pItem - point to CXTPPopupItem object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void DrawItem(CDC* pDC, CXTPPopupItem* pItem);
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this method to draw the rectangle of a button.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// pItem - Pointer to a CXTPPopupItem.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void DrawButton(CDC* pDC, CXTPPopupItem* pItem);
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Sets font for text used in Popup control.
|
||
|
// Parameters:
|
||
|
// hFont - Font handle to use.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void SetFont(HFONT hFont);
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function to refresh draw metrics.
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual void RefreshMetrics();
|
||
|
|
||
|
public:
|
||
|
CXTPPaintManagerColorGradient m_clrBackground; //gradient background color
|
||
|
CXTPPaintManagerColorGradient m_clrFrame; //3d frame color
|
||
|
|
||
|
CFont m_fntText; //default font of text
|
||
|
COLORREF m_clrText; //default color of text
|
||
|
|
||
|
COLORREF m_clrButtonSelected; //color of selected button
|
||
|
COLORREF m_clrButtonPressed; //color of pressed button
|
||
|
CXTPPaintManagerColorGradient m_clrButtonSelectedBorder; //3d border color of selected button
|
||
|
CXTPPaintManagerColorGradient m_clrButtonPressedBorder; //3d border color of pressed button
|
||
|
};
|
||
|
|
||
|
//===========================================================================
|
||
|
// Summary:
|
||
|
// CXTPPopupThemeOffice2000 is a class used to perform Office2000
|
||
|
// drawing tasks.
|
||
|
//===========================================================================
|
||
|
class _XTP_EXT_CLASS CXTPPopupThemeOffice2000 : public CXTPPopupPaintManager
|
||
|
{
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Constructs a CXTPPopupThemeOffice2000 object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
CXTPPopupThemeOffice2000();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Destroys a CXTPPopupThemeOffice2000 object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual ~CXTPPopupThemeOffice2000();
|
||
|
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function to refresh draw metrics.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void RefreshMetrics();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function will draw the background of popup window.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// rcClient - Size of area to fill.
|
||
|
// pControl - Popup control to draw
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual void DrawBackground(CDC* pDC, CXTPPopupControl* pControl, CRect rcClient);
|
||
|
};
|
||
|
|
||
|
//===========================================================================
|
||
|
// Summary:
|
||
|
// CXTPPopupThemeOfficeXP is a class used to perform OfficeXP
|
||
|
// drawing tasks.
|
||
|
//===========================================================================
|
||
|
class _XTP_EXT_CLASS CXTPPopupThemeOfficeXP : public CXTPPopupThemeOffice2000
|
||
|
{
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Constructs a CXTPPopupThemeOfficeXP object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
CXTPPopupThemeOfficeXP();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Destroys a CXTPPopupThemeOfficeXP object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual ~CXTPPopupThemeOfficeXP();
|
||
|
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function to refresh draw metrics.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void RefreshMetrics();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function will draw the background of popup window.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// rcClient - Size of area to fill.
|
||
|
// pControl - Popup control to draw
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual void DrawBackground(CDC* pDC, CXTPPopupControl* pControl, CRect rcClient);
|
||
|
};
|
||
|
|
||
|
//===========================================================================
|
||
|
// Summary:
|
||
|
// CXTPPopupThemeOffice2003 is a class used to perform Office2003
|
||
|
// drawing tasks.
|
||
|
//===========================================================================
|
||
|
class _XTP_EXT_CLASS CXTPPopupThemeOffice2003 : public CXTPPopupThemeOfficeXP
|
||
|
{
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Constructs a CXTPPopupThemeOffice2003 object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
CXTPPopupThemeOffice2003();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Destroys a CXTPPopupThemeOffice2003 object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual ~CXTPPopupThemeOffice2003();
|
||
|
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function to refresh draw metrics.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void RefreshMetrics();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function will draw the background of popup window.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// rcClient - Size of area to fill.
|
||
|
// pControl - Popup control to draw
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual void DrawBackground(CDC* pDC, CXTPPopupControl* pControl, CRect rcClient);
|
||
|
|
||
|
public:
|
||
|
CXTPPaintManagerColorGradient m_clrGripper; // Color of the popup gripper for the xtpPopupThemeOffice2003 paint theme.
|
||
|
};
|
||
|
|
||
|
//===========================================================================
|
||
|
// Summary:
|
||
|
// CXTPPopupThemeMSN is a class used to perform MSN Messenger
|
||
|
// drawing tasks.
|
||
|
//===========================================================================
|
||
|
class _XTP_EXT_CLASS CXTPPopupThemeMSN : public CXTPPopupThemeOffice2000
|
||
|
{
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Constructs a CXTPPopupThemeMSN object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
CXTPPopupThemeMSN();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Destroys a CXTPPopupThemeMSN object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual ~CXTPPopupThemeMSN();
|
||
|
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function to refresh draw metrics.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void RefreshMetrics();
|
||
|
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function will draw the background of popup window.
|
||
|
// Parameters:
|
||
|
// pDC - Points to the device context.
|
||
|
// rcClient - Size of area to fill.
|
||
|
// pControl - Popup control to draw
|
||
|
//-----------------------------------------------------------------------
|
||
|
virtual void DrawBackground(CDC* pDC, CXTPPopupControl* pControl, CRect rcClient);
|
||
|
};
|
||
|
|
||
|
//===========================================================================
|
||
|
// Summary:
|
||
|
// v is a class used to perform Office2007
|
||
|
// drawing tasks.
|
||
|
//===========================================================================
|
||
|
class _XTP_EXT_CLASS CXTPPopupThemeResource : public CXTPPopupThemeOffice2003
|
||
|
{
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Constructs a CXTPPopupThemeOffice2003 object.
|
||
|
//-----------------------------------------------------------------------
|
||
|
CXTPPopupThemeResource();
|
||
|
|
||
|
public:
|
||
|
//-----------------------------------------------------------------------
|
||
|
// Summary:
|
||
|
// Call this member function to refresh draw metrics.
|
||
|
//-----------------------------------------------------------------------
|
||
|
void RefreshMetrics();
|
||
|
};
|
||
|
|
||
|
#endif // !defined(_XTPPOPUPPAINTMANAGER_H__)
|