ID 327560 - Attribute group orders are reversed in the UI when registering a custom node

Follow

Problem summary
Attribute group orders are reversed in the UI when registering a custom node

Customer reported version
4.0v1
Customer reported platform
n/a
Steps to reproduce

1) Create a Custom Node with multiple attributes such as the example attached.

<Node>

  <ID>SPECIAL_NODE</ID>

  <DefaultName>Reverse Test Node</DefaultName>

  <Attributes>

    <Attribute Name="Color" Group="Group 1" Type="color" >(1.0,1.0,1.0,1)</Attribute>

    <Attribute Name="Image" Group="Group 1" PrettyName="Image" Type="image"></Attribute>

    <Attribute Name="Color" Group="Group 2" Type="color" >(1.0,1.0,1.0,1)</Attribute>

    <Attribute Name="Image" Group="Group 3" PrettyName="Image_Again" Type="image"></Attribute>

  </Attributes>

  <Contexts>

      <Context Type="GLSL">

        <Shader>

          <Body><![CDATA[

                Output = $Color;

          ]]>

          </Body>

        </Shader>

      </Context>

  </Contexts>

</Node>


2) In Mari, register your XML file as a custom node via the Python Console:
mari.gl_render.registerCustomNodeFromXMLFile("Node Name","C:\path\to\node.xml")

3) Create your node in the Node Graph and double click to open the Node Properties palette

4) Notice that your attributes are displayed in reverse order to how they are presented in the .XML file.



Workaround
Unknown.

Reproduced by support
Mari 4.0v1 - Windows 7, CentOS7

Earliest version tested
Last working version: Mari 3.3v1

Expected behaviour
Attribute groups should present in the same order as they are defined in the XML file.

Actual behaviour
Attribute groups were reversed 

    We're sorry to hear that

    Please tell us why