forked from fail46/OHack
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Fail.UI.Controls.CheckBox.hpp
38 lines (34 loc) · 1.06 KB
/
Fail.UI.Controls.CheckBox.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#pragma once
#include "Fail.UI.hpp"
namespace Fail
{
namespace UI
{
namespace Controls
{
// Check box control
class CheckBox : public Control
{
public:
// CheckBox constructor
inline CheckBox (const char* Text, unsigned int X, unsigned int Y, unsigned Width, unsigned int Height, HWND Parent, unsigned int Command, bool Checked, HINSTANCE Instance)
{
this->Handle = CreateWindowEx(0, "button", Text, WS_VISIBLE | WS_CHILD | BS_CHECKBOX, X, Y, Width, Height, Parent,reinterpret_cast<HMENU>(Command), Instance, nullptr);
SendMessage(this->Handle, WM_SETFONT, reinterpret_cast<WPARAM>(GetStockObject(DEFAULT_GUI_FONT)), 0);
return;
}
// Return true if the check box is checked, otherwise false
inline bool IsChecked () const
{
return SendMessage(this->Handle, BM_GETCHECK, 0, 0) == BST_CHECKED;
}
// Set whether the check box is checked
inline void SetChecked (bool State) const
{
SendMessage(this->Handle, BM_SETCHECK, State == true ? BST_CHECKED : BST_UNCHECKED, 0);
return;
}
};
}
}
}