/** * @file XTPMarkupSystemColorsStaticExtension.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(__XTPMARKUPSYSTEMCOLORSSTATICEXTENSION_H__) # define __XTPMARKUPSYSTEMCOLORSSTATICEXTENSION_H__ /** @endcond */ # if _MSC_VER > 1000 # pragma once # endif // _MSC_VER > 1000 # include "Common/Base/Diagnostic/XTPDisableNoisyWarnings.h" class CXTPMarkupColor; class CXTPMarkupColorKey; class CXTPMarkupBrush; class CXTPMarkupBrushKey; /** * @brief * A property static extension object that represents a system color. */ class _XTP_EXT_CLASS CXTPMarkupSystemColorStaticExtension : public CXTPMarkupStaticExtensionProperty { public: /** * @brief * Constructs a system color extension object. * @param lpzName System color name. Has to satisfy extension name rules. * @param nColorIndex System color index. Refer to the GetSysColor Win32 * API function documentation for possible values. * @see * CXTPMarkupStaticExtension::Parse */ CXTPMarkupSystemColorStaticExtension(LPCWSTR lpzName, int nColorIndex); /** * @brief * Creates a system color markup object. * @param nColorIndex System color index. Refer to the GetSysColor Win32 * API function documentation for possible values. * @return * A pointer to a CXTPMarkupColor object. A caller is responsible * for releasing an object. */ static CXTPMarkupColor* AFX_CDECL GetSystemColor(int nColorIndex); }; /** * @brief * A property static extension object that represents a system color key. */ class _XTP_EXT_CLASS CXTPMarkupSystemColorKeyStaticExtension : public CXTPMarkupStaticExtensionProperty { public: /** * @brief * Constructs a system color key extension object. * @param lpzName System color name. Has to satisfy extension name rules. * @param nColorIndex System color index. Refer to the GetSysColor Win32 * API function documentation for possible values. * @see * CXTPMarkupStaticExtension::Parse */ CXTPMarkupSystemColorKeyStaticExtension(LPCWSTR lpzName, int nColorIndex); }; /** * @brief * A property static extension object that represents a system brush. */ class _XTP_EXT_CLASS CXTPMarkupSystemBrushStaticExtension : public CXTPMarkupStaticExtensionProperty { public: /** * @brief * Constructs a system brush extension object. * @param lpzName System brush name. Has to satisfy extension name rules. * @param nColorIndex System color index. Refer to the GetSysColor Win32 * API function documentation for possible values. * @see * CXTPMarkupStaticExtension::Parse */ CXTPMarkupSystemBrushStaticExtension(LPCWSTR lpzName, int nColorIndex); /** * @brief * Creates a system brush markup object. * @param nColorIndex System color index. Refer to the GetSysColor Win32 * API function documentation for possible values. * @return * A pointer to a CXTPMarkupBrush object. A caller is responsible for * releasing an object. */ static CXTPMarkupBrush* AFX_CDECL GetSystemBrush(int nColorIndex); }; /** * @brief * A property static extension object that represents a system brush key. */ class _XTP_EXT_CLASS CXTPMarkupSystemBrushKeyStaticExtension : public CXTPMarkupStaticExtensionProperty { public: /** * @brief * Constructs a system brush key extension object. * @param lpzName System brush name. Has to satisfy extension name rules. * @param nColorIndex System color index. Refer to the GetSysColor Win32 * API function documentation for possible values. * @see * CXTPMarkupStaticExtension::Parse */ CXTPMarkupSystemBrushKeyStaticExtension(LPCWSTR lpzName, int nColorIndex); }; /** * @brief * A composite static extension object that represents system colors. */ class _XTP_EXT_CLASS CXTPMarkupSystemColorsStaticExtension : public CXTPMarkupStaticExtension { public: /** * @brief * Constructs a CXTPMarkupSystemColorsStaticExtension object. */ CXTPMarkupSystemColorsStaticExtension(); }; # include "Common/Base/Diagnostic/XTPEnableNoisyWarnings.h" /** @cond */ #endif // !defined(__XTPMARKUPSYSTEMCOLORSSTATICEXTENSION_H__) /** @endcond */