View Source wxGCDC (wx v2.4.3)
wxGCDC
is a device context that draws on a wxGraphicsContext
.
wxGCDC
does its best to implement wxDC
API, but the following features are not
(fully) implemented because wxGraphicsContext
doesn't support them:
wxDC:getPixel/2
method is not implemented and always returns false because modern graphics layers don't support retrieving the contents of the drawn pixels.wxDC:floodFill/4
method is not, and can't be, implemented, as its functionality relies on reading the pixels fromwxGraphicsContext
too.wxDC:setLogicalFunction/2
method only works withwxCOPY
,wxOR
,wxNO_OP
,wxCLEAR
andwxXOR
functions, attempts to use any other function (includingwxINVERT
) don't do anything.Similarly, ?wxRasterOperationMode parameter of
wxDC:blit/6
andStretchBlit()
(not implemented in wx) can only be one of the supported logical functions listed above, using any other function will result in an assertion failure and not drawing anything.For Direct2D-based
wxGraphicsContext
, only true-type fonts can be used in the font-related functions.
See:
This class is derived, and can use functions, from:
wxWidgets docs: wxGCDC
Summary
Functions
Destroys the object
Retrieves associated wxGraphicsContext
.
Constructs a wxGCDC
from a wxWindowDC
.
Set the graphics context to be used for this wxGCDC
.
Types
-type wxGCDC() :: wx:wx_object().
Functions
-spec destroy(This :: wxGCDC()) -> ok.
Destroys the object
-spec getGraphicsContext(This) -> wxGraphicsContext:wxGraphicsContext() when This :: wxGCDC().
Retrieves associated wxGraphicsContext
.
-spec new() -> wxGCDC().
-spec new(WindowDC) -> wxGCDC() when WindowDC :: wxWindowDC:wxWindowDC() | wxMemoryDC:wxMemoryDC() | wxGraphicsContext:wxGraphicsContext().
Constructs a wxGCDC
from a wxWindowDC
.
-spec setGraphicsContext(This, Context) -> ok when This :: wxGCDC(), Context :: wxGraphicsContext:wxGraphicsContext().
Set the graphics context to be used for this wxGCDC
.
Note that this object takes ownership of context
and will delete it when it is
destroyed or when setGraphicsContext/2
is called again.
Also, unlike the constructor taking wxGraphicsContext
, this method will reapply the
current font, pen and brush, so that this object continues to use them, if they had been
changed before (which is never the case when constructing wxGCDC
directly from wxGraphicsContext
).