Nikita Kruglickiy eaf0a90173 )
2020-12-27 21:29:46 +06:00

62 lines
1.8 KiB
Plaintext

--@include element.txt
--@include label.txt
--@include /koptilnya/libs/utils.txt
require("element.txt")
require("label.txt")
require("/koptilnya/libs/utils.txt")
ECheckbox = class("ECheckbox", ELabel)
accessorFunc(ECheckbox, "_textColor", "TextColor", Color(255, 255, 255))
accessorFunc(ECheckbox, "_hoveredColor", "HoveredColor", Color(66, 66, 66))
accessorFunc(ECheckbox, "_hoveredTextColor", "HoveredTextColor", Color(255, 255, 255))
accessorFunc(ECheckbox, "_disabledColor", "DisabledColor", Color(32, 32, 32))
accessorFunc(ECheckbox, "_disabledTextColor", "DisabledTextColor", Color(80, 80, 80))
accessorFunc(ECheckbox, "_indent", "Indent", 8)
function ECheckbox:initialize()
ELabel.initialize(self)
self._checked = false
self:setText("Checkbox")
self:setSize(200, 16)
end
function ECheckbox:setChecked(state)
self._checked = state
self:onChange()
end
function ECheckbox:isChecked()
return self._checked
end
function ECheckbox:paint()
local x, y = self:getAbsolutePos()
local w, h = self:getSize()
local textW, textH = self:getTextSize()
--[[
local bgColor, textColor
if self:isEnabled() then
bgColor = self:isHovered() and self:getHoveredColor() or self:getColor()
textColor = self:isHovered() and self:getHoveredTextColor() or self:getTextColor()
else
bgColor = self:getDisabledColor()
textColor = self:getDisabledTextColor()
end
]]
render.setColor(Color(209, 209, 209))
render.drawCircle(x, y, h / 2)
--render.drawRectOutline(x, y, h, h, -8)
--render.setColor(Color(209, 209, 209, 0))
--render.drawRectFast(x, y, h - 2, h - 2)
render.setFont(self:getFont())
render.setColor(Color(255, 255, 255))
render.drawSimpleText(x + h + self:getIndent(), y + h / 2 - textH / 2, self:getText())
end