oracular (3) wxGraphicsContext.3erl.gz

Provided by: erlang-manpages_25.3.2.12+dfsg-1ubuntu2_all bug

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.