function CheckboxLabelClass.GetValue(i)return i.Button.Checkmark.Visible end function CheckboxLabelClass.SetValue(c,i)i=not(not i)local K=c.Frame.CheckContainer local J=K.BackgroundColor3 local Q=K.BorderColor3 local o=K.Outline.BackgroundColor3 local D=i and Q or o if i and K.CheckButton.BackgroundTransparency==1 then D=o end for i,c in next,K.Outline:GetChildren()do c.BackgroundColor3=D end K.CheckButton.BackgroundColor3=i and Q or J K.CheckButton.Checkmark.Visible=i c._ChangedBind:Fire(i)end function CheckboxLabelClass.Destroy(i)i._Maid:Sweep()i.Changed=nil end


function CheckboxLabelClass:GetValue()
	return self.Button.Checkmark.Visible
end

function CheckboxLabelClass:SetValue(bool)
	bool = not not bool
	
	local container = self.Frame.CheckContainer
	local colorA = container.BackgroundColor3
	local colorB = container.BorderColor3
	local colorC = container.Outline.BackgroundColor3
	
	local outlineColor = bool and colorB or colorC
	if (bool and container.CheckButton.BackgroundTransparency == 1) then
		outlineColor = colorC
	end
	
	for _, child in next, container.Outline:GetChildren() do
		child.BackgroundColor3 = outlineColor
	end
	
	container.CheckButton.BackgroundColor3 = bool and colorB or colorA
	container.CheckButton.Checkmark.Visible = bool
	
	self._ChangedBind:Fire(bool)
end

function CheckboxLabelClass:Destroy()
	self._Maid:Sweep()
	--self.Frame:Destroy()
	self.Changed = nil
end
