1.1.0: Added README and ToolbarSettings, so visibility of tools can be set in Preferences -> Module -> Toolbar

This commit is contained in:
Anders Ejlersen 2021-12-19 20:49:15 +01:00
parent e1d2deb4c5
commit 9802f8aaa3
23 changed files with 297 additions and 43 deletions

View file

@ -6,13 +6,15 @@ using UnityEditor.SceneManagement;
using UnityEngine;
using UnityEngine.SceneManagement;
namespace Module.NavigationTool.Editor.Tools
namespace Module.NavigationTool.Editor.Toolbar
{
[UsedImplicitly]
internal sealed class ToolScenePicker : AbstractToolbarDrawer
{
public override bool Visible => ToolbarSettings.IsSceneEnabled;
public override bool Enabled => !EditorApplication.isPlaying && !EditorApplication.isPlayingOrWillChangePlaymode;
public override EToolbarPlacement Placement => EToolbarPlacement.Right;
public override int Priority => (int)EToolbarPriority.Medium;
private static bool IS_DIRTY = true;
private static int SELECTED_INDEX = -1;

View file

@ -1,5 +1,4 @@
using Module.NavigationTool.Editor.Tools;
using UnityEditor;
using UnityEditor;
using UnityEditor.SceneManagement;
using UnityEngine.SceneManagement;

View file

@ -1,5 +1,4 @@
using System.Linq;
using Module.NavigationTool.Editor.Tools;
using UnityEditor;
namespace Module.NavigationTool.Editor.Toolbar

View file

@ -11,13 +11,15 @@ using UnityEditor.SceneManagement;
using UnityEditor.Experimental.SceneManagement;
#endif
namespace Module.NavigationTool.Editor.Tools
namespace Module.NavigationTool.Editor.Toolbar
{
[UsedImplicitly]
internal sealed class ToolUICanvasPicker : AbstractToolbarDrawer
{
public override bool Visible => ToolbarSettings.IsUiEnabled;
public override bool Enabled => (UTools.visibleLayers & (1 << LayerMask.NameToLayer("UI"))) != 0;
public override EToolbarPlacement Placement => EToolbarPlacement.Left;
public override int Priority => (int)EToolbarPriority.Medium;
private static bool IS_DIRTY = true;
private static string[] OPTIONS = new string[0];
@ -62,7 +64,8 @@ namespace Module.NavigationTool.Editor.Tools
protected override void Draw(Rect rect)
{
// Note: To fix an issue, where instantiated canvases wouldn't be detected, due to no events for canvas additions/removals exist in Unity API (at the moment)
// Note: To fix an issue, where instantiated canvases wouldn't be detected, due to no events for canvas
// additions/removals exist in Unity API (at the moment)
if (Event.current.type == EventType.MouseDown)
{
IS_DIRTY = true;

View file

@ -1,5 +1,4 @@
using Module.NavigationTool.Editor.Tools;
using UnityEditor;
using UnityEditor;
using UnityEditor.Experimental.SceneManagement;
using UnityEditor.SceneManagement;
using UnityEngine.SceneManagement;

View file

@ -3,13 +3,15 @@ using UnityEditor;
using UnityEngine;
using UTools = UnityEditor.Tools;
namespace Module.NavigationTool.Editor.Tools
namespace Module.NavigationTool.Editor.Toolbar
{
[UsedImplicitly]
internal sealed class ToolUILayerToggle : AbstractToolbarDrawer
{
public override bool Visible => ToolbarSettings.IsUiLayerEnabled;
public override bool Enabled => true;
public override EToolbarPlacement Placement => EToolbarPlacement.Left;
public override int Priority => (int)EToolbarPriority.Medium - 1;
protected override void Draw(Rect rect)
{