mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-16 21:33:46 +03:00
78 lines
1.3 KiB
Lua
78 lines
1.3 KiB
Lua
--[[
|
|
| This file was obtained through the combined efforts
|
|
| of Madbluntz & Plymouth Antiquarian Society.
|
|
|
|
|
| Credits: lifestorm, Gregory Wayne Rossel JR.,
|
|
| Maloy, DrPepper10 @ RIP, Atle!
|
|
|
|
|
| Visit for more: https://plymouth.thetwilightzone.ru/
|
|
--]]
|
|
|
|
|
|
local PANEL = {}
|
|
|
|
function PANEL:SetMaterial( On )
|
|
|
|
if ( self.MatOn ) then
|
|
self.MatOn:Remove()
|
|
end
|
|
|
|
self.MatOn = vgui.Create( "Material", self )
|
|
self.MatOn:SetSize( 16, 16 )
|
|
self.MatOn:SetMaterial( On )
|
|
|
|
self:InvalidateLayout( true )
|
|
|
|
end
|
|
|
|
function PANEL:SetChecked( bOn )
|
|
|
|
if ( self.State == bOn ) then return end
|
|
self.MatOn:SetVisible( bOn )
|
|
self.State = bOn
|
|
|
|
end
|
|
|
|
function PANEL:GetChecked()
|
|
|
|
return self.State
|
|
|
|
end
|
|
|
|
function PANEL:Set( bOn )
|
|
|
|
self:SetChecked( bOn )
|
|
|
|
end
|
|
|
|
function PANEL:DoClick()
|
|
|
|
self:SetChecked( !self.State )
|
|
|
|
end
|
|
|
|
function PANEL:SizeToContents()
|
|
|
|
if ( self.MatOn ) then
|
|
self:SetSize( self.MatOn:GetWide(), self.MatOn:GetTall() )
|
|
end
|
|
|
|
self:InvalidateLayout()
|
|
|
|
end
|
|
|
|
function PANEL:Paint()
|
|
|
|
draw.RoundedBox( 4, 0, 0, self:GetWide(), self:GetTall(), Color( 0, 0, 0, 50 ) )
|
|
return true
|
|
|
|
end
|
|
|
|
function PANEL:PerformLayout()
|
|
|
|
self.MatOn:SetPos( ( self:GetWide() - self.MatOn:GetWide() ) / 2, ( self:GetTall() - self.MatOn:GetTall() ) / 2 )
|
|
|
|
end
|
|
|
|
vgui.Register( "ImageCheckBox", PANEL, "Button" )
|