added main menus, improved shading

This commit is contained in:
2025-07-18 20:37:52 +03:00
parent dddf1b5881
commit 070c3ff309
45 changed files with 859 additions and 271 deletions

View File

@@ -31,6 +31,8 @@ public:
static void Frame( void );
static void AppendWidget( CFGUI_Widget *pWidget );
static void DestroyWidget( CFGUI_Widget *pWidget );
static void AddOffset( float x, float y);
static void ResetOffset();
static void SetRectColor( float r, float g, float b, float a );
static void DrawRect( int32_t iPosX, int32_t iPosY, uint32_t uSizeX, uint32_t uSizeY );
@@ -38,6 +40,7 @@ public:
static CFont *LoadFont( CUtlString szFontPath );
static void SetTextFont( CFont *pFont );
static void SetTextPos( float x, float y );
static void SetGlyphScale( float x, float y );
static void SetTextColor( float r, float g, float b, float a );
static void DrawText( CUtlString psz );
};

View File

@@ -10,17 +10,21 @@ public:
CFGUI_Label();
~CFGUI_Label();
CUtlString m_szText;
float m_fLabelColor[3];
void SetFont( CUtlString font );
void SetColor( float r, float g, float b );
void SetLabel( CUtlString text );
void SetLabelSize( uint32_t nSize );
void SetGlyphSize( uint32_t nSize );
void SetGlyphSize( uint32_t nSizeX, uint32_t nSizeY );
virtual void Event( FGUI_Event_t event ) override;
virtual void Draw() override;
virtual void Frame() override;
private:
CUtlString m_szText;
float m_fLabelColor[3];
float m_fGlyphScale[2] = {1,1};
CFont *m_pFont;
};

View File

@@ -9,6 +9,7 @@ public:
virtual void Event( FGUI_Event_t event ) override;
virtual void Draw() override;
virtual void Frame() override;
float m_fBoxColor[4];
};

View File

@@ -3,6 +3,7 @@
#include "tier0/platform.h"
#include "fgui.h"
#include <cstdint>
class CFGUI_Widget
{
@@ -15,14 +16,18 @@ public:
void SetSize( uint32_t nX, uint32_t nY );
void SetParent( CFGUI_Widget *pParent );
void ComputeOffset( );
bool IsVisible( );
virtual void Event( FGUI_Event_t event ) = 0;
virtual void Draw() = 0;
virtual void Frame() = 0;
virtual void SetVisibility( bool bValue );
static void SetDefaultParent(CFGUI_Widget *pParent);
int32_t m_iPosition[2];
uint32_t m_iSize[2];
CFGUI_Widget *m_pParent;
CFGUI_Widget *m_pParent = NULL;
bool m_bIsVisible = true;
};
#endif