From 8ecea0c636dd06888615ec1eef34809db95a5639 Mon Sep 17 00:00:00 2001 From: Oli Date: Mon, 9 Jan 2023 21:07:45 +0000 Subject: [PATCH] Added XNode Window icons and ability to open multiple graphs at once. --- Editor/NodeEditorWindow.cs | 15 ++- Editor/Resources/d_xnode_icon.png | Bin 0 -> 214 bytes Editor/Resources/d_xnode_icon.png.meta | 124 +++++++++++++++++++++++++ Editor/Resources/xnode_icon.png | Bin 0 -> 215 bytes Editor/Resources/xnode_icon.png.meta | 124 +++++++++++++++++++++++++ 5 files changed, 260 insertions(+), 3 deletions(-) create mode 100644 Editor/Resources/d_xnode_icon.png create mode 100644 Editor/Resources/d_xnode_icon.png.meta create mode 100644 Editor/Resources/xnode_icon.png create mode 100644 Editor/Resources/xnode_icon.png.meta diff --git a/Editor/NodeEditorWindow.cs b/Editor/NodeEditorWindow.cs index 2372aa9..4eac5ab 100644 --- a/Editor/NodeEditorWindow.cs +++ b/Editor/NodeEditorWindow.cs @@ -81,10 +81,10 @@ namespace XNodeEditor { graphEditor.OnWindowFocus(); if (NodeEditorPreferences.GetSettings().autoSave) AssetDatabase.SaveAssets(); } - + dragThreshold = Math.Max(1f, Screen.width / 1000f); } - + void OnLostFocus() { if (graphEditor != null) graphEditor.OnWindowFocusLost(); } @@ -199,7 +199,16 @@ namespace XNodeEditor { public static NodeEditorWindow Open(XNode.NodeGraph graph) { if (!graph) return null; - NodeEditorWindow w = GetWindow(typeof(NodeEditorWindow), false, "xNode", true) as NodeEditorWindow; + var nodeEditorWindows = Resources.FindObjectsOfTypeAll(); + foreach (var window in nodeEditorWindows) + { + if (window.graph != graph) continue; + window.Focus(); + return window; + } + + NodeEditorWindow w = CreateWindow(graph.name, typeof(SceneView)); + w.titleContent.image = Resources.Load(EditorGUIUtility.isProSkin ? "d_xnode_icon" : "xnode_icon"); w.wantsMouseMove = true; w.graph = graph; return w; diff --git a/Editor/Resources/d_xnode_icon.png b/Editor/Resources/d_xnode_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..909452d3544c61da20597403728b94546ea6f279 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!V78}=V@QPi+bajT4k++2UwHNZ|K~KtxZ5FI za%XmjD4x01JF~+ke?i+mR_{|08+?`?eDyGTY3Bs<2OE49{hq65MLwNyqL4XO`5Ma$ zwr{!lvI6;>1s;*b3=DjSL74G){)!Z!V2-DYV@QPi+pC6r2NXD11K!A5s5J3(JvvnR8(JKG?_aUu^4T+e%pq%M zNPDnL#P3=Cw8p?l=IwL)f?DS5{f|O~r53%BQ&6gEIKkik+x(~1kL&e7dl@`k{an^L HB{Ts5YqLs- literal 0 HcmV?d00001 diff --git a/Editor/Resources/xnode_icon.png.meta b/Editor/Resources/xnode_icon.png.meta new file mode 100644 index 0000000..c11086e --- /dev/null +++ b/Editor/Resources/xnode_icon.png.meta @@ -0,0 +1,124 @@ +fileFormatVersion: 2 +guid: d083bfb60eb18f944a7ba9eb0d487f7e +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: