You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.6 KiB
Django/Jinja
49 lines
1.6 KiB
Django/Jinja
{####
|
|
# Copyright (c) Contributors to the Open 3D Engine Project.
|
|
# For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
#
|
|
####-#}
|
|
|
|
{% macro Sanitize(text) -%}
|
|
{{text|replace('{', '{')|replace('}', '}')|replace('[', '[')|replace(']', ']')}}
|
|
{%- endmacro -%}
|
|
|
|
{% macro ClearBraces(text) -%}
|
|
{{text|replace('{', '')|replace('}', '')}}
|
|
{%- endmacro -%}
|
|
|
|
{%- macro LinkParent(context, isSplit, parentDoc, alias, uuid) -%}
|
|
{%- if context[uuid] is defined -%}
|
|
{%- if isSplit -%}
|
|
[{{ alias }}|{{ parentDoc }} {{ context[uuid].Name[0]|upper }}#{{ ClearBraces(uuid) }}]
|
|
{%- else -%}
|
|
[{{ alias }}|{{ parentDoc }}#{{ ClearBraces(uuid) }}]
|
|
{%- endif -%}
|
|
{%- else -%}
|
|
{{ alias }}
|
|
{%- endif -%}
|
|
{%- endmacro -%}
|
|
|
|
{%- macro Link(context, config, alias, uuid) -%}
|
|
{%- if config.Filter is defined -%}
|
|
{%- set isSplit = true -%}
|
|
{%- else -%}
|
|
{%- set isSplit = false -%}
|
|
{%- endif -%}
|
|
{{- LinkParent(context, isSplit, config.Document, alias, uuid) -}}
|
|
{%- endmacro -%}
|
|
|
|
{%- macro PrintNamedLink(context, uuid, class, isSplit, parentDoc) -%}
|
|
{% if class.Namespace is defined -%}
|
|
{% set className = "{0}::{1}".format(class.Namespace, class.Name) %}
|
|
{% else -%}
|
|
{% set className = class.Name %}
|
|
{% endif -%}
|
|
{% if class.Id == className -%}
|
|
{{ LinkParent(context, isSplit, parentDoc, Sanitize(className), uuid) }}
|
|
{% else -%}
|
|
{{ LinkParent(context, isSplit, parentDoc, Sanitize(className), uuid) }} - {{ Sanitize(class.Id) }}
|
|
{% endif -%}
|
|
{%- endmacro -%} |