OpenBarnyard
 
Loading...
Searching...
No Matches
AGUIPicture Class Referenceabstract

#include <AGUIPicture.h>

Inheritance diagram for AGUIPicture:
AGUIMatlibPicture

Classes

struct  Image
 
struct  Rectangle
 
struct  SplitRule
 

Public Member Functions

 TDECLARE_CLASS (AGUIPicture, Toshi::TObject)
 
 AGUIPicture ()
 
virtual void SetFlag ()
 
virtual void Render ()
 
virtual void Flush ()=0
 
virtual void Cache ()=0
 
virtual void Create (const Toshi::TPString8 &a_rName)=0
 
void SetVisible ()
 
void SetHidden ()
 
const Toshi::TPString8 & GetName () const
 

Protected Attributes

TINT m_iUnknown1
 
TINT m_iNumRects1
 
TINT m_iNumRects2
 
Rectanglem_pRectangles
 
Imagem_pImages
 
Toshi::TPString8 m_Name
 
TBOOL m_bIsVisible
 
TBOOL m_bFlag
 
TBOOL m_bLoaded
 
TFLOAT m_fUnknown3
 

Static Protected Attributes

static SplitRule split_rules [6]
 

Detailed Description

Definition at line 7 of file AGUIPicture.h.

Constructor & Destructor Documentation

◆ AGUIPicture()

AGUIPicture::AGUIPicture ( )

Definition at line 15 of file AGUIPicture.cpp.

16{
17 m_iUnknown1 = 0;
18 m_iNumRects1 = 0;
19 m_iNumRects2 = 0;
23 m_fUnknown3 = -10.0f;
24}
#define TFALSE
Definition Typedefs.h:24
#define TTRUE
Definition Typedefs.h:25
TBOOL m_bIsVisible
Definition AGUIPicture.h:63
TFLOAT m_fUnknown3
Definition AGUIPicture.h:66
TBOOL m_bFlag
Definition AGUIPicture.h:64
TBOOL m_bLoaded
Definition AGUIPicture.h:65
TINT m_iNumRects2
Definition AGUIPicture.h:59
TINT m_iUnknown1
Definition AGUIPicture.h:57
TINT m_iNumRects1
Definition AGUIPicture.h:58

Member Function Documentation

◆ Cache()

virtual void AGUIPicture::Cache ( )
pure virtual

Implemented in AGUIMatlibPicture.

◆ Create()

virtual void AGUIPicture::Create ( const Toshi::TPString8 & a_rName)
pure virtual

Implemented in AGUIMatlibPicture.

◆ Flush()

virtual void AGUIPicture::Flush ( )
pure virtual

Implemented in AGUIMatlibPicture.

◆ GetName()

const Toshi::TPString8 & AGUIPicture::GetName ( ) const
inline

Definition at line 51 of file AGUIPicture.h.

51{ return m_Name; }
Toshi::TPString8 m_Name
Definition AGUIPicture.h:62

◆ Render()

void AGUIPicture::Render ( )
virtual

Definition at line 74 of file AGUIPicture.cpp.

75{
76 if ( m_bIsVisible )
77 {
78 TFLOAT fWidth, fHeight;
79 AGUI2::GetSingleton()->GetDimensions( fWidth, fHeight );
80
81 AGUI2Transform transform;
82 transform.SetTranslation( 0.0f, 0.0f );
83 transform.Scale( fWidth / 638.0f, fHeight / 477.0f );
84
85 auto pRenderer = AGUI2::GetRenderer();
86 pRenderer->PushTransform( transform, TVector2::VEC_ZERO, TVector2::VEC_ZERO );
87
88 for ( TINT i = 0; i < m_iNumRects1; i++ )
89 {
90 pRenderer->SetMaterial( *m_pRectangles[ i ].ppMaterial );
91 pRenderer->RenderRectangle( m_pRectangles[ i ].Pos1, m_pRectangles[ i ].Pos2, m_pRectangles[ i ].UV1, m_pRectangles[ i ].UV2 );
92 }
93
94 pRenderer->PopTransform();
95 }
96}
float TFLOAT
Definition Typedefs.h:4
int TINT
Definition Typedefs.h:7
constinit static const TVector2 VEC_ZERO
Definition TVector2.h:132
static AGUI2Renderer * GetRenderer()
Definition AGUI2.cpp:239
constexpr void SetTranslation(TFLOAT a_fX, TFLOAT a_fY)
void Scale(TFLOAT a_fScaleX, TFLOAT a_fScaleY)
Rectangle * m_pRectangles
Definition AGUIPicture.h:60

◆ SetFlag()

void AGUIPicture::SetFlag ( )
virtual

Definition at line 69 of file AGUIPicture.cpp.

70{
71 m_bFlag = TTRUE;
72}

◆ SetHidden()

void AGUIPicture::SetHidden ( )
inline

Definition at line 49 of file AGUIPicture.h.

◆ SetVisible()

void AGUIPicture::SetVisible ( )
inline

Definition at line 48 of file AGUIPicture.h.

◆ TDECLARE_CLASS()

AGUIPicture::TDECLARE_CLASS ( AGUIPicture ,
Toshi::TObject  )

Member Data Documentation

◆ m_bFlag

TBOOL AGUIPicture::m_bFlag
protected

Definition at line 64 of file AGUIPicture.h.

◆ m_bIsVisible

TBOOL AGUIPicture::m_bIsVisible
protected

Definition at line 63 of file AGUIPicture.h.

◆ m_bLoaded

TBOOL AGUIPicture::m_bLoaded
protected

Definition at line 65 of file AGUIPicture.h.

◆ m_fUnknown3

TFLOAT AGUIPicture::m_fUnknown3
protected

Definition at line 66 of file AGUIPicture.h.

◆ m_iNumRects1

TINT AGUIPicture::m_iNumRects1
protected

Definition at line 58 of file AGUIPicture.h.

◆ m_iNumRects2

TINT AGUIPicture::m_iNumRects2
protected

Definition at line 59 of file AGUIPicture.h.

◆ m_iUnknown1

TINT AGUIPicture::m_iUnknown1
protected

Definition at line 57 of file AGUIPicture.h.

◆ m_Name

Toshi::TPString8 AGUIPicture::m_Name
protected

Definition at line 62 of file AGUIPicture.h.

◆ m_pImages

Image* AGUIPicture::m_pImages
protected

Definition at line 61 of file AGUIPicture.h.

◆ m_pRectangles

Rectangle* AGUIPicture::m_pRectangles
protected

Definition at line 60 of file AGUIPicture.h.

◆ split_rules

SplitRule AGUIPicture::split_rules[6]
inlinestaticprotected

Definition at line 54 of file AGUIPicture.h.


The documentation for this class was generated from the following files: