![]() |
Blamite Game Engine - Blam (Core)
|
Class containing data for a text object using DirectWrite. More...
#include <render_stack.h>
Public Member Functions | |
DWText () | |
Sets the stack type and default zone color. More... | |
~DWText () | |
Empty destructor. More... | |
void | Draw () |
Draws the stack object. More... | |
void | ShowImPropertyEditor () |
Shows a set of ImGUI properties associated with the object. More... | |
void | SetText (std::string new_text) |
Sets the text to display. More... | |
void | SetFont (std::string new_font_name) |
Sets the font to use for the text. More... | |
void | ShowZoneEdge (bool show) |
Enables or disables the display of the text area bounds. More... | |
void | SetZoneColor (float new_color[3]) |
Sets the color to use for the zone edge. More... | |
void | SetZoneColor (float r, float g, float b) |
Sets the color to use for the zone edge. More... | |
void | SetZoneColor (float r, float g, float b, float a) |
Sets the color to use for the zone edge. More... | |
void | SetZoneColor (D2D1::ColorF color) |
Sets the color to use for the zone edge. More... | |
void | SetFontSize (float new_size) |
Sets the size to use for the font. More... | |
void | SetZoneThickness (float new_thickness) |
Sets the thickness of the zone edge. More... | |
![]() | |
StackObjectBase () | |
Sets default values and provides a default ID to be used if none is provided. More... | |
~StackObjectBase () | |
Empty destructor. More... | |
virtual void | HandleResize () |
Called upon window resize events. More... | |
void | SetArea (float new_area[4]) |
Sets the area of the object. More... | |
void | SetArea (float top, float bottom, float left, float right) |
Sets the area of the object. More... | |
void | SetArea (D2D1_RECT_F new_area) |
Sets the area of the object. More... | |
void | SetColor (float new_color[3]) |
Sets the color of the object. More... | |
void | SetColor (float r, float g, float b) |
Sets the color of the object. More... | |
void | SetColor (float r, float g, float b, float a) |
Sets the color of the object. More... | |
void | SetColor (D2D1::ColorF color) |
Sets the color of the object. More... | |
void | SetZOrder (int z) |
Sets the Z-Order of the object. More... | |
void | SetTranslation (float new_x, float new_y) |
Sets the translation of the object. More... | |
void | PokeTranslation () |
Updates the area of the object to account for any x/y coordinate changes. More... | |
void | SetSize (float new_width, float new_height) |
Sets the size of the object. More... | |
void | PokeSize () |
Updates the area of the object to account for any width/height changes. More... | |
void | ValidateSizeAndTranslation () |
Validates X/Y coordinates and Width/Height sizes after the area has been modified. More... | |
std::string | GetType () |
Retrieves the type of item that this stack object is. More... | |
std::string | GetDrawModeLabel () |
Retrieves the current drawing mode of the object. More... | |
Public Attributes | |
std::wstring | text = L"generic text" |
The current text to display. More... | |
std::wstring | font_name = L"Comic Sans MS" |
The current font name. Defaults to Comic Sans MS. :lmao: More... | |
float | font_size = 12 |
The size of the text. More... | |
bool | show_zone = false |
Whether or not to show the text zone. More... | |
D2D1_COLOR_F | zone_color |
The color to use for the zone border. More... | |
float | zone_thickness = 1 |
The thickness of the zone border. More... | |
bool | use_engine_font = false |
Whether to use a font within the engine or a system font. More... | |
std::string | engine_font_id = "" |
The ID of the font collection to use. More... | |
IDWriteFontCollection * | font_collection |
The thickness of the zone border. More... | |
char | text_buffer [1024] = "" |
Text buffer for ImGUI editor. More... | |
char | font_buffer [256] = "" |
Font name buffer for ImGUI editor. More... | |
bool | auto_calculate_area = false |
Whether or not to automatically calculate the area for the text. More... | |
![]() | |
D2D1_RECT_F | area |
The area of the object. More... | |
D2D1_COLOR_F | color |
The color of the object. More... | |
int | z_order = 0 |
The Z-Order of the object. More... | |
StackType | type_label = STACKTYPE_GENERIC |
The type of the object. More... | |
StackItemDrawMode | draw_mode = DEFAULT_DRAWMODE |
The drawing mode of the object. More... | |
bool | visible = true |
Whether or not the object is visible. More... | |
float | x = 0 |
The X coordinate of the object. More... | |
float | y = 0 |
The Y coordinate of the object. More... | |
float | width = 100 |
The width of the object. More... | |
float | height = 100 |
The height of the object. More... | |
std::string | unique_id = "" |
The unique ID of this object. More... | |
Class containing data for a text object using DirectWrite.
|
inline |
Sets the stack type and default zone color.
|
inline |
Empty destructor.
|
virtual |
Draws the stack object.
Specific functionality may vary depending on the type of object.
Reimplemented from BlamRendering::RenderStack::StackObjectBase.
void BlamRendering::RenderStack::DWText::SetFont | ( | std::string | new_font_name | ) |
Sets the font to use for the text.
new_font_name | - The name of the font to use. |
void BlamRendering::RenderStack::DWText::SetFontSize | ( | float | new_size | ) |
Sets the size to use for the font.
new_size | - The new size of the font. |
void BlamRendering::RenderStack::DWText::SetText | ( | std::string | new_text | ) |
Sets the text to display.
new_text | - The new text to display. |
void BlamRendering::RenderStack::DWText::SetZoneColor | ( | D2D1::ColorF | color | ) |
Sets the color to use for the zone edge.
color | - The new color of the zone edge. |
void BlamRendering::RenderStack::DWText::SetZoneColor | ( | float | new_color[3] | ) |
Sets the color to use for the zone edge.
new_color | - The new color of the zone edge. Items must be in the following order:
|
void BlamRendering::RenderStack::DWText::SetZoneColor | ( | float | r, |
float | g, | ||
float | b | ||
) |
Sets the color to use for the zone edge.
r | - The Red value of the color. |
g | - The Green value of the color. |
b | - The Blue value of the color. |
void BlamRendering::RenderStack::DWText::SetZoneColor | ( | float | r, |
float | g, | ||
float | b, | ||
float | a | ||
) |
Sets the color to use for the zone edge.
r | - The Red value of the color. |
g | - The Green value of the color. |
b | - The Blue value of the color. |
a | - The Alpha value of the color. |
void BlamRendering::RenderStack::DWText::SetZoneThickness | ( | float | new_thickness | ) |
Sets the thickness of the zone edge.
new_thickness | - The new thickness of the zone edge. |
|
virtual |
Shows a set of ImGUI properties associated with the object.
This will call functions to draw only the property controls for the item, and nothing else. The window/container for the properties must be handled externally.
Reimplemented from BlamRendering::RenderStack::StackObjectBase.
void BlamRendering::RenderStack::DWText::ShowZoneEdge | ( | bool | show | ) |
Enables or disables the display of the text area bounds.
show | - Whether or not to display the zone edge. |
bool BlamRendering::RenderStack::DWText::auto_calculate_area = false |
Whether or not to automatically calculate the area for the text.
std::string BlamRendering::RenderStack::DWText::engine_font_id = "" |
The ID of the font collection to use.
char BlamRendering::RenderStack::DWText::font_buffer[256] = "" |
Font name buffer for ImGUI editor.
IDWriteFontCollection* BlamRendering::RenderStack::DWText::font_collection |
The thickness of the zone border.
std::wstring BlamRendering::RenderStack::DWText::font_name = L"Comic Sans MS" |
The current font name. Defaults to Comic Sans MS. :lmao:
float BlamRendering::RenderStack::DWText::font_size = 12 |
The size of the text.
bool BlamRendering::RenderStack::DWText::show_zone = false |
Whether or not to show the text zone.
std::wstring BlamRendering::RenderStack::DWText::text = L"generic text" |
The current text to display.
char BlamRendering::RenderStack::DWText::text_buffer[1024] = "" |
Text buffer for ImGUI editor.
bool BlamRendering::RenderStack::DWText::use_engine_font = false |
Whether to use a font within the engine or a system font.
D2D1_COLOR_F BlamRendering::RenderStack::DWText::zone_color |
The color to use for the zone border.
float BlamRendering::RenderStack::DWText::zone_thickness = 1 |
The thickness of the zone border.