The "label", "color" and "comment" properties are not constant anymore,
their changes in value are notified with the internalAttributesChanged()
signal, like the "invalidation" property.
This implies that the connection on "internalAttributesChanged" on the
QML side is not needed anymore.
Setting this attribute allows the user to change the color
of a node, either by directly providing an SVG color name or an
hexadecimal color code, or by picking a color with the selector.
Add two internal attributes, "Comment" and "Invalid comment", in
a specific "Notes" tab, which will contain any further internal
attribute. Internal attributes exist for all nodes.
* allow to solo a 3D media from the GraphEditor by double clicking on a node or an attribute with the Control modifier pressed
* consistent with Viewer3D.MediaLibrary behavior (solo on Ctrl+Click on visibility button)
* handle supported file extensions in Viewer3DSettings
* required for PySide2 > 5.11.1 (and compatible with 5.11.1)
* AttributeItemDelegate: test for list length to determine whether to create a slider component (if range is set to None on Python side, it will be an empty list on the QML/JS side)
* using 'C' locale to ensure floating point values can be written using '.' decimal separator
* make TextField larger by default for numbers and fill width when slider is not defined
* avoid binding loop on height for ListAttributes by using contentHeight as implicitHeight
* add explicitly id for Connections in ComboBox
* NodeEditor
* exposes Node parameters: compatibility, attributes and logs
* provides a placeholder when no active Node
* AttributeEditor
* only displays the list of Attributes
* use 'AttributeEditor' for GroupAttributes in AttributeItemDelegate
* Layout
* move NodeEditor on the same SplitView level as GraphEditor
* move current node name and menu to the Panel's header
* fix reference to non-existing slider.value
* convert values to string to avoid e+XX notation on large numbers
* fix number of decimals based on stepSize to avoid floating point approximations
* bugfix: in latest PySide2 versions, application palette is not properly applied to all QtQuick Controls 2 components. Force this by exposing QApplication palette and bind it to the root ApplicationWindow.
* rename all "palette" ids to "activePalette" to avoid clashes with "palette" property on QtQuick Controls 2
* use parent component palette when it makes sense to propagate active/disabled style (instead of always using Active SystemPalette)
* avoid duplication of code for displaying labels of GroupAttribute's children
* display input/output aligned to the left/right
* add a background to improve readability