Files
Basalt/docs/objects/VisualObject/addDraw.md
Robert Jelic bb1b1beb79 Basalt 1.7 Update
- New Objects (Flexbox, Graph, Treeview)
- Pluginsystem to add/remove functionality
- Reworked the entire Object system, instead of one big Object Class we have multiple classes: Object, VisualObject, ChangeableObject
- Instead of one big Frame Class we have multiple Frame Classes: BaseFrame, Frame, MovableFrame, ScrollableFrame, MonitorFrame, Flexbox
- Removed the Animation Object, and added a animation plugin instead
- Removed the Graphic Object and merged it's functionality with the image object
- Updated currently existing objects
2023-04-30 17:05:34 +02:00

34 lines
1.1 KiB
Markdown

## addDraw
### Description
Adds a custom drawing function to the object, allowing users to create their own graphical representations using code.
### Parameters
1. `string` Name (ID) - must be unique
2. `function` The function to be executed, containing the custom drawing code
3. `number` Optional - Position, determines the order or priority of the drawing
4. `number` Optional - Determines if the drawing should be added to the preDrawQueue, postDrawQueue, or drawQueue. `1` = drawQueue, `2` = preDrawQueue, `3` = postDrawQueue (default is drawQueue)
5. `boolean` Optional - Whether the drawing should be rendered immediately or not, default is `true`
### Returns
1. `object` The object in use
### Usage
```lua
local basalt = require("basalt")
local mainFrame = basalt.createFrame()
local function customDrawing()
-- Custom drawing code goes here
end
mainFrame:addDraw("uniqueID", customDrawing)
```
In this example, a custom drawing function is added to the main frame. The custom drawing code should be placed inside the `customDrawing` function. The drawing is given a unique ID, a position of 1, added to the drawQueue, and rendered immediately.