You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As discussed on Discord, it would be neat to add additional cosmetic features allowing users to specify a custom border/corner radius that is applied to the GraphNode instances and optionally specify gradient title bars.
Border/Corner Radius
We probably should limit this to a range, perhaps 0-24 or maybe even 0-16. Going above those upper bounds will likely distort the application's visual fidelity just due to how these work. Additionally, border/corner radius values cannot be applied to gradient title boxes. This is a Godot limitation with how StyleBox objects work.
Gradient Title Bars
Gradient title bars work by applying a StyleBoxTexture2D rather than a StyleBoxFlat theme to the GraphNode. These do not have the same features as the flat style box, particularly, they exclude the ability to set border/corner radius and border colors. This means they don't work well with the border/corner radius concept above, nor will they render well in selection highlighting, which is currently done by shading the node's border with yellow.
For now, when Gradient title bars are enabled, and a node is selected, the Gradient effect is disabled on the node, and it will render as though it's using the flat style box theme so that the selection looks reasonable without shifting the title bar's color to compensate, which may be worse for accessibility reasons.
Implementation ideas
We need to add two new settings to OrchestratorSettings, specifically:
ui/nodes/titlebar/use_gradient/colors
ui/nodes/border_radius
For gradient colors, this will be of the type Variant::BOOL, which will either toggle the behavior on or off. The style box will be created using a StyleBoxTexture2D with an inverted, linear gradient texture based on the node's color defined elsewhere in the settings panel. This option should default to false.
For border-radius, this will be a Variant::INT based on a range of 0-24 with a step range of 1. This option will default to 6, slightly improving the current standard border/corner radius.
The text was updated successfully, but these errors were encountered:
Description
As discussed on Discord, it would be neat to add additional cosmetic features allowing users to specify a custom border/corner radius that is applied to the
GraphNode
instances and optionally specify gradient title bars.Border/Corner Radius
We probably should limit this to a range, perhaps 0-24 or maybe even 0-16. Going above those upper bounds will likely distort the application's visual fidelity just due to how these work. Additionally, border/corner radius values cannot be applied to gradient title boxes. This is a Godot limitation with how StyleBox objects work.
Gradient Title Bars
Gradient title bars work by applying a
StyleBoxTexture2D
rather than aStyleBoxFlat
theme to theGraphNode
. These do not have the same features as the flat style box, particularly, they exclude the ability to set border/corner radius and border colors. This means they don't work well with the border/corner radius concept above, nor will they render well in selection highlighting, which is currently done by shading the node's border with yellow.For now, when Gradient title bars are enabled, and a node is selected, the Gradient effect is disabled on the node, and it will render as though it's using the flat style box theme so that the selection looks reasonable without shifting the title bar's color to compensate, which may be worse for accessibility reasons.
Implementation ideas
We need to add two new settings to
OrchestratorSettings
, specifically:ui/nodes/titlebar/use_gradient/colors
ui/nodes/border_radius
For gradient colors, this will be of the type
Variant::BOOL
, which will either toggle the behavior on or off. The style box will be created using aStyleBoxTexture2D
with an inverted, linear gradient texture based on the node's color defined elsewhere in the settings panel. This option should default tofalse
.For border-radius, this will be a
Variant::INT
based on a range of0-24
with a step range of1
. This option will default to6
, slightly improving the current standard border/corner radius.The text was updated successfully, but these errors were encountered: