This commit is contained in:
Insality
2025-03-29 14:03:03 +02:00
parent b053b5044b
commit 3f22e9c542
27 changed files with 501 additions and 50 deletions

View File

@@ -1,18 +1,12 @@
local component = require("druid.component")
---@class property_button: druid.component
---@class property_button: druid.widget
---@field root node
---@field text_name druid.lang_text
---@field button druid.button
---@field text_button druid.text
---@field druid druid.instance
local M = component.create("property_button")
local M = {}
---@param template string
---@param nodes table<hash, node>
function M:init(template, nodes)
self.druid = self:get_druid(template, nodes)
function M:init()
self.root = self:get_node("root")
self.text_name = self.druid:new_lang_text("text_name") --[[@as druid.lang_text]]
self.selected = self:get_node("selected")

View File

@@ -1,18 +1,12 @@
local component = require("druid.component")
---@class property_checkbox: druid.component
---@field druid druid.instance
---@class property_checkbox: druid.widget
---@field root druid.container
---@field text_name druid.lang_text
---@field button druid.button
---@field selected node
local M = component.create("property_checkbox")
local M = {}
---@param template string
---@param nodes table<hash, node>
function M:init(template, nodes)
self.druid = self:get_druid(template, nodes)
function M:init()
self.root = self.druid:new_container("root") --[[@as druid.container]]
self.icon = self:get_node("icon")

View File

@@ -1,19 +1,12 @@
local component = require("druid.component")
---@class property_slider: druid.component
---@field druid druid.instance
---@class property_slider: druid.widget
---@field root druid.container
---@field text_name druid.lang_text
---@field text_value druid.text
---@field slider druid.slider
local M = component.create("property_slider")
local M = {}
---@param template string
---@param nodes table<hash, node>
function M:init(template, nodes)
self.druid = self:get_druid(template, nodes)
function M:init()
self.root = self.druid:new_container("root") --[[@as druid.container]]
self.selected = self:get_node("selected")
gui.set_alpha(self.selected, 0)

View File

@@ -87,7 +87,7 @@ end
---@return property_slider
function M:add_slider(text_id, initial_value, on_change_callback)
local nodes = gui.clone_tree(self.property_slider_prefab)
local instance = self.druid:new(property_slider, "property_slider", nodes) --[[@as property_slider]]
local instance = self.druid:new_widget(property_slider, "property_slider", nodes) --[[@as property_slider]]
instance.text_name:translate(text_id)
instance:set_value(initial_value, true)