⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gdiplus_brush.cpp

📁 Windows Mobile平台上使用GDI+。GDI+功能很强大
💻 CPP
📖 第 1 页 / 共 5 页
字号:
#include "stdafx.h"
#include "GdiplusShunt.h"

//----------------------------------------------------------------------------
// Brush APIs
//----------------------------------------------------------------------------

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCloneBrushPtr)(GpBrush *brush, GpBrush **cloneBrush));
DEFINE_MEMBER(GdipCloneBrush);

GpStatus WINGDIPAPI
GdipCloneBrush(GpBrush *brush, GpBrush **cloneBrush)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCloneBrush == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCloneBrush);
        }
        if ( g_GdipCloneBrush != NULL )
        {
            status = (*g_GdipCloneBrush)(brush, cloneBrush);
        }
    }
    return status;
}


DEFINE_POINTER( GpStatus (WINGDIPAPI *GdipDeleteBrushPtr)(GpBrush *brush));
DEFINE_MEMBER(GdipDeleteBrush);

GpStatus WINGDIPAPI
GdipDeleteBrush(GpBrush *brush)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipDeleteBrush == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipDeleteBrush);
        }
        if ( g_GdipDeleteBrush != NULL )
        {
            status = (*g_GdipDeleteBrush)(brush);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipGetBrushTypePtr)(GpBrush *brush, GpBrushType *type));
DEFINE_MEMBER(GdipGetBrushType);

GpStatus WINGDIPAPI
GdipGetBrushType(GpBrush *brush, GpBrushType *type)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipGetBrushType == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipGetBrushType);
        }
        if ( g_GdipGetBrushType != NULL )
        {
            status = (*g_GdipGetBrushType)(brush, type);
        }
    }
    return status;
}

//----------------------------------------------------------------------------
// HatchBrush APIs
//----------------------------------------------------------------------------

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCreateHatchBrushPtr)(GpHatchStyle hatchstyle, ARGB forecol,
                              ARGB backcol, GpHatch **brush));
DEFINE_MEMBER(GdipCreateHatchBrush);

GpStatus WINGDIPAPI
GdipCreateHatchBrush(GpHatchStyle hatchstyle, ARGB forecol,
                              ARGB backcol, GpHatch **brush)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCreateHatchBrush == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCreateHatchBrush);
        }
        if ( g_GdipCreateHatchBrush != NULL )
        {
            status = (*g_GdipCreateHatchBrush)(hatchstyle, forecol, backcol, brush);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipGetHatchStylePtr)(GpHatch *brush, GpHatchStyle *hatchstyle));
DEFINE_MEMBER(GdipGetHatchStyle);

GpStatus WINGDIPAPI
GdipGetHatchStyle(GpHatch *brush, GpHatchStyle *hatchstyle)

{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipGetHatchStyle == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipGetHatchStyle);
        }
        if ( g_GdipGetHatchStyle != NULL )
        {
            status = (*g_GdipGetHatchStyle)(brush, hatchstyle);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipGetHatchForegroundColorPtr)(GpHatch *brush, ARGB* forecol));
DEFINE_MEMBER(GdipGetHatchForegroundColor);

GpStatus WINGDIPAPI
GdipGetHatchForegroundColor(GpHatch *brush, ARGB* forecol)

{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipGetHatchForegroundColor == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipGetHatchForegroundColor);
        }
        if ( g_GdipGetHatchForegroundColor != NULL )
        {
            status = (*g_GdipGetHatchForegroundColor)(brush, forecol);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipGetHatchBackgroundColorPtr)(GpHatch *brush, ARGB* backcol));
DEFINE_MEMBER(GdipGetHatchBackgroundColor);

GpStatus WINGDIPAPI
GdipGetHatchBackgroundColor(GpHatch *brush, ARGB* backcol)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipGetHatchBackgroundColor == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipGetHatchBackgroundColor);
        }
        if ( g_GdipGetHatchBackgroundColor != NULL )
        {
            status = (*g_GdipGetHatchBackgroundColor)(brush, backcol);
        }
    }
    return status;
}

//----------------------------------------------------------------------------
// TextureBrush APIs
//----------------------------------------------------------------------------

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCreateTexturePtr)(GpImage *image, GpWrapMode wrapmode, GpTexture **texture));
DEFINE_MEMBER(GdipCreateTexture);

GpStatus WINGDIPAPI
GdipCreateTexture(GpImage *image, GpWrapMode wrapmode, GpTexture **texture)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCreateTexture == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCreateTexture);
        }
        if ( g_GdipCreateTexture != NULL )
        {
            status = (*g_GdipCreateTexture)(image, wrapmode, texture);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCreateTexture2Ptr)(GpImage *image, GpWrapMode wrapmode, REAL x,
                   REAL y, REAL width, REAL height, GpTexture **texture));
DEFINE_MEMBER(GdipCreateTexture2);

GpStatus WINGDIPAPI
GdipCreateTexture2(GpImage *image, GpWrapMode wrapmode, REAL x,
                   REAL y, REAL width, REAL height, GpTexture **texture)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCreateTexture2 == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCreateTexture2);
        }
        if ( g_GdipCreateTexture2 != NULL )
        {
            status = (*g_GdipCreateTexture2)(image, wrapmode, x, y, width, height, texture);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCreateTextureIAPtr)(GpImage *image, 
                    GDIPCONST GpImageAttributes *imageAttributes, REAL x, REAL y, REAL width, REAL height, GpTexture **texture));
DEFINE_MEMBER(GdipCreateTextureIA);

GpStatus WINGDIPAPI
GdipCreateTextureIA(GpImage *image, 
                    GDIPCONST GpImageAttributes *imageAttributes,
                    REAL x, REAL y, REAL width, REAL height,
                    GpTexture **texture)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCreateTextureIA == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCreateTextureIA);
        }
        if ( g_GdipCreateTextureIA != NULL )
        {
            status = (*g_GdipCreateTextureIA)(image, imageAttributes, x, y, width, height, texture);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCreateTexture2IPtr)(GpImage *image, GpWrapMode wrapmode, INT x,
                    INT y, INT width, INT height, GpTexture **texture));
DEFINE_MEMBER(GdipCreateTexture2I);

GpStatus WINGDIPAPI
GdipCreateTexture2I(GpImage *image, GpWrapMode wrapmode, INT x,
                    INT y, INT width, INT height, GpTexture **texture)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCreateTexture2I == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCreateTexture2I);
        }
        if ( g_GdipCreateTexture2I != NULL )
        {
            status = (*g_GdipCreateTexture2I)(image, wrapmode, x,
                                    y, width, height, texture);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipCreateTextureIAIPtr)(GpImage *image, 
                     GDIPCONST GpImageAttributes *imageAttributes, INT x, INT y, INT width, INT height, GpTexture **texture));
DEFINE_MEMBER(GdipCreateTextureIAI);

GpStatus WINGDIPAPI
GdipCreateTextureIAI(GpImage *image, 
                     GDIPCONST GpImageAttributes *imageAttributes,
                     INT x, INT y, INT width, INT height,
                     GpTexture **texture)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipCreateTextureIAI == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipCreateTextureIAI);
        }
        if ( g_GdipCreateTextureIAI != NULL )
        {
            status = (*g_GdipCreateTextureIAI)(image, imageAttributes, x, y, width, height, texture);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipGetTextureTransformPtr)(GpTexture *brush, GpMatrix *matrix));
DEFINE_MEMBER(GdipGetTextureTransform);

GpStatus WINGDIPAPI
GdipGetTextureTransform(GpTexture *brush, GpMatrix *matrix)
{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipGetTextureTransform == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipGetTextureTransform);
        }
        if ( g_GdipGetTextureTransform != NULL )
        {
            status = (*g_GdipGetTextureTransform)(brush, matrix);
        }
    }
    return status;
}


DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipSetTextureTransformPtr)(GpTexture *brush, GDIPCONST GpMatrix *matrix));
DEFINE_MEMBER(GdipSetTextureTransform);

GpStatus WINGDIPAPI
GdipSetTextureTransform(GpTexture *brush, GDIPCONST GpMatrix *matrix)

{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipSetTextureTransform == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipSetTextureTransform);
        }
        if ( g_GdipSetTextureTransform != NULL )
        {
            status = (*g_GdipSetTextureTransform)(brush, matrix);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipResetTextureTransformPtr)(GpTexture* brush));
DEFINE_MEMBER(GdipResetTextureTransform);

GpStatus WINGDIPAPI
GdipResetTextureTransform(GpTexture* brush)

{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipResetTextureTransform == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipResetTextureTransform);
        }
        if ( g_GdipResetTextureTransform != NULL )
        {
            status = (*g_GdipResetTextureTransform)(brush);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipMultiplyTextureTransformPtr)(GpTexture* brush, GDIPCONST GpMatrix *matrix, GpMatrixOrder order));
DEFINE_MEMBER(GdipMultiplyTextureTransform);

GpStatus WINGDIPAPI
GdipMultiplyTextureTransform(GpTexture* brush, GDIPCONST GpMatrix *matrix,
                            GpMatrixOrder order)

{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipMultiplyTextureTransform == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipMultiplyTextureTransform);
        }
        if ( g_GdipMultiplyTextureTransform != NULL )
        {
            status = (*g_GdipMultiplyTextureTransform)(brush, matrix,
                                            order);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipTranslateTextureTransformPtr)(GpTexture* brush, REAL dx, REAL dy, GpMatrixOrder order));
DEFINE_MEMBER(GdipTranslateTextureTransform);

GpStatus WINGDIPAPI
GdipTranslateTextureTransform(GpTexture* brush, REAL dx, REAL dy,
                            GpMatrixOrder order)

{
    GpStatus status = GdiplusNotInitialized;
    if ( g_hGdiplusModule != NULL )
    {
        if ( g_GdipTranslateTextureTransform == NULL )
        {
            INITIALIZE_MEMBER(g_hGdiplusModule, GdipTranslateTextureTransform);
        }
        if ( g_GdipTranslateTextureTransform != NULL )
        {
            status = (*g_GdipTranslateTextureTransform)(brush, dx, dy, order);
        }
    }
    return status;
}

DEFINE_POINTER(GpStatus (WINGDIPAPI *GdipScaleTextureTransformPtr)(GpTexture* brush, REAL sx, REAL sy, GpMatrixOrder order));
DEFINE_MEMBER(GdipScaleTextureTransform);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -