class axl::gui::GdiCanvas

#include <axl_gui_GdiCanvas.h>

class GdiCanvas:
    public axl::gui::Canvas,
    public axl::sl::Handle
{
public:
    // construction

    GdiCanvas();
    ~GdiCanvas();

    // methods

    void
    attach(
        HDC hdc,
        HWND hWnd,
        DestructKind destructKind
        );

    virtual
    bool
    drawRect(
        int left,
        int top,
        int right,
        int bottom,
        uint_t color
        );

    virtual
    bool
    drawText_utf8(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef_utf8& text
        );

    virtual
    bool
    drawText_utf16(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef_utf16& text
        );

    virtual
    bool
    drawText_utf32(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef_utf32& text
        );

    virtual
    bool
    drawImage(
        int x,
        int y,
        Image* image,
        int left,
        int top,
        int right,
        int bottom
        );

    virtual
    bool
    copyRect(
        Canvas* srcCanvas,
        int xDst,
        int yDst,
        int xSrc,
        int ySrc,
        int width,
        int height
        );
};

Inherited Members

public:
    // typedefs

    typedef T H;

    // fields

    Font* m_font;
    ColorAttr m_colorAttr;
    Palette m_palette;

    // methods

    Engine*
    getEngine();

    void
    setTextAttr(const TextAttr& attr);

    bool
    drawRect(
        int left,
        int top,
        int right,
        int bottom,
        uint_t color
        );

    bool
    drawRect(
        int left,
        int top,
        int right,
        int bottom
        );

    bool
    drawRect(
        const Rect& rect,
        uint_t color
        );

    bool
    drawRect(const Rect& rect);

    bool
    drawAlphaRect(
        int left,
        int top,
        int right,
        int bottom,
        uint_t color,
        uint_t alpha
        );

    bool
    drawAlphaRect(
        int left,
        int top,
        int right,
        int bottom,
        uint_t alpha
        );

    bool
    drawAlphaRect(
        const Rect& rect,
        uint_t color,
        uint_t alpha
        );

    bool
    drawAlphaRect(
        const Rect& rect,
        uint_t alpha
        );

    bool
    drawGradientRect(
        int left,
        int top,
        int right,
        int bottom,
        int x1,
        int y1,
        uint_t color1,
        int x2,
        int y2,
        uint_t color2
        );

    bool
    drawGradientRect(
        const Rect& rect,
        const Point& point1,
        uint_t color1,
        const Point& point2,
        uint_t color2
        );

    bool
    drawAlphaGradientRect(
        int left,
        int top,
        int right,
        int bottom,
        int x1,
        int y1,
        uint_t color1,
        uint_t alpha1,
        int x2,
        int y2,
        uint_t color2,
        uint_t alpha2
        );

    bool
    drawAlphaGradientRect(
        const Rect& rect,
        const Point& point1,
        uint_t color1,
        uint_t alpha1,
        const Point& point2,
        uint_t color2,
        uint_t alpha2
        );

    Size
    calcCharSize(utf32_t c);

    Size
    calcTextSize_utf8(const sl::StringRef_utf8& text);

    Size
    calcTextSize_utf16(const sl::StringRef_utf16& text);

    Size
    calcTextSize_utf32(const sl::StringRef_utf32& text);

    bool
    drawText(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef& text
        );

    bool
    drawText(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        const sl::StringRef& text
        );

    bool
    drawText(
        const Point& point,
        const Rect& rect,
        const TextAttr& textAttr,
        const sl::StringRef& text
        );

    bool
    drawText(
        const Point& point,
        const Rect& rect,
        const sl::StringRef& text
        );

    bool
    drawText_utf8(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef_utf8& text
        );

    bool
    drawText_utf8(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        const sl::StringRef_utf8& text
        );

    bool
    drawText_utf8(
        const Point& point,
        const Rect& rect,
        const TextAttr& textAttr,
        const sl::StringRef_utf8& text
        );

    bool
    drawText_utf8(
        const Point& point,
        const Rect& rect,
        const sl::StringRef_utf8& text
        );

    bool
    drawText_utf16(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef_utf16& text
        );

    bool
    drawText_utf16(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        const sl::StringRef_utf16& text
        );

    bool
    drawText_utf16(
        const Point& point,
        const Rect& rect,
        const TextAttr& textAttr,
        const sl::StringRef_utf16& text
        );

    bool
    drawText_utf16(
        const Point& point,
        const Rect& rect,
        const sl::StringRef_utf16& text
        );

    bool
    drawText_utf32(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        uint_t textColor,
        uint_t backColor,
        uint_t fontFlags,
        const sl::StringRef_utf32& text
        );

    bool
    drawText_utf32(
        int x,
        int y,
        int left,
        int top,
        int right,
        int bottom,
        const sl::StringRef_utf32& text
        );

    bool
    drawText_utf32(
        const Point& point,
        const Rect& rect,
        const TextAttr& textAttr,
        const sl::StringRef_utf32& text
        );

    bool
    drawText_utf32(
        const Point& point,
        const Rect& rect,
        const sl::StringRef_utf32& text
        );

    bool
    drawImage(
        int x,
        int y,
        Image* image,
        int left,
        int top,
        int right,
        int bottom
        );

    bool
    drawImage(
        const Point& point,
        Image* image,
        const Rect& rect = Rect()
        );

    bool
    copyRect(
        int x,
        int y,
        Canvas* srcCanvas,
        int left,
        int top,
        int right,
        int bottom
        );

    bool
    copyRect(
        const Point& point,
        Canvas* srcCanvas,
        const Rect& srcRect
        );

    operator T() const;

    T
    operator->() const;

    const Handle&
    operator=(T h);

    bool
    isOpen() const;

    void
    close();

    void
    attach(T h);

    T
    detach();

    T*
    p();

    static
    T
    getInvalidHandle();