Merge branch 'RuanLucasGD-master'
This commit is contained in:
@@ -55,6 +55,24 @@ Tag Tags::Get(const StringView& tagName)
|
|||||||
return tag;
|
return tag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Array<Tag> Tags::GetSubTags(Tag parentTag)
|
||||||
|
{
|
||||||
|
Array<Tag> subTags;
|
||||||
|
const String& parentTagName = parentTag.ToString();
|
||||||
|
|
||||||
|
for (int i = 0; i < Tags::List.Count(); i++)
|
||||||
|
{
|
||||||
|
const Tag tag = Tag(i + 1);
|
||||||
|
const String& tagName = Tags::List[i];
|
||||||
|
if (tagName.StartsWith(parentTagName) && parentTag.Index != tag.Index)
|
||||||
|
{
|
||||||
|
subTags.Add(tag);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return subTags;
|
||||||
|
}
|
||||||
|
|
||||||
bool Tags::HasTag(const Array<Tag>& list, const Tag tag)
|
bool Tags::HasTag(const Array<Tag>& list, const Tag tag)
|
||||||
{
|
{
|
||||||
if (tag.Index == 0)
|
if (tag.Index == 0)
|
||||||
|
|||||||
@@ -92,6 +92,13 @@ API_CLASS(Static) class FLAXENGINE_API Tags
|
|||||||
/// <returns>The tag.</returns>
|
/// <returns>The tag.</returns>
|
||||||
API_FUNCTION() static Tag Get(const StringView& tagName);
|
API_FUNCTION() static Tag Get(const StringView& tagName);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get all subtags of the specific Tag
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="tag"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
API_FUNCTION() static Array<Tag> GetSubTags(Tag tag);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Checks if the list of tags contains a given tag (including parent tags check). For example, HasTag({"A.B"}, "A") returns true, for exact check use HasTagExact.
|
/// Checks if the list of tags contains a given tag (including parent tags check). For example, HasTag({"A.B"}, "A") returns true, for exact check use HasTagExact.
|
||||||
|
|||||||
Reference in New Issue
Block a user