/* GWEN Copyright (c) 2010 Facepunch Studios See license in Gwen.h */ #include "Gwen/Controls/CheckBox.h" using namespace Gwen; using namespace Gwen::Controls; GWEN_CONTROL_CONSTRUCTOR(CheckBox) { SetSize(13, 13); m_bChecked = true; Toggle(); } void CheckBox::Render(Skin::Base* skin) { skin->DrawCheckBox(this, m_bChecked, IsDepressed()); } void CheckBox::OnPress() { if (IsChecked() && !AllowUncheck()) return; Toggle(); } void CheckBox::OnCheckStatusChanged() { if (IsChecked()) { onChecked.Call(this); } else { onUnChecked.Call(this); } onCheckChanged.Call(this); } void CheckBox::SetChecked(bool bChecked) { if (m_bChecked == bChecked) return; m_bChecked = bChecked; OnCheckStatusChanged(); }