From c58648d6633e2a7323f6e85def44da9ea8630886 Mon Sep 17 00:00:00 2001
From: Emre Dogan <48212096+EmreDogann@users.noreply.github.com>
Date: Sun, 8 Oct 2023 20:08:19 +0100
Subject: [PATCH] Fixed group resizing code to not jitter anymore. Can now
adjust color of group node resize icon. Changed header label rendering to
always be vertically centered. Changed group node style. Changed rename text
field style.
---
Scripts/Editor/NodeEditor.cs | 2 +-
Scripts/Editor/NodeEditorAction.cs | 3 +-
Scripts/Editor/NodeEditorGUI.cs | 21 +++--
Scripts/Editor/NodeEditorPreferences.cs | 5 ++
Scripts/Editor/NodeEditorResources.cs | 9 ++-
Scripts/Editor/NodeGroupEditor.cs | 76 ++++++++++++++----
Scripts/Editor/RenameTextField.cs | 4 +
Scripts/Editor/Resources/xnode_corner.png | Bin 16041 -> 5472 bytes
.../Editor/Resources/xnode_corner.png.meta | 14 ++--
Scripts/Editor/Resources/xnode_corner.xcf | Bin 0 -> 5554 bytes
.../Editor/Resources/xnode_corner.xcf.meta | 7 ++
Scripts/NodeGroup.cs | 4 +-
12 files changed, 103 insertions(+), 42 deletions(-)
create mode 100644 Scripts/Editor/Resources/xnode_corner.xcf
create mode 100644 Scripts/Editor/Resources/xnode_corner.xcf.meta
diff --git a/Scripts/Editor/NodeEditor.cs b/Scripts/Editor/NodeEditor.cs
index ba5a7f2..7976904 100644
--- a/Scripts/Editor/NodeEditor.cs
+++ b/Scripts/Editor/NodeEditor.cs
@@ -31,7 +31,7 @@ namespace XNodeEditor
public virtual void OnHeaderGUI()
{
- GUILayout.Label(target.name, NodeEditorResources.styles.nodeHeaderLabel, GUILayout.Height(30));
+ GUILayout.Label(target.name, NodeEditorResources.styles.nodeHeaderLabel);
}
/// Draws standard field editors for all public fields
diff --git a/Scripts/Editor/NodeEditorAction.cs b/Scripts/Editor/NodeEditorAction.cs
index b8ef971..63682c9 100644
--- a/Scripts/Editor/NodeEditorAction.cs
+++ b/Scripts/Editor/NodeEditorAction.cs
@@ -918,7 +918,8 @@ namespace XNodeEditor
width = 200;
}
- Rect windowRect = new Rect(nodePos, new Vector2(width / zoom, 30 / zoom));
+ Rect windowRect = new Rect(nodePos, new Vector2(width / zoom, NodeEditor.GetEditor(node, current)
+ .GetHeaderStyle().fixedHeight / zoom));
return windowRect.Contains(mousePos);
}
diff --git a/Scripts/Editor/NodeEditorGUI.cs b/Scripts/Editor/NodeEditorGUI.cs
index a3f7c07..169ed38 100755
--- a/Scripts/Editor/NodeEditorGUI.cs
+++ b/Scripts/Editor/NodeEditorGUI.cs
@@ -688,12 +688,12 @@ namespace XNodeEditor
if (selected)
{
- GUIStyle style = new GUIStyle(nodeEditor.GetBodyStyle());
+ GUIStyle styleBody = new GUIStyle(nodeEditor.GetBodyStyle());
GUIStyle highlightStyle = new GUIStyle(nodeEditor.GetBodyHighlightStyle());
- highlightStyle.padding = style.padding;
- style.padding = new RectOffset();
+ highlightStyle.padding = styleBody.padding;
+ styleBody.padding = new RectOffset();
GUI.color = nodeEditor.GetTint();
- GUILayout.BeginVertical(style);
+ GUILayout.BeginVertical(styleBody);
GUI.color = NodeEditorPreferences.GetSettings().highlightColor;
GUILayout.BeginVertical(new GUIStyle(highlightStyle));
}
@@ -706,22 +706,21 @@ namespace XNodeEditor
EditorGUI.BeginChangeCheck();
//Draw node contents
+ GUI.color = nodeEditor.GetHeaderColor();
+ GUIStyle styleHeader = new GUIStyle(nodeEditor.GetHeaderStyle());
+ GUILayout.BeginVertical(styleHeader);
+ GUI.color = guiColor;
if (currentActivity == NodeActivity.Renaming && Selection.activeObject == node)
{
RenameTextField.current.DrawRenameTextField();
}
else
{
- GUI.color = nodeEditor.GetHeaderColor();
- GUIStyle style = new GUIStyle(nodeEditor.GetHeaderStyle());
- GUILayout.BeginVertical(style);
-
- GUI.color = guiColor;
nodeEditor.OnHeaderGUI();
-
- GUILayout.EndVertical();
}
+ GUILayout.EndVertical();
+
GUI.color = nodeEditor.GetBodyColor();
GUIStyle bodyStyle = new GUIStyle(nodeEditor.GetBodyStyle());
GUILayout.BeginVertical(bodyStyle);
diff --git a/Scripts/Editor/NodeEditorPreferences.cs b/Scripts/Editor/NodeEditorPreferences.cs
index 3090676..9141e6f 100644
--- a/Scripts/Editor/NodeEditorPreferences.cs
+++ b/Scripts/Editor/NodeEditorPreferences.cs
@@ -71,6 +71,8 @@ namespace XNodeEditor
public Color32 bgPortsColor = new Color32(65, 67, 70, 255);
public Color32 bgBodyColor = new Color32(65, 67, 70, 255);
public Color32 highlightColor = new Color32(255, 255, 255, 255);
+ public Color32 resizeIconColor = new Color32(255, 255, 255, 26);
+ public Color32 resizeIconHoverColor = new Color32(255, 255, 255, 100);
public bool gridSnap = true;
public bool autoSave = true;
public bool openOnCreate = true;
@@ -276,6 +278,9 @@ namespace XNodeEditor
settings.bgHeaderColor = EditorGUILayout.ColorField("Header Background", settings.bgHeaderColor);
settings.bgPortsColor = EditorGUILayout.ColorField("Ports Background", settings.bgPortsColor);
settings.bgBodyColor = EditorGUILayout.ColorField("Body Background", settings.bgBodyColor);
+ settings.resizeIconColor = EditorGUILayout.ColorField("Resize Icon Color", settings.resizeIconColor);
+ settings.resizeIconHoverColor =
+ EditorGUILayout.ColorField("Resize Icon Hover Color", settings.resizeIconHoverColor);
settings.highlightColor = EditorGUILayout.ColorField("Selection", settings.highlightColor);
EditorGUILayout.Space();
settings.noodlePath = (NoodlePath)EditorGUILayout.EnumPopup("Noodle path", settings.noodlePath);
diff --git a/Scripts/Editor/NodeEditorResources.cs b/Scripts/Editor/NodeEditorResources.cs
index 7c7be4e..5f8ed33 100644
--- a/Scripts/Editor/NodeEditorResources.cs
+++ b/Scripts/Editor/NodeEditorResources.cs
@@ -64,14 +64,15 @@ namespace XNodeEditor
nodeHeaderLabel = new GUIStyle();
nodeHeaderLabel.alignment = TextAnchor.MiddleCenter;
nodeHeaderLabel.fontStyle = FontStyle.Bold;
+ nodeHeaderLabel.stretchHeight = true;
nodeHeaderLabel.normal.textColor = Color.white;
nodeHeaderLabelRename = new GUIStyle(GUI.skin.textField);
nodeHeaderLabelRename.alignment = TextAnchor.MiddleCenter;
nodeHeaderLabelRename.fontStyle = FontStyle.Bold;
+ nodeHeaderLabelRename.stretchHeight = true;
nodeHeaderLabelRename.normal.textColor = Color.white;
- nodeHeaderLabelRename.fixedHeight = 18;
- nodeHeaderLabelRename.margin = new RectOffset(5, 5, 10, 8);
+ nodeHeaderLabelRename.margin = new RectOffset(24, 24, 8, 2);
nodePadding = new GUIStyle();
nodePadding.padding = new RectOffset(16, 16, 3, 16);
@@ -79,8 +80,8 @@ namespace XNodeEditor
nodeHeader = new GUIStyle();
nodeHeader.normal.background = NodeEditorResources.nodeHeader;
nodeHeader.border = new RectOffset(32, 32, 16, 0);
- // nodeHeader.fixedHeight = 27;
- nodeHeader.padding = new RectOffset(0, 0, 1, 0);
+ nodeHeader.fixedHeight = 28;
+ nodeHeader.padding = new RectOffset(0, 0, 6, 0);
// nodeHeader.padding = new RectOffset(16, 16, 3, 16);
nodePorts = new GUIStyle();
diff --git a/Scripts/Editor/NodeGroupEditor.cs b/Scripts/Editor/NodeGroupEditor.cs
index f23a1bf..7c3816d 100644
--- a/Scripts/Editor/NodeGroupEditor.cs
+++ b/Scripts/Editor/NodeGroupEditor.cs
@@ -16,6 +16,7 @@ namespace XNodeEditor.NodeGroups
_corner != null ? _corner : _corner = Resources.Load("xnode_corner");
private static Texture2D _corner;
private bool _isResizing;
+ private bool _isResizeHovering;
private Vector2 _size;
private float _currentHeight;
private Vector2 _draggingOffset;
@@ -26,17 +27,24 @@ namespace XNodeEditor.NodeGroups
private const int mouseRectMargin = 30;
private GUIStyle headerStyle;
+ private GUIStyle headerLabelStyle;
public override void OnCreate()
{
_currentHeight = group.height;
- headerStyle = new GUIStyle(NodeEditorResources.styles.nodeHeaderLabel);
- headerStyle.fontSize = 18;
+ headerLabelStyle = new GUIStyle(NodeEditorResources.styles.nodeHeaderLabel);
+ headerLabelStyle.fontSize = 24;
+
+ headerStyle = new GUIStyle(NodeEditorResources.styles.nodeHeader);
+ headerStyle.fixedHeight += 18;
}
public override void OnHeaderGUI()
{
- GUILayout.Label(target.name, headerStyle, GUILayout.Height(30));
+ Color initColor = GUI.contentColor;
+ GUI.contentColor = new Color(0.6f, 0.6f, 0.6f, 1.0f);
+ GUILayout.Label(target.name, headerLabelStyle);
+ GUI.contentColor = initColor;
}
public override void OnBodyGUI()
@@ -45,11 +53,37 @@ namespace XNodeEditor.NodeGroups
Event e = Event.current;
switch (e.type)
{
+ case EventType.MouseMove:
+ if (NodeEditorWindow.current.nodeSizes.TryGetValue(target, out _size))
+ {
+ bool initHovering = _isResizeHovering;
+ // Mouse position checking is in node local space
+ Rect lowerRight = new Rect(_size.x - (mouseRectMargin + mouseRectPadding),
+ _size.y - (mouseRectMargin + mouseRectPadding), mouseRectMargin, mouseRectMargin);
+ if (lowerRight.Contains(e.mousePosition))
+ {
+ _isResizeHovering = true;
+ }
+ else
+ {
+ _isResizeHovering = false;
+ }
+
+ if (initHovering != _isResizeHovering)
+ {
+ NodeEditorWindow.current.Repaint();
+ }
+ }
+
+ break;
case EventType.MouseDrag:
if (_isResizing)
{
- group.width = Mathf.Max(200, (int)e.mousePosition.x + (int)_draggingOffset.x + 16);
- group.height = Mathf.Max(100, (int)e.mousePosition.y + (int)_draggingOffset.y - 34);
+ group.width = (int)Mathf.Max(200,
+ e.mousePosition.x + _draggingOffset.x + (mouseRectMargin + mouseRectPadding));
+ // magic numbers - otherwise resizing will jump vertically.
+ group.height = (int)Mathf.Max(100,
+ e.mousePosition.y + _draggingOffset.y - (31 + (30 - mouseRectMargin)));
_currentHeight = group.height;
NodeEditorWindow.current.Repaint();
}
@@ -78,8 +112,7 @@ namespace XNodeEditor.NodeGroups
if (lowerRight.Contains(e.mousePosition))
{
_isResizing = true;
- _draggingOffset = _size - e.mousePosition - new Vector2(GetBodyStyle().padding.right,
- GetBodyStyle().padding.bottom);
+ _draggingOffset = lowerRight.position - e.mousePosition;
}
}
@@ -166,17 +199,23 @@ namespace XNodeEditor.NodeGroups
}
GUILayout.Space(_currentHeight);
- GUI.DrawTexture(new Rect(group.width - 34, group.height + 16, 24, 24), corner);
- }
- public override void OnRenameActive()
- {
- _currentHeight += 30 - NodeEditorResources.styles.nodeHeaderLabelRename.fixedHeight -
- NodeEditorResources.styles.nodeHeaderLabelRename.margin.top +
- NodeEditorResources.styles.nodeHeaderLabelRename.margin.bottom / 2;
+ if (NodeEditorWindow.current.nodeSizes.TryGetValue(target, out _size))
+ {
+ Color initColor = GUI.color;
+ GUI.color = _isResizeHovering
+ ? NodeEditorPreferences.GetSettings().resizeIconHoverColor
+ : NodeEditorPreferences.GetSettings().resizeIconColor;
+ GUI.DrawTexture(
+ new Rect(_size.x - (mouseRectMargin + mouseRectPadding),
+ _size.y - (mouseRectMargin + mouseRectPadding),
+ 24,
+ 24),
+ corner);
+ GUI.color = initColor;
+ }
}
-
public override void OnRenameDeactive()
{
_currentHeight = group.height;
@@ -187,11 +226,16 @@ namespace XNodeEditor.NodeGroups
return group.width;
}
- public override GUIStyle GetHeaderLabelStyle()
+ public override GUIStyle GetHeaderStyle()
{
return headerStyle;
}
+ public override GUIStyle GetHeaderLabelStyle()
+ {
+ return headerLabelStyle;
+ }
+
public static void AddMouseRect(Rect rect, MouseCursor mouseCursor)
{
EditorGUIUtility.AddCursorRect(rect, mouseCursor);
diff --git a/Scripts/Editor/RenameTextField.cs b/Scripts/Editor/RenameTextField.cs
index 95138f3..8bd701b 100644
--- a/Scripts/Editor/RenameTextField.cs
+++ b/Scripts/Editor/RenameTextField.cs
@@ -38,6 +38,10 @@ namespace XNodeEditor
GUIStyle stylesNodeHeaderRename = NodeEditorResources.styles.nodeHeaderLabelRename;
stylesNodeHeaderRename.fontSize =
NodeEditor.GetEditor((Node)target, NodeEditorWindow.current).GetHeaderLabelStyle().fontSize;
+ stylesNodeHeaderRename.fixedHeight = NodeEditor.GetEditor((Node)target, NodeEditorWindow.current)
+ .GetHeaderLabelStyle().fixedHeight;
+ stylesNodeHeaderRename.padding = NodeEditor.GetEditor((Node)target, NodeEditorWindow.current)
+ .GetHeaderLabelStyle().padding;
input = GUILayout.TextField(input, stylesNodeHeaderRename);
EditorGUI.FocusTextInControl(inputControlName);
diff --git a/Scripts/Editor/Resources/xnode_corner.png b/Scripts/Editor/Resources/xnode_corner.png
index 12d25faf2759fea34844b56ce2ed47c84409f84f..31fbf1cb699a770c99fef7e7800dc54afde38ad5 100644
GIT binary patch
literal 5472
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
T`IvoRZisgF0?h}r@+
diff --git a/Scripts/Editor/Resources/xnode_corner.png.meta b/Scripts/Editor/Resources/xnode_corner.png.meta
index 5b45fe5..fd8222b 100644
--- a/Scripts/Editor/Resources/xnode_corner.png.meta
+++ b/Scripts/Editor/Resources/xnode_corner.png.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 0babe8a4377248fcacd576e5da1a27e5
+guid: d129eb4a5ff1c8a40a23ef0e54de1fa9
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
@@ -63,16 +63,16 @@ TextureImporter:
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
- applyGammaDecoding: 1
+ applyGammaDecoding: 0
swizzle: 50462976
- cookieLightType: 2
+ cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
- textureCompression: 1
+ textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
@@ -85,7 +85,7 @@ TextureImporter:
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
- textureCompression: 0
+ textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
@@ -98,7 +98,7 @@ TextureImporter:
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
- textureCompression: 0
+ textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
@@ -111,7 +111,7 @@ TextureImporter:
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
- textureCompression: 0
+ textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
diff --git a/Scripts/Editor/Resources/xnode_corner.xcf b/Scripts/Editor/Resources/xnode_corner.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..fb5990d9327ca39149b6115f6c2e06e70b3e5389
GIT binary patch
literal 5554
zcmds54RBP|6~6nE{mbTmlkgMZx&f0kyv^=r^Rpq@7?Oywq(%rP5ma8@-rYRNzPG%6
z2^&X6ZK*9C7308Yi_^4fYcp6Fs}_GM(u%cGDzvm6nL>5i=@g5O(;^Uzc|G^-Zg#^2
z6GWY9&*t3o-Sf`5_uO;teLo5Ep)ihe0X*n*xeySJvj*f&;2dBL?c@S41YV$pMyEDZ
zy?{2^w3|&)9e2x+Y{iBezGEQW_9KG-K?
zm)GmXO@6VL;MGGBnS>&^P2fZ+EK00Q{9qfOgSut3h%#Qm@&a}{mr%v$Ni>hK@sjyT
z>XI{Y1JYourzSBQVdO;Dpbo^MEocNCM5i@{nikD~<|)ldZGm=`cDwe7E>G8^`+@GX
z-mCwX{&<=rZEM;|gV(UraMsvme92@tZ8M!Qv*sg~Cd;$wW$7c}uwtHbu-Ob%=qw5~M<>g!7S#MyO-kZ3)
z{kzHAK~rBX&u@5aglX6ZOfeoqWjUL7Pjy_Qq
zBYk2Rw>3B8=z|mstQI5
z_OjTi{#<2nxp$h&F0B6ONtM(~4
z2B#X+m~AQR2oag}voafBi>a-?F&gT}gG7q(qR>#{ayUycfrIUbkQz$XbY9EUmNfb-
z^$ACx1><^|4Pu(Y277Ci4>;OriX6*%InqI-)odu-Pwc*048QscFuk;k>bQ~!LAlTF
zt8~xCx{LSE%J>F}CxXn%uqwOHHN(iO2-I?b+OC02Lnt%YcPAa}zN+e)3b%6xkDl3i
zbcezYKj#RDQiz2()V)^`7J}1_PHhQIe+M5W{oO5mhzPWZm&)W+`<_|ZhZ9G`(M-2^
zyXc3?PMb|SdeRyWQb+8OX!oT)3of+|nGXaUGnb4`qM9bN87tVdTW8XGO1Wy>PM``G
zZ9g@fDJ7eYR}`XamIyo!TY&98x6|!poF2wi+v#-IReI`N)#UJ?-QGqSPsh{dQmM
zd7HdH!R^WIbXDQfE?)49nUFu01
z#T6BzZJND!o^%IVMUr{mu({C^O{&p3`jdw!}-)F#7uK_m4F$iQ&!9^+9l7evxrr&RL
z97&`p@
zI6)WyWuVNDViKXbFx6aSPzsSzDL^JAADI;!vM6~oum=3BV50$Fiz9F{8)sIRe#H4{SOc0+Iuo+_20k**0dcf(Eax?l^Up_hkE4rY{i8*L2
z21X0f`8X;sK<5%rpZ_IdT|7E#%AC4Hr0G+XiKs18w390^Pf;gVWBP*iW^|sWcVe_$
zuTMe?8ru_7rlGODF_exj#DD>5lyT}{MIS2@d&>1jP<*ntT)%;CK^$j#aC4#pycOOC
z{|XR@