Преглед изворни кода

Merge pull request #51322 from raulsntos/fix-msbuild-exception

Ensure MSBuildPanel buttons are instantiated
Rémi Verschelde пре 4 година
родитељ
комит
35b08b7cbc
1 измењених фајлова са 12 додато и 8 уклоњено
  1. 12 8
      modules/mono/editor/GodotTools/GodotTools/Build/MSBuildPanel.cs

+ 12 - 8
modules/mono/editor/GodotTools/GodotTools/Build/MSBuildPanel.cs

@@ -73,7 +73,7 @@ namespace GodotTools.Build
                 GD.PushError("Failed to setup Godot NuGet Offline Packages: " + e.Message);
             }
 
-            if (!BuildManager.BuildProjectBlocking("Debug", targets: new[] {"Rebuild"}))
+            if (!BuildManager.BuildProjectBlocking("Debug", targets: new[] { "Rebuild" }))
                 return; // Build failed
 
             // Notify running game for hot-reload
@@ -92,7 +92,7 @@ namespace GodotTools.Build
             if (!File.Exists(GodotSharpDirs.ProjectSlnPath))
                 return; // No solution to build
 
-            BuildManager.BuildProjectBlocking("Debug", targets: new[] {"Clean"});
+            BuildManager.BuildProjectBlocking("Debug", targets: new[] { "Clean" });
         }
 
         private void ViewLogToggled(bool pressed) => BuildOutputView.LogVisible = pressed;
@@ -129,10 +129,10 @@ namespace GodotTools.Build
             RectMinSize = new Vector2(0, 228) * EditorScale;
             SizeFlagsVertical = (int)SizeFlags.ExpandFill;
 
-            var toolBarHBox = new HBoxContainer {SizeFlagsHorizontal = (int)SizeFlags.ExpandFill};
+            var toolBarHBox = new HBoxContainer { SizeFlagsHorizontal = (int)SizeFlags.ExpandFill };
             AddChild(toolBarHBox);
 
-            buildMenuBtn = new MenuButton {Text = "Build", Icon = GetThemeIcon("Play", "EditorIcons")};
+            buildMenuBtn = new MenuButton { Text = "Build", Icon = GetThemeIcon("Play", "EditorIcons") };
             toolBarHBox.AddChild(buildMenuBtn);
 
             var buildMenu = buildMenuBtn.GetPopup();
@@ -183,10 +183,14 @@ namespace GodotTools.Build
         {
             base._Notification(what);
 
-            if (what == NotificationThemeChanged) {
-                buildMenuBtn.Icon = GetThemeIcon("Play", "EditorIcons");
-                errorsBtn.Icon = GetThemeIcon("StatusError", "EditorIcons");
-                warningsBtn.Icon = GetThemeIcon("NodeWarning", "EditorIcons");
+            if (what == NotificationThemeChanged)
+            {
+                if (buildMenuBtn != null)
+                    buildMenuBtn.Icon = GetThemeIcon("Play", "EditorIcons");
+                if (errorsBtn != null)
+                    errorsBtn.Icon = GetThemeIcon("StatusError", "EditorIcons");
+                if (warningsBtn != null)
+                    warningsBtn.Icon = GetThemeIcon("NodeWarning", "EditorIcons");
             }
         }
     }