![]() |
Blamite Game Engine - Guerilla (Library)
00421.06.29.24.2305.blamite
The tag editor for the Blamite Game Engine.
|
Class representing a dataref plugin field. More...
#include <dataref.h>
Inheritance diagram for BlamPluginField_Dataref:
Collaboration diagram for BlamPluginField_Dataref:Public Member Functions | |
| BlamPluginField_Dataref (BlamPluginField *base_field) | |
| std::string | GenerateXMLString () override |
| Generates a string representing this plugin field. More... | |
| std::string | GenerateCppStructString (std::string line_prefix="", bool generate_doxygen_comments=true) override |
| Generates a string containing C++ code representing this plugin field. More... | |
| std::string | GenerateCppClassString (std::string line_prefix="") override |
| Generates a string containing C++ code representing this plugin field. More... | |
| BlamTagField * | GenerateTagField (BlamTag *tag, void *address) override |
| Generates a new tag field from this plugin field. More... | |
| BlamTagField * | GenerateTagField (BlamTag *tag) override |
| Generates a new tag field from this plugin field. More... | |
| bool | ParseXMLData (rapidxml::xml_node<> *field_node) override |
| Populates data within the plugin field from an XML node. More... | |
| BlamPluginField * | Copy (BlamPlugin *new_plugin) override |
| Creates a copy of this plugin field. More... | |
Public Member Functions inherited from BlamPluginField | |
| BlamPluginField (BlamPlugin *_plugin, BlamTagFieldType _type) | |
| Constructs a new plugin field. More... | |
| BlamPluginField (BlamPluginField *_old_field) | |
| Constructs a new plugin field. More... | |
| BlamTagFieldType | GetType () |
| Retrieves the type of this field. More... | |
| BlamPlugin * | GetPlugin () |
| Retrieves the plugin this field is associated with. More... | |
| virtual BlamTagField * | GenerateTagField (BlamTagField *existing_tag_field) |
| Generates a new tag field from this plugin field. More... | |
| virtual void | UpdateOffsetData (int new_offset) |
| Updates any offsets or lengths for the given field. More... | |
| void | ChangeType (BlamTagFieldType new_type) |
| Changes the type of a plugin field. More... | |
Public Attributes | |
| BlamDatarefValueHintType | value_hint = BlamDatarefValueHintType::NONE |
| A string that can be displayed to indicate the type of data expected within a dataref. More... | |
| bool | single_line_edit = false |
| Whether or not to show a basic, line edit control (similar to ascii) when editing this field. More... | |
Public Attributes inherited from BlamPluginField | |
| int | offset = 0x0 |
| The offset of the field data. More... | |
| int | length = 0x0 |
| The length of the field data. More... | |
| bool | visible = true |
| Whether or not the field is visible. More... | |
| std::string | display_name = "" |
| The display name of the field. More... | |
| std::string | description = "" |
| An optional description of the field. More... | |
| std::string | field_id = "" |
| The ID of the field. More... | |
| std::string | input_hint = "" |
| An additional piece of short text that can be used to suggest valid input for a field. More... | |
| bool | require_unused_visible = false |
| If enabled, this field will only be visible when "Show Unused Fields" is enabled. More... | |
| std::string | default_value = "" |
| The default text value for the field. More... | |
Class representing a dataref plugin field.
Dataref (Data Reference) fields are ideal for storing general-purpose data directly within a tag. This data can be used for anything - game assets, text, etc.
| BlamPluginField_Dataref::BlamPluginField_Dataref | ( | BlamPluginField * | base_field | ) |
Here is the caller graph for this function:
|
overridevirtual |
Creates a copy of this plugin field.
This method will create a duplicate of this plugin field, as well as any child field data. Note that the copied field memory must be managed and freed by the calling code.
| new_plugin | - The new plugin to associate with the copied field. If set to nullptr, then the plugin from the original field is used. |
Reimplemented from BlamPluginField.
Here is the call graph for this function:
|
overridevirtual |
Generates a string containing C++ code representing this plugin field.
This method will generate a string containing C++ code that is intended for use within the BlamTagClass class. This class is used by the game engine to store a tag class layout, allowing for in-engine tools to present a tag data editing UI among other things.
| line_prefix | - A string that should be placed before each line, such as a certain amount of indentation spaces. |
Reimplemented from BlamPluginField.
|
overridevirtual |
Generates a string containing C++ code representing this plugin field.
This method will generate a string containing C++ code that is intended for use within the tag class data structure. This is intended to be used when exporting a tag class to C++ code.
| line_prefix | - A string that should be placed before each line, such as a certain amount of indentation spaces. |
Reimplemented from BlamPluginField.
|
overridevirtual |
Generates a new tag field from this plugin field.
With this overload, a brand new tag field is created with no value.
| tag | - The tag the new field should belong to. |
Reimplemented from BlamPluginField.
|
overridevirtual |
Generates a new tag field from this plugin field.
With this overload, a new field is created and its value(s) are read from the tag data. This should only be used when reading binary (compiled) tag files.
| tag | - The tag the new field should belong to. |
| address | - The address of the field value. |
Reimplemented from BlamPluginField.
Here is the call graph for this function:
|
overridevirtual |
Generates a string representing this plugin field.
Reimplemented from BlamPluginField.
Here is the call graph for this function:
|
overridevirtual |
Populates data within the plugin field from an XML node.
This is intended for use when loading a plugin from an XML document.
| field_node | - Pointer to the XML node to parse plugin field data from. |
true if all required field data was parsed, otherwise returns false. If this returns false, this field should be deleted and should NOT be added to the plugin - as this indicates an issue with the original plugin file. Reimplemented from BlamPluginField.
Here is the call graph for this function:| bool BlamPluginField_Dataref::single_line_edit = false |
Whether or not to show a basic, line edit control (similar to ascii) when editing this field.
| BlamDatarefValueHintType BlamPluginField_Dataref::value_hint = BlamDatarefValueHintType::NONE |
A string that can be displayed to indicate the type of data expected within a dataref.
For more information, see BlamDatarefValueHintType.