public static bool conditional_enter_List <T>(this ListMetaData meta, bool canEnter, ref List <T> list, ref int enteredOne, int thisOne) { var changed = false; if (!canEnter && enteredOne == thisOne) { enteredOne = -1; } if (canEnter) { meta.enter_List(ref list, ref enteredOne, thisOne).changes(ref changed); } else { ef.isFoldedOutOrEntered = false; } return(changed); }
public override bool Inspect() { var changed = false; #if UNITY_EDITOR if (inspectedItems == -1) { "Atlas size:".editDelayed(ref _atlasSize, 80).nl(ref changed); _atlasSize = Mathf.ClosestPowerOfTwo(Mathf.Clamp(_atlasSize, 512, 4096)); if ("Textures size:".editDelayed(ref _textureSize, 80).nl(ref changed)) { _textureSize = Mathf.ClosestPowerOfTwo(Mathf.Clamp(_textureSize, 32, _atlasSize / 2)); } AdjustListSize(); } _texturesMeta.enter_List(ref textures, ref inspectedItems, 11).nl(ref changed); if ("Textures:".foldout().nl()) { AdjustListSize(); var max = TextureCount; for (var i = 0; i < max; i++) { var t = textures[i]; if (!t.used) { continue; } pegi.edit(ref t.texture); if (!t.texture) { pegi.edit(ref t.color); } pegi.newLine(); } } pegi.newLine(); "Is Color Atlas:".toggleIcon(ref _sRgb).nl(ref changed); if ("Generate".Click().nl(ref changed)) { ReconstructAsset(); } if (aTexture) { ("Atlas At " + AssetDatabase.GetAssetPath(aTexture)).edit(ref aTexture, false).nl(ref changed); } #endif return(changed); }
protected override bool Inspect_AfterNamePart() { var changed = false; if (_inspectedItems == -1 && InspectingSubNode) { var node = coreNodes.TryGet(_coreNodesMeta); if (node == null) { InspectingSubNode = false; } else if (!Application.isPlaying || (Shortcuts.CurrentNode == this || IsChildOrSubChildOf(Shortcuts.CurrentNode))) { if (icon.Exit.Click("Exit {0}".F(name))) { InspectingSubNode = false; } if (this == Shortcuts.CurrentNode) { name.write(PEGI_Styles.EnterLabel); if (parentNode != null && icon.Active.Click("Is Active. Click to exit.")) { Shortcuts.CurrentNode = parentNode; } } else { name.write(); } pegi.nl(); } if (InspectingSubNode) { pegi.Try_Nested_Inspect(node).changes(ref changed); } } if (!InspectingSubNode) { if (_inspectedItems == -1) { pegi.nl(); var newNode = _coreNodesMeta.edit_List(ref coreNodes, ref changed); newNode?.CreatedFor(this); } _gamesNodesMeta.Inspecting = false; var ngn = _gamesNodesMeta.enter_List(ref gameNodes, ref _inspectedItems, 7, GameNodeBase.all, ref changed); pegi.nl_ifFoldedOut(); ngn?.CreatedFor(this); pegi.nl(); } return(changed); }