mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
58 lines
1.1 KiB
C++
58 lines
1.1 KiB
C++
|
#include "stdafx.h"
|
||
|
#include "Panel.h"
|
||
|
|
||
|
namespace Forms
|
||
|
{
|
||
|
Panel::Panel()
|
||
|
: Control()
|
||
|
{
|
||
|
SetStyle(ControlStyles::Selectable | ControlStyles::AllPaintingInWmPaint, false);
|
||
|
SetStyle(ControlStyles::SupportsTransparentBackColor | ControlStyles::ContainerControl, true);
|
||
|
|
||
|
// Setup the container
|
||
|
this->_Controls = std::make_unique<ControlCollection>();
|
||
|
|
||
|
// We are a panel control
|
||
|
this->_RTTI = ControlTypes::Panel;
|
||
|
}
|
||
|
|
||
|
BorderStyle Panel::GetBorderStyle()
|
||
|
{
|
||
|
return this->_BorderStyle;
|
||
|
}
|
||
|
|
||
|
void Panel::SetBorderStyle(BorderStyle Value)
|
||
|
{
|
||
|
this->_BorderStyle = Value;
|
||
|
UpdateStyles();
|
||
|
}
|
||
|
|
||
|
void Panel::AddControl(Control* Ctrl)
|
||
|
{
|
||
|
Control::AddControl(Ctrl);
|
||
|
}
|
||
|
|
||
|
CreateParams Panel::GetCreateParams()
|
||
|
{
|
||
|
auto Cp = Control::GetCreateParams();
|
||
|
|
||
|
Cp.ClassName = "PANEL";
|
||
|
Cp.ExStyle |= WS_EX_CONTROLPARENT;
|
||
|
|
||
|
Cp.ExStyle &= (~WS_EX_CLIENTEDGE);
|
||
|
Cp.Style &= (~WS_BORDER);
|
||
|
|
||
|
switch (_BorderStyle)
|
||
|
{
|
||
|
case BorderStyle::Fixed3D:
|
||
|
Cp.ExStyle |= WS_EX_CLIENTEDGE;
|
||
|
break;
|
||
|
case BorderStyle::FixedSingle:
|
||
|
Cp.Style |= WS_BORDER;
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
return Cp;
|
||
|
}
|
||
|
}
|