From fbbfaad57935d0351391de850f87e6890951d752 Mon Sep 17 00:00:00 2001
From: ZZYZX <zzyzx@virtual>
Date: Thu, 9 Feb 2017 15:20:39 +0200
Subject: [PATCH] Fixed: changing brightness of upper/lower/middle sidedef did
 not update the whole sidedef brightness until 3D mode restart

---
 .../BuilderModes/VisualModes/BaseVisualGeometrySidedef.cs | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/Source/Plugins/BuilderModes/VisualModes/BaseVisualGeometrySidedef.cs b/Source/Plugins/BuilderModes/VisualModes/BaseVisualGeometrySidedef.cs
index d03ea389..de82328d 100755
--- a/Source/Plugins/BuilderModes/VisualModes/BaseVisualGeometrySidedef.cs
+++ b/Source/Plugins/BuilderModes/VisualModes/BaseVisualGeometrySidedef.cs
@@ -1477,8 +1477,12 @@ namespace CodeImp.DoomBuilder.BuilderModes
 				Tools.UpdateLightFogFlag(Sidedef);
 				mode.SetActionResult("Changed wall brightness to " + newlight + ".");
 
-				// Update this part only
-				this.Setup();
+                // Update this part only
+                //this.Setup();
+                // [ZZ] why the hell was maxed updating only this part? sidedef change is global per sidedef, not only upper/lower/middle part.
+                //      find this sidedef in sector, update all parts.
+                VisualSidedefParts parts = Sector.GetSidedefParts(Sidedef);
+                parts.SetupAllParts();
 			}
 			else if(!Sector.Changed)
 			{