mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 05:43:46 +03:00
Upload
This commit is contained in:
77
lua/vgui/imagecheckbox.lua
Normal file
77
lua/vgui/imagecheckbox.lua
Normal file
@@ -0,0 +1,77 @@
|
||||
--[[
|
||||
| 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" )
|
||||
Reference in New Issue
Block a user