Skip to content

Render

_This is the render module for Basalt. It tries to mimic the functionality of the term API. but with additional _ functionality. It also has a buffer system to reduce the number of calls

Functions

MethodReturnsDescription
Render.newRenderCreates a new Render object
Render:addDirtyRectRenderAdds a dirty rectangle to the buffer
Render:blitRenderBlits text to the screen
Render:multiBlitRenderBlits text to the screen with multiple lines
Render:textFgRenderBlits text to the screen with a foreground color
Render:textBgRenderBlits text to the screen with a background color
Render:textRenderRenders the text to the screen
Render:fgRenderBlits a foreground color to the screen
Render:bgRenderBlits a background color to the screen
Render:textRenderBlits text to the screen
Render:fgRenderBlits a foreground color to the screen
Render:bgRenderBlits a background color to the screen
Render:clearRenderClears the screen
Render:renderRenderRenders the buffer to the screen
Render:rectOverlapsbooleanChecks if two rectangles overlap
Render:mergeRectsRenderMerges two rectangles
Render:setCursorRenderSets the cursor position
Render:clearAreaRenderClears an area of the screen
Render:getSizenumberGets the size of the render
Render:setSizeRenderSets the size of the render

Render.new(terminal)

Creates a new Render object

Parameters

  • terminal table The terminal object to render to

Returns

  • Render

Render:addDirtyRect(x, y, width, height)

Adds a dirty rectangle to the buffer

Parameters

  • x number The x position of the rectangle
  • y number The y position of the rectangle
  • width number The width of the rectangle
  • height number The height of the rectangle

Returns

  • Render

Render:blit(x, y, text, fg, bg)

Blits text to the screen

Parameters

  • x number The x position to blit to
  • y number The y position to blit to
  • text string The text to blit
  • fg string The foreground color of the text
  • bg string The background color of the text

Returns

  • Render

Render:multiBlit(x, y, width, height, text, fg, bg)

Blits text to the screen with multiple lines

Parameters

  • x number The x position to blit to
  • y number The y position to blit to
  • width number The width of the text
  • height number The height of the text
  • text string The text to blit
  • fg colors The foreground color of the text
  • bg colors The background color of the text

Returns

  • Render

Render:textFg(x, y, text, fg)

Blits text to the screen with a foreground color

Parameters

  • x number The x position to blit to
  • y number The y position to blit to
  • text string The text to blit
  • fg colors The foreground color of the text

Returns

  • Render

Render:textBg(x, y, text, bg)

Blits text to the screen with a background color

Parameters

  • x number The x position to blit to
  • y number The y position to blit to
  • text string The text to blit
  • bg colors The background color of the text

Returns

  • Render

Render:text(x, y, text)

Renders the text to the screen

Parameters

  • x number The x position to blit to
  • y number The y position to blit to
  • text string The text to blit

Returns

  • Render

Render:fg(x, y, fg)

Blits a foreground color to the screen

Parameters

  • x number The x position
  • y number The y position
  • fg string The foreground color to blit

Returns

  • Render

Render:bg(x, y, bg)

Blits a background color to the screen

Parameters

  • x number The x position
  • y number The y position
  • bg string The background color to blit

Returns

  • Render

Render:text(x, y, text)

Blits text to the screen

Parameters

  • x number The x position to blit to
  • y number The y position to blit to
  • text string The text to blit

Returns

  • Render

Render:fg(x, y, fg)

Blits a foreground color to the screen

Parameters

  • x number The x position
  • y number The y position
  • fg string The foreground color to blit

Returns

  • Render

Render:bg(x, y, bg)

Blits a background color to the screen

Parameters

  • x number The x position
  • y number The y position
  • bg string The background color to blit

Returns

  • Render

Render:clear(bg)

Clears the screen

Parameters

  • bg colors The background color to clear the screen with

Returns

  • Render

Render:render()

Renders the buffer to the screen

Returns

  • Render

Render:rectOverlaps(r1, r2)

Checks if two rectangles overlap

Parameters

  • r1 table The first rectangle
  • r2 table The second rectangle

Returns

  • boolean

Render:mergeRects(target, source)

Merges two rectangles

Parameters

  • target table The target rectangle
  • source table The source rectangle

Returns

  • Render

Sets the cursor position

Parameters

  • x number The x position of the cursor
  • y number The y position of the cursor
  • blink boolean Whether the cursor should blink

Returns

  • Render

Render:clearArea(x, y, width, height, bg)

Clears an area of the screen

Parameters

  • x number The x position of the area
  • y number The y position of the area
  • width number The width of the area
  • height number The height of the area
  • bg colors The background color to clear the area with

Returns

  • Render

Render:getSize()

Gets the size of the render

Returns

  • number

Render:setSize(width, height)

Sets the size of the render

Parameters

  • width number The width of the render
  • height number The height of the render

Returns

  • Render

Released under the MIT License.