Tramway SDK
Classes | Namespaces | Functions | Variables
gui.cpp File Reference
#include <templates/stack.h>
#include <framework/gui.h>
#include <framework/system.h>
#include <framework/logging.h>
#include <framework/event.h>
#include <framework/language.h>
#include <render/api.h>
#include <render/vertices.h>
#include <render/sprite.h>
#include <render/material.h>
#include <cstring>

Classes

struct  tram::GUI::FrameObject
 

Namespaces

namespace  tram::GUI
 Immediate mode GUI system.
 
namespace  tram
 Serialization, i.e.
 

Functions

void tram::GUI::SetSelectedText (char *text)
 Sets the text which is selected in a textbox. More...
 
void tram::GUI::SetColor (Render::color_t color, GlyphType type)
 Sets the color. More...
 
void tram::GUI::SetFont (font_t font, GlyphType type)
 Sets the font. More...
 
void tram::GUI::RestoreColor (GlyphType type)
 Restores previous glyph color. More...
 
void tram::GUI::RestoreFont (GlyphType type)
 Restores previous glyph font. More...
 
void tram::GUI::SetGlyphDefaults (Render::color_t color, font_t font, GlyphType type)
 Overrides glyph default colors and fonts. More...
 
void tram::GUI::SetScaling (uint32_t scale)
 Sets the scaling factor. More...
 
uint32_t tram::GUI::GetScaling ()
 Returns the scaling factor. More...
 
void tram::GUI::SetCursorDelayed (UI::CursorType cursor)
 Sets the cursor. More...
 
void tram::GUI::Init ()
 Performs initialization of the GUI system. More...
 
void tram::GUI::UpdateDrawListFonts ()
 Submits registered fonts to the renderer. More...
 
void tram::GUI::Update ()
 Submits all of the glyphs for rendering. More...
 
font_t tram::GUI::RegisterFont (Render::Sprite *sprite)
 Registers a font. More...
 
void tram::GUI::SetGlyph (float x, float y, float z, float w, float h, float tex_x, float tex_y, float tex_w, float tex_h, const vec3 &color, font_t font)
 Adds a glyph to rendering list. More...
 
uint32_t tram::GUI::GlyphWidth (font_t font, glyph_t glyph)
 
uint32_t tram::GUI::GlyphHeight (font_t font, glyph_t glyph)
 
uint32_t tram::GUI::GlyphBorderV (font_t font, glyph_t glyph)
 
void tram::GUI::DrawGlyph (font_t font, glyph_t glyph, const vec3 &color, uint32_t x, uint32_t y, uint32_t w=0, uint32_t h=0)
 
void tram::GUI::Glyph (font_t font, glyph_t glyph)
 Draws a glyph from a font. More...
 
void tram::GUI::DrawBox (font_t font, glyph_t glyph, uint32_t x, uint32_t y, uint32_t w, uint32_t h)
 Draws a glyph box. More...
 
uint32_t tram::GUI::TextWidth (font_t font, const char *text)
 
void tram::GUI::Text (const char *text, uint32_t orientation)
 Draws text on the screen. More...
 
void tram::GUI::DrawBoxHorizontal (font_t font, glyph_t glyph, uint32_t x, uint32_t y, uint32_t w)
 Draws a horizontal bar. More...
 
void tram::GUI::PushFrame (uint32_t x, uint32_t y, uint32_t w, uint32_t h)
 Pushes a frame. More...
 
void tram::GUI::PushFrameRelative (uint32_t orientation, uint32_t offset)
 Pushes a frame releative to the previous. More...
 
void tram::GUI::PopFrame ()
 Removes a frame from the frame stack. More...
 
void tram::GUI::PushFrameRelativeKeepCursor (uint32_t orientation, uint32_t offset, bool keep_x, bool keep_y)
 Pushes a frame, but keeps the cursor in place. More...
 
void tram::GUI::PopFrameKeepCursor (bool keep_x, bool keep_y)
 
bool tram::GUI::CursorOver (uint32_t x, uint32_t y, uint32_t w, uint32_t h)
 
bool tram::GUI::ClickHandled ()
 
bool tram::GUI::ClickHandledLate ()
 
bool tram::GUI::Clicked ()
 
bool tram::GUI::Button (const char *text, bool enabled, uint32_t width)
 Draws a button. More...
 
bool tram::GUI::RadioButton (uint32_t index, uint32_t &selected, const char *text, bool enabled)
 Draws a radio button. More...
 
bool tram::GUI::CheckBox (bool &selected, const char *text, bool enabled)
 Draws a checkbox. More...
 
bool tram::GUI::Slider (float &value, bool enabled, uint32_t width)
 Draws a horizontal slider. More...
 
void tram::GUI::NewLine (uint32_t line)
 Draws a new line. More...
 
void tram::GUI::HorizontalDivider ()
 Draws a horizontal divider. More...
 
void tram::GUI::FillFrame (glyph_t glyph)
 Fills the frame with a glyph. More...
 
bool tram::GUI::TextBox (char *text, uint32_t length, bool enabled, uint32_t w, uint32_t h)
 Draws a textbox. More...
 
void tram::GUI::TextBox (const char *text, uint32_t w, uint32_t h)
 Draws a textbox. More...
 
void tram::GUI::Begin ()
 Begins the GUI commands for the frame. More...
 
void tram::GUI::End ()
 Ends the GUI commands for the frame. More...
 

Variables

uint32_t tram::GUI::last_update_frame = 0
 
bool tram::GUI::beginned = false
 
bool tram::GUI::mouse_click_not_handled = true
 
bool tram::GUI::mouse_click_not_handled_late = true