bullet3/test/GwenOpenGLTest/UnitTest.h
erwin coumans 27227e5e4a add SoftDemo examples
add example description for all examples (with word-wrap)
add the VoronoiFractureDemo, note that the collision are disabled after breaking constraints.
add optional GwenOpenGLTest, to make it easier to see Gwen user interface features.
2015-04-27 18:35:07 -07:00

65 lines
1.2 KiB
C++

/*
GWEN
Copyright (c) 2011 Facepunch Studios
See license in Gwen.h
*/
#pragma once
#ifndef GWEN_UNITTEST_UNITTEST_H
#define GWEN_UNITTEST_UNITTEST_H
#include "Gwen/Gwen.h"
#include "Gwen/Align.h"
#include "Gwen/Utility.h"
#include "Gwen/Controls/WindowControl.h"
#include "Gwen/Controls/TabControl.h"
#include "Gwen/Controls/ListBox.h"
class UnitTest;
class GUnit : public Gwen::Controls::Base
{
public:
GWEN_CONTROL_INLINE( GUnit, Gwen::Controls::Base )
{
m_pUnitTest = NULL;
}
void SetUnitTest( UnitTest* u ){ m_pUnitTest = u; }
void UnitPrint( const Gwen::UnicodeString& str );
void UnitPrint( const Gwen::String& str );
UnitTest* m_pUnitTest;
};
class UnitTest : public Gwen::Controls::WindowControl
{
public:
GWEN_CONTROL( UnitTest, Gwen::Controls::WindowControl );
void PrintText( const Gwen::UnicodeString& str );
void Render( Gwen::Skin::Base* skin );
private:
Gwen::Controls::TabControl* m_TabControl;
Gwen::Controls::ListBox* m_TextOutput;
unsigned int m_iFrames;
float m_fLastSecond;
};
#define DEFINE_UNIT_TEST( name, displayname ) GUnit* RegisterUnitTest_##name( Gwen::Controls::TabControl* tab ){ GUnit* u = new name( tab ); tab->AddPage( displayname, u ); return u; }
#endif