wxGridCellRenderer(3erl)

πŸ¦‹ wxGridCellRenderer β€” bestie edition πŸ¦‹

okay so this is the wxGridCellRenderer(3erl) page, and it's an Erlang module definition situation. we're talking grid cells, rendering, and main character energy. πŸ’…

🌸 NAME 🌸

wxGridCellRenderer β€” functions for the wxGridCellRenderer class. periodt.

✨ DESCRIPTION ✨

This class is responsible for actually drawing the cell in the grid. No cap. You may pass it to wxGridCellAttr (below) to change the format of one given cell, or to wxGrid:setDefaultRenderer/2 to change the view of all cells. This is an abstract class, so you'll normally use one of the predefined derived classes or derive your own class from it. abstract but make it iconic. 🫢

See:

  • wxGridCellAutoWrapStringRenderer (not implemented in wx)
  • wxGridCellBoolRenderer
  • wxGridCellDateTimeRenderer (not implemented in wx)
  • wxGridCellEnumRenderer (not implemented in wx)
  • wxGridCellFloatRenderer
  • wxGridCellNumberRenderer
  • wxGridCellStringRenderer

wxWidgets docs: wxGridCellRenderer β€” the official docs pointer, right here.

πŸŽ€ DATA TYPES πŸŽ€

There's exactly one data type here, and it's giving minimal:

wxGridCellRenderer() = wx:wx_object()

πŸ’… EXPORTS πŸ’…

⭐ draw β€” draw the cell, slay

draw(This, Grid, Attr, Dc, Rect, Row, Col, IsSelected) -> ok

Types:

This = wxGridCellRenderer()
Grid = wxGrid:wxGrid()
Attr = wxGridCellAttr:wxGridCellAttr()
Dc = wxDC:wxDC()
Rect =
    {X :: integer(),
     Y :: integer(),
     W :: integer(),
     H :: integer()}
Row = Col = integer()
IsSelected = boolean()

Draw the given cell on the provided DC inside the given rectangle, using the style specified by the attribute and the default or selected state corresponding to the isSelected value. πŸ’–

This pure virtual function has a default implementation which will prepare the DC using the given attribute: it will draw the rectangle with the background colour from attr and set the text colour and font. iconic.

🌈 getBestSize β€” preferred size check

getBestSize(This, Grid, Attr, Dc, Row, Col) ->
                      {W :: integer(), H :: integer()}

Types:

This = wxGridCellRenderer()
Grid = wxGrid:wxGrid()
Attr = wxGridCellAttr:wxGridCellAttr()
Dc = wxDC:wxDC()
Row = Col = integer()

Get the preferred size of the cell for its contents. ✨

This method must be overridden in the derived classes to return the minimal fitting size for displaying the content of the given grid cell. no shortcuts, bestie.

See: GetBestHeight() (not implemented in wx), GetBestWidth() (not implemented in wx).


source/version: wxWidgets team + wx 2.2.2.1; page: wxGridCellRenderer(3erl); date: not in the footer, but the vibe is timeless βœ¨πŸ’…

πŸ“¦ where this page comes from