Provided by: erlang-manpages_25.3.2.8+dfsg-1ubuntu4_all
NAME
wxGraphicsContext - Functions for wxGraphicsContext class
DESCRIPTION
A wxGraphicsContext instance is the object that is drawn upon. It is created by a renderer using wxGraphicsRenderer:createContext/2. This can be either directly using a renderer instance, or indirectly using the static convenience create/1 functions of wxGraphicsContext that always delegate the task to the default renderer. Remark: For some renderers (like Direct2D or Cairo) processing of drawing operations may be deferred (Direct2D render target normally builds up a batch of rendering commands but defers processing of these commands, Cairo operates on a separate surface) so to make drawing results visible you need to update the content of the context by calling wxGraphicsContext::Flush() (not implemented in wx) or by destroying the context. See: wxGraphicsRenderer:createContext/2, wxGCDC, wxDC This class is derived (and can use functions) from: wxGraphicsObject wxWidgets docs: wxGraphicsContext
DATA TYPES
wxGraphicsContext() = wx:wx_object()
EXPORTS
destroy(This :: wxGraphicsContext()) -> ok Creates a wxGraphicsContext from a wxWindow. See: wxGraphicsRenderer:createContext/2 create() -> wxGraphicsContext() Create a lightweight context that can be used only for measuring text. create(WindowDC) -> wxGraphicsContext() Types: WindowDC = wxWindowDC:wxWindowDC() | wxWindow:wxWindow() | wxMemoryDC:wxMemoryDC() | wxImage:wxImage() Creates a wxGraphicsContext from a wxWindowDC. See: wxGraphicsRenderer:createContext/2 createPen(This, Pen) -> wxGraphicsPen:wxGraphicsPen() Types: This = wxGraphicsContext() Pen = wxPen:wxPen() Creates a native pen from a wxPen. Prefer to use the overload taking wxGraphicsPenInfo (not implemented in wx) unless you already have a wxPen as constructing one only to pass it to this method is wasteful. createBrush(This, Brush) -> wxGraphicsBrush:wxGraphicsBrush() Types: This = wxGraphicsContext() Brush = wxBrush:wxBrush() Creates a native brush from a wxBrush. createRadialGradientBrush(This, StartX, StartY, EndX, EndY, Radius, Stops) -> wxGraphicsBrush:wxGraphicsBrush() Types: This = wxGraphicsContext() StartX = StartY = EndX = EndY = Radius = number() Stops = wxGraphicsGradientStops:wxGraphicsGradientStops() This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. createRadialGradientBrush(This, StartX, StartY, EndX, EndY, Radius, OColor, CColor) -> wxGraphicsBrush:wxGraphicsBrush() Types: This = wxGraphicsContext() StartX = StartY = EndX = EndY = Radius = number() OColor = CColor = wx:wx_colour() Creates a native brush with a radial gradient. The brush originates at (@a startX, @a startY) and ends on a circle around (@a endX, @a endY) with the given @a radius. The gradient may be specified either by its start and end colours @a oColor and @a cColor or by a full set of gradient @a stops. The version taking wxGraphicsGradientStops is new in wxWidgets 2.9.1. The ability to apply a transformation matrix to the gradient was added in 3.1.3 createLinearGradientBrush(This, X1, Y1, X2, Y2, Stops) -> wxGraphicsBrush:wxGraphicsBrush() Types: This = wxGraphicsContext() X1 = Y1 = X2 = Y2 = number() Stops = wxGraphicsGradientStops:wxGraphicsGradientStops() This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. createLinearGradientBrush(This, X1, Y1, X2, Y2, C1, C2) -> wxGraphicsBrush:wxGraphicsBrush() Types: This = wxGraphicsContext() X1 = Y1 = X2 = Y2 = number() C1 = C2 = wx:wx_colour() Creates a native brush with a linear gradient. The brush starts at (@a x1, @a y1) and ends at (@a x2, @a y2). Either just the start and end gradient colours (@a c1 and @a c2) or full set of gradient @a stops can be specified. The version taking wxGraphicsGradientStops is new in wxWidgets 2.9.1. The matrix parameter was added in wxWidgets 3.1.3 createFont(This, Font) -> wxGraphicsFont:wxGraphicsFont() Types: This = wxGraphicsContext() Font = wxFont:wxFont() createFont(This, SizeInPixels, Facename) -> wxGraphicsFont:wxGraphicsFont() createFont(This, Font, Facename :: [Option]) -> wxGraphicsFont:wxGraphicsFont() Types: This = wxGraphicsContext() Font = wxFont:wxFont() Option = {col, wx:wx_colour()} Creates a native graphics font from a wxFont and a text colour. Remark: For Direct2D graphics fonts can be created from TrueType fonts only. createFont(This, SizeInPixels, Facename, Options :: [Option]) -> wxGraphicsFont:wxGraphicsFont() Types: This = wxGraphicsContext() SizeInPixels = number() Facename = unicode:chardata() Option = {flags, integer()} | {col, wx:wx_colour()} Creates a font object with the specified attributes. The use of overload taking wxFont is preferred, see wxGraphicsRenderer:createFont/4 for more details. Remark: For Direct2D graphics fonts can be created from TrueType fonts only. Since: 2.9.3 createMatrix(This) -> wxGraphicsMatrix:wxGraphicsMatrix() Types: This = wxGraphicsContext() createMatrix(This, Options :: [Option]) -> wxGraphicsMatrix:wxGraphicsMatrix() Types: This = wxGraphicsContext() Option = {a, number()} | {b, number()} | {c, number()} | {d, number()} | {tx, number()} | {ty, number()} Creates a native affine transformation matrix from the passed in values. The default parameters result in an identity matrix. createPath(This) -> wxGraphicsPath:wxGraphicsPath() Types: This = wxGraphicsContext() Creates a native graphics path which is initially empty. clip(This, Region) -> ok Types: This = wxGraphicsContext() Region = wxRegion:wxRegion() Sets the clipping region to the intersection of the given region and the previously set clipping region. The clipping region is an area to which drawing is restricted. Remark: clip(This, X, Y, W, H) -> ok Types: This = wxGraphicsContext() X = Y = W = H = number() This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. resetClip(This) -> ok Types: This = wxGraphicsContext() Resets the clipping to original shape. drawBitmap(This, Bmp, X, Y, W, H) -> ok Types: This = wxGraphicsContext() Bmp = wxBitmap:wxBitmap() X = Y = W = H = number() Draws the bitmap. In case of a mono bitmap, this is treated as a mask and the current brushed is used for filling. drawEllipse(This, X, Y, W, H) -> ok Types: This = wxGraphicsContext() X = Y = W = H = number() Draws an ellipse. drawIcon(This, Icon, X, Y, W, H) -> ok Types: This = wxGraphicsContext() Icon = wxIcon:wxIcon() X = Y = W = H = number() Draws the icon. drawLines(This, Points) -> ok Types: This = wxGraphicsContext() Points = [{X :: float(), Y :: float()}] drawLines(This, Points, Options :: [Option]) -> ok Types: This = wxGraphicsContext() Points = [{X :: float(), Y :: float()}] Option = {fillStyle, wx:wx_enum()} Draws a polygon. drawPath(This, Path) -> ok Types: This = wxGraphicsContext() Path = wxGraphicsPath:wxGraphicsPath() drawPath(This, Path, Options :: [Option]) -> ok Types: This = wxGraphicsContext() Path = wxGraphicsPath:wxGraphicsPath() Option = {fillStyle, wx:wx_enum()} Draws the path by first filling and then stroking. drawRectangle(This, X, Y, W, H) -> ok Types: This = wxGraphicsContext() X = Y = W = H = number() Draws a rectangle. drawRoundedRectangle(This, X, Y, W, H, Radius) -> ok Types: This = wxGraphicsContext() X = Y = W = H = Radius = number() Draws a rounded rectangle. drawText(This, Str, X, Y) -> ok Types: This = wxGraphicsContext() Str = unicode:chardata() X = Y = number() Draws text at the defined position. drawText(This, Str, X, Y, Angle) -> ok drawText(This, Str, X, Y, BackgroundBrush) -> ok Types: This = wxGraphicsContext() Str = unicode:chardata() X = Y = number() BackgroundBrush = wxGraphicsBrush:wxGraphicsBrush() Draws text at the defined position. drawText(This, Str, X, Y, Angle, BackgroundBrush) -> ok Types: This = wxGraphicsContext() Str = unicode:chardata() X = Y = Angle = number() BackgroundBrush = wxGraphicsBrush:wxGraphicsBrush() Draws text at the defined position. fillPath(This, Path) -> ok Types: This = wxGraphicsContext() Path = wxGraphicsPath:wxGraphicsPath() fillPath(This, Path, Options :: [Option]) -> ok Types: This = wxGraphicsContext() Path = wxGraphicsPath:wxGraphicsPath() Option = {fillStyle, wx:wx_enum()} Fills the path with the current brush. strokePath(This, Path) -> ok Types: This = wxGraphicsContext() Path = wxGraphicsPath:wxGraphicsPath() Strokes along a path with the current pen. getPartialTextExtents(This, Text) -> [number()] Types: This = wxGraphicsContext() Text = unicode:chardata() Fills the widths array with the widths from the beginning of text to the corresponding character of text. getTextExtent(This, Text) -> Result Types: Result = {Width :: number(), Height :: number(), Descent :: number(), ExternalLeading :: number()} This = wxGraphicsContext() Text = unicode:chardata() Gets the dimensions of the string using the currently selected font. rotate(This, Angle) -> ok Types: This = wxGraphicsContext() Angle = number() Rotates the current transformation matrix (in radians). scale(This, XScale, YScale) -> ok Types: This = wxGraphicsContext() XScale = YScale = number() Scales the current transformation matrix. translate(This, Dx, Dy) -> ok Types: This = wxGraphicsContext() Dx = Dy = number() Translates the current transformation matrix. getTransform(This) -> wxGraphicsMatrix:wxGraphicsMatrix() Types: This = wxGraphicsContext() Gets the current transformation matrix of this context. setTransform(This, Matrix) -> ok Types: This = wxGraphicsContext() Matrix = wxGraphicsMatrix:wxGraphicsMatrix() Sets the current transformation matrix of this context. concatTransform(This, Matrix) -> ok Types: This = wxGraphicsContext() Matrix = wxGraphicsMatrix:wxGraphicsMatrix() Concatenates the passed in transform with the current transform of this context. setBrush(This, Brush) -> ok Types: This = wxGraphicsContext() Brush = wxGraphicsBrush:wxGraphicsBrush() | wxBrush:wxBrush() Sets the brush for filling paths. setFont(This, Font) -> ok Types: This = wxGraphicsContext() Font = wxGraphicsFont:wxGraphicsFont() Sets the font for drawing text. setFont(This, Font, Colour) -> ok Types: This = wxGraphicsContext() Font = wxFont:wxFont() Colour = wx:wx_colour() Sets the font for drawing text. Remark: For Direct2D only TrueType fonts can be used. setPen(This, Pen) -> ok Types: This = wxGraphicsContext() Pen = wxPen:wxPen() | wxGraphicsPen:wxGraphicsPen() Sets the pen used for stroking. strokeLine(This, X1, Y1, X2, Y2) -> ok Types: This = wxGraphicsContext() X1 = Y1 = X2 = Y2 = number() Strokes a single line. strokeLines(This, Points) -> ok Types: This = wxGraphicsContext() Points = [{X :: float(), Y :: float()}] Stroke lines connecting all the points. Unlike the other overload of this function, this method draws a single polyline and not a number of disconnected lines.