Torque3D/Engine/lib/bullet/test/GwenOpenGLTest/TabControl.cpp

67 lines
1.9 KiB
C++
Raw Normal View History

#include "UnitTest.h"
#include "Gwen/Controls/TabControl.h"
#include "Gwen/Controls/RadioButtonController.h"
using namespace Gwen;
class TabControl2 : public GUnit
{
public:
Controls::TabControl* m_pDockControlLeft;
GWEN_CONTROL_INLINE(TabControl2, GUnit)
{
{
m_pDockControlLeft = new Controls::TabControl(this);
m_pDockControlLeft->SetBounds(10, 10, 200, 200);
{
Controls::TabButton* pButton = m_pDockControlLeft->AddPage(L"Controls");
Base* pPage = pButton->GetPage();
{
Controls::RadioButtonController* pRadio = new Controls::RadioButtonController(pPage);
pRadio->SetBounds(10, 10, 100, 100);
pRadio->AddOption("Top")->Select();
pRadio->AddOption("Bottom");
pRadio->AddOption("Left");
pRadio->AddOption("Right");
pRadio->onSelectionChange.Add(this, &ThisClass::OnDockChange);
}
}
m_pDockControlLeft->AddPage(L"Red");
m_pDockControlLeft->AddPage(L"Green");
m_pDockControlLeft->AddPage(L"Blue");
}
{
Controls::TabControl* pDragMe = new Controls::TabControl(this);
pDragMe->SetBounds(220, 10, 200, 200);
pDragMe->AddPage(L"You");
pDragMe->AddPage(L"Can");
pDragMe->AddPage(L"Reorder")->SetImage(L"test16.png");
pDragMe->AddPage(L"These");
pDragMe->AddPage(L"Tabs");
pDragMe->SetAllowReorder(true);
}
}
void OnDockChange(Gwen::Controls::Base* pControl)
{
Gwen::Controls::RadioButtonController* rc = (Gwen::Controls::RadioButtonController*)pControl;
if (rc->GetSelectedLabel() == L"Top") m_pDockControlLeft->SetTabStripPosition(Pos::Top);
if (rc->GetSelectedLabel() == L"Bottom") m_pDockControlLeft->SetTabStripPosition(Pos::Bottom);
if (rc->GetSelectedLabel() == L"Left") m_pDockControlLeft->SetTabStripPosition(Pos::Left);
if (rc->GetSelectedLabel() == L"Right") m_pDockControlLeft->SetTabStripPosition(Pos::Right);
}
Gwen::Font m_Font;
};
DEFINE_UNIT_TEST(TabControl2, L"TabControl");