Bladeren bron

Added Dialog.GenerateClipboardText to fix About version info copy

Brian Fiete 4 maanden geleden
bovenliggende
commit
cd3052e418
2 gewijzigde bestanden met toevoegingen van 15 en 14 verwijderingen
  1. 11 4
      BeefLibs/Beefy2D/src/widgets/Dialog.bf
  2. 4 10
      IDE/src/ui/AboutDialog.bf

+ 11 - 4
BeefLibs/Beefy2D/src/widgets/Dialog.bf

@@ -322,6 +322,11 @@ namespace Beefy.widgets
 				mDefaultButton.MouseClicked(0, 0, 0, 0, 3);
 		}
 
+		public virtual void GenerateClipboardText(String outText)
+		{
+			outText.AppendF("{}\n{}", mTitle, mText);
+		}
+
         void WindowKeyDown(KeyDownEvent evt)
         {
 			if ((evt.mKeyCode != .Alt) && (mWidgetWindow.IsKeyDown(.Alt)) && (!mWidgetWindow.IsKeyDown(.Control)))
@@ -402,10 +407,12 @@ namespace Beefy.widgets
 						}
 					}
 
-					var clipboardText = scope String();
-					clipboardText.AppendF("{}\n{}", mTitle, mText);
-					BFApp.sApp.SetClipboardText(clipboardText, "");
-					evt.mHandled = true;
+					var clipboardText = GenerateClipboardText(.. scope String());
+					if (!clipboardText.IsEmpty)
+					{
+						BFApp.sApp.SetClipboardText(clipboardText, "");
+						evt.mHandled = true;
+					}
 				}
 			}
         }

+ 4 - 10
IDE/src/ui/AboutDialog.bf

@@ -238,17 +238,11 @@ namespace IDE.ui
 			MarkDirty();
 		}
 
-		public override void KeyDown(KeyCode keyCode, bool isRepeat)
-		{
-			base.KeyDown(keyCode, isRepeat);
 
-			if ((keyCode == (.)'C') && (mWidgetWindow.GetKeyFlags(true) == .Ctrl))
-			{
-				String versionInfo = scope String();
-				versionInfo.AppendF("Beef IDE Version {}", gApp.mVersionInfo.FileVersion);
-				versionInfo.AppendF(" Build {}", gApp.mVersionInfo.ProductVersion);
-				gApp.SetClipboardText(versionInfo);
-			}
+		public override void GenerateClipboardText(String outText)
+		{
+			outText.AppendF("Beef IDE Version {}", gApp.mVersionInfo.FileVersion);
+			outText.AppendF(" Build {}", gApp.mVersionInfo.ProductVersion);
 		}
 	}
 }