summaryrefslogtreecommitdiff
path: root/Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2020-10-23 13:08:43 +0800
committerchai <chaifix@163.com>2020-10-23 13:08:43 +0800
commitb82da95b5181ac8bbae38efb13e950d5e88a4caa (patch)
tree48a6f3269276484bbc7cfc95f0651f40a2176aa1 /Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs
parent917e9e0b320775634dc2e710f7deac74fd0822f0 (diff)
*移动amplify shader editor到third party目录
Diffstat (limited to 'Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs')
-rw-r--r--Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs632
1 files changed, 0 insertions, 632 deletions
diff --git a/Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs b/Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs
deleted file mode 100644
index ccb0f4b0..00000000
--- a/Assets/AmplifyShaderEditor/Plugins/Editor/Menu/Tools/ToolsWindow.cs
+++ /dev/null
@@ -1,632 +0,0 @@
-// Amplify Shader Editor - Visual Shader Editing Tool
-// Copyright (c) Amplify Creations, Lda <info@amplify.pt>
-
-using UnityEngine;
-using UnityEditor;
-using System;
-using System.Collections.Generic;
-
-namespace AmplifyShaderEditor
-{
- public enum ToolButtonType
- {
- Update = 0,
- Live,
- OpenSourceCode,
- CleanUnusedNodes,
- //SelectShader,
- New,
- Open,
- Save,
- Library,
- Options,
- Help,
- MasterNode,
- FocusOnMasterNode,
- FocusOnSelection,
- ShowInfoWindow,
- ShowTipsWindow,
- ShowConsole,
- TakeScreenshot,
- Share
- }
-
- public enum ToolbarType
- {
- File,
- Help
- }
-
- public class ToolbarMenuTab
- {
- private Rect m_tabArea;
- private GenericMenu m_tabMenu;
- public ToolbarMenuTab( float x, float y, float width, float height )
- {
- m_tabMenu = new GenericMenu();
- m_tabArea = new Rect( x, y, width, height );
- }
-
- public void ShowMenu()
- {
- m_tabMenu.DropDown( m_tabArea );
- }
-
- public void AddItem( string itemName, GenericMenu.MenuFunction callback )
- {
- m_tabMenu.AddItem( new GUIContent( itemName ), false, callback );
- }
- }
-
- [Serializable]
- public sealed class ToolsWindow : MenuParent
- {
- private static readonly Color RightIconsColorOff = new Color( 1f, 1f, 1f, 0.8f );
- private static readonly Color LeftIconsColorOff = new Color( 1f, 1f, 1f, 0.5f );
-
- private static readonly Color RightIconsColorOn = new Color( 1f, 1f, 1f, 1.0f );
- private static readonly Color LeftIconsColorOn = new Color( 1f, 1f, 1f, 0.8f );
-
- private const float TabY = 9;
- private const float TabX = 5;
- private const string ShaderFileTitleStr = "Current Shader";
- private const string FileToolbarStr = "File";
- private const string HelpToolbarStr = "Help";
- private const string LiveShaderStr = "Live Shader";
- private const string LoadOnSelectionStr = "Load on selection";
- private const string CurrentObjectStr = "Current Object: ";
-
-
- public ToolsMenuButton.ToolButtonPressed ToolButtonPressedEvt;
- //private GUIStyle m_toolbarButtonStyle;
- private GUIStyle m_toggleStyle;
- private GUIStyle m_borderStyle;
-
- // left
- private ToolsMenuButton m_updateButton;
- private ToolsMenuButton m_liveButton;
- private ToolsMenuButton m_openSourceCodeButton;
-
- //middle right
- private ToolsMenuButton m_cleanUnusedNodesButton;
- private ToolsMenuButton m_focusOnMasterNodeButton;
- private ToolsMenuButton m_focusOnSelectionButton;
-
- // right
- private ToolsMenuButton m_shareButton;
- private ToolsMenuButton m_takeScreenshotButton;
- private ToolsMenuButton m_showInfoWindowButton;
-
- // hidden
- private ToolsMenuButton m_showTipsWindowButton;
- private ToolsMenuButton m_showConsoleWindowButton;
-
- //Used for collision detection to invalidate inputs on graph area
- private Rect m_areaLeft = new Rect( 0, 0, 140, 40 );
- private Rect m_areaRight = new Rect( 0, 0, 75, 40 );
- private Rect m_boxRect;
- private Rect m_borderRect;
-
- public const double InactivityRefreshTime = 0.25;
- private int m_currentSelected = 0;
-
- //Search Bar
- private const string SearchBarId = "ASE_SEARCH_BAR";
- private bool m_searchBarVisible = false;
- private bool m_selectSearchBarTextfield = false;
- private bool m_refreshSearchResultList = false;
-
- private Rect m_searchBarSize;
- private string m_searchBarValue = string.Empty;
- private List<ParentNode> m_searchResultNodes = new List<ParentNode>();
-
- // width and height are between [0,1] and represent a percentage of the total screen area
- public ToolsWindow( AmplifyShaderEditorWindow parentWindow ) : base( parentWindow, 0, 0, 0, 64, "Tools", MenuAnchor.TOP_LEFT, MenuAutoSize.NONE )
- {
- m_updateButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.Update, 0, 0, -1, -1, IOUtils.UpdateOutdatedGUID, string.Empty, "Create and apply shader to material.", 5 );
- m_updateButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_updateButton.AddState( IOUtils.UpdateOFFGUID );
- m_updateButton.AddState( IOUtils.UpdateUpToDatedGUID );
-
- m_liveButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.Live, 0, 0, -1, -1, IOUtils.LiveOffGUID, string.Empty, "Automatically saves shader when canvas is changed.", 50 );
- m_liveButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_liveButton.AddState( IOUtils.LiveOnGUID );
- m_liveButton.AddState( IOUtils.LivePendingGUID );
-
- //ToolsMenuButton cleanUnusedNodesButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.CleanUnusedNodes, 0, 0, -1, -1, IOUtils.CleanupOFFGUID, string.Empty, "Remove all nodes not connected to the master node.", 77 );
- //cleanUnusedNodesButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- //cleanUnusedNodesButton.AddState( IOUtils.CleanUpOnGUID );
- //m_list[ ( int ) ToolButtonType.CleanUnusedNodes ] = cleanUnusedNodesButton;
-
- m_openSourceCodeButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.OpenSourceCode, 0, 0, -1, -1, IOUtils.OpenSourceCodeOFFGUID, string.Empty, "Open shader file in your default shader editor.", 80, false );
- m_openSourceCodeButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_openSourceCodeButton.AddState( IOUtils.OpenSourceCodeONGUID );
-
-
- // middle right
- m_cleanUnusedNodesButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.CleanUnusedNodes, 0, 0, -1, -1, IOUtils.CleanupOFFGUID, string.Empty, "Remove all nodes not connected to the master node.", 77 );
- m_cleanUnusedNodesButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_cleanUnusedNodesButton.AddState( IOUtils.CleanUpOnGUID );
-
- m_focusOnMasterNodeButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.FocusOnMasterNode, 0, 0, -1, -1, IOUtils.FocusNodeGUID, string.Empty, "Focus on active master node.", -1, false );
- m_focusOnMasterNodeButton.ToolButtonPressedEvt += OnButtonPressedEvent;
-
- m_focusOnSelectionButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.FocusOnSelection, 0, 0, -1, -1, IOUtils.FitViewGUID, string.Empty, "Focus on selection or fit to screen if none selected." );
- m_focusOnSelectionButton.ToolButtonPressedEvt += OnButtonPressedEvent;
-
-
- // right
- m_shareButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.Share, 0, 0, -1, -1, IOUtils.ShareOFFGUID, string.Empty, "Share selection", 100 );
- m_shareButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_shareButton.AddState( IOUtils.ShareONGUID );
-
- m_takeScreenshotButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.TakeScreenshot, 0, 0, -1, -1, IOUtils.TakeScreenshotOFFGUID, string.Empty, "Take ScreenShot (WINDOWS ONLY).", 100 );
- m_takeScreenshotButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_takeScreenshotButton.AddState( IOUtils.TakeScreenshotONGUID );
-
- m_showInfoWindowButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.ShowInfoWindow, 0, 0, -1, -1, IOUtils.ShowInfoWindowGUID, string.Empty, "Open Helper Window." );
- m_showInfoWindowButton.ToolButtonPressedEvt += OnButtonPressedEvent;
-
-
- // hidden
- m_showTipsWindowButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.ShowTipsWindow, 0, 0, -1, -1, IOUtils.ShowTipsWindowGUID, string.Empty, "Open Quick Tips!" );
- m_showTipsWindowButton.ToolButtonPressedEvt += OnButtonPressedEvent;
-
- m_showConsoleWindowButton = new ToolsMenuButton( m_parentWindow, ToolButtonType.ShowConsole, 0, 0, -1, -1, IOUtils.ShowConsoleWindowGUID, string.Empty, "Show internal console", 74 );
- m_showConsoleWindowButton.ToolButtonPressedEvt += OnButtonPressedEvent;
- m_showConsoleWindowButton.AddState( IOUtils.ShowConsoleWindowGUID );
-
- m_searchBarSize = new Rect( 0, TabY + 4, 110, 60 );
- }
-
- void OnShowPortLegend()
- {
- ParentWindow.ShowPortInfo();
- }
-
- override public void Destroy()
- {
- base.Destroy();
- //for ( int i = 0; i < m_list.Length; i++ )
- //{
- // m_list[ i ].Destroy();
- //}
- //m_list = null;
-
- m_searchResultNodes.Clear();
- m_searchResultNodes = null;
-
- m_updateButton.Destroy();
- m_updateButton = null;
-
- m_liveButton.Destroy();
- m_liveButton = null;
-
- m_openSourceCodeButton.Destroy();
- m_openSourceCodeButton = null;
-
- m_focusOnMasterNodeButton.Destroy();
- m_focusOnMasterNodeButton = null;
-
- m_focusOnSelectionButton.Destroy();
- m_focusOnSelectionButton = null;
-
- m_showInfoWindowButton.Destroy();
- m_showInfoWindowButton = null;
-
- m_takeScreenshotButton.Destroy();
- m_takeScreenshotButton = null;
-
- m_shareButton.Destroy();
- m_shareButton = null;
-
- m_showTipsWindowButton.Destroy();
- m_showTipsWindowButton = null;
-
- m_cleanUnusedNodesButton.Destroy();
- m_cleanUnusedNodesButton = null;
-
- m_showConsoleWindowButton.Destroy();
- m_showConsoleWindowButton = null;
- }
-
- void OnButtonPressedEvent( ToolButtonType type )
- {
- if ( ToolButtonPressedEvt != null )
- ToolButtonPressedEvt( type );
- }
-
- public override void Draw( Rect parentPosition, Vector2 mousePosition, int mouseButtonId, bool hasKeyboadFocus )
- {
- base.Draw( parentPosition, mousePosition, mouseButtonId, hasKeyboadFocus );
-
- Color bufferedColor = GUI.color;
- m_areaLeft.x = m_transformedArea.x + TabX;
- m_areaRight.x = m_transformedArea.x + m_transformedArea.width - 75 - TabX;
-
- //if ( m_toolbarButtonStyle == null )
- //{
- // m_toolbarButtonStyle = new GUIStyle( UIUtils.Button );
- // m_toolbarButtonStyle.fixedWidth = 100;
- //}
-
- if ( m_toggleStyle == null )
- {
- m_toggleStyle = UIUtils.Toggle;
- }
-
- //for ( int i = 0; i < m_list.Length; i++ )
- //{
- // GUI.color = m_list[ i ].IsInside( mousePosition ) ? LeftIconsColorOn : LeftIconsColorOff;
- // m_list[ i ].Draw( TabX + m_transformedArea.x + m_list[ i ].ButtonSpacing, TabY );
- //}
- GUI.color = m_updateButton.IsInside( mousePosition ) ? LeftIconsColorOn : LeftIconsColorOff;
- m_updateButton.Draw( TabX + m_transformedArea.x + m_updateButton.ButtonSpacing, TabY );
-
- GUI.color = m_liveButton.IsInside( mousePosition ) ? LeftIconsColorOn : LeftIconsColorOff;
- m_liveButton.Draw( TabX + m_transformedArea.x + m_liveButton.ButtonSpacing, TabY );
-
- GUI.color = m_openSourceCodeButton.IsInside( mousePosition ) ? LeftIconsColorOn : LeftIconsColorOff;
- m_openSourceCodeButton.Draw( TabX + m_transformedArea.x + m_openSourceCodeButton.ButtonSpacing, TabY );
-
- if ( m_searchBarVisible )
- {
- m_searchBarSize.x = m_transformedArea.x + m_transformedArea.width - 320 - TabX;
- string currentFocus = GUI.GetNameOfFocusedControl();
-
- if ( Event.current.type == EventType.KeyDown )
- {
- KeyCode keyCode = Event.current.keyCode;
- if ( Event.current.shift )
- {
- if ( keyCode == KeyCode.F3 ||
- ( ( keyCode == KeyCode.KeypadEnter || keyCode == KeyCode.Return ) &&
- ( currentFocus.Equals( SearchBarId ) || string.IsNullOrEmpty( currentFocus ) ) ) )
- SelectPrevious();
- }
- else
- {
- if ( keyCode == KeyCode.F3 ||
- ( ( keyCode == KeyCode.KeypadEnter || keyCode == KeyCode.Return ) &&
- ( currentFocus.Equals( SearchBarId ) || string.IsNullOrEmpty( currentFocus ) ) ) )
- SelectNext();
- }
- }
-
- if( currentFocus.Equals( SearchBarId ) || ( m_parentWindow.CameraDrawInfo.CurrentEventType == EventType.MouseDown && m_searchBarSize.Contains( m_parentWindow.CameraDrawInfo.MousePosition ) ) || m_selectSearchBarTextfield )
- {
- EditorGUI.BeginChangeCheck();
- {
- GUI.SetNextControlName( SearchBarId );
- m_searchBarValue = EditorGUI.TextField( m_searchBarSize, m_searchBarValue, UIUtils.ToolbarSearchTextfield );
- }
- if ( EditorGUI.EndChangeCheck() )
- {
- m_refreshSearchResultList = true;
- }
- } else
- {
- GUI.Label( m_searchBarSize, m_searchBarValue, UIUtils.ToolbarSearchTextfield );
- }
-
- m_searchBarSize.x += m_searchBarSize.width;
- if ( m_parentWindow.CameraDrawInfo.CurrentEventType == EventType.MouseDown && m_searchBarSize.Contains( m_parentWindow.CameraDrawInfo.MousePosition ) )
- {
- if ( string.IsNullOrEmpty( m_searchBarValue ) )
- {
- m_searchBarVisible = false;
- m_refreshSearchResultList = false;
- }
- else
- {
- m_searchBarValue = string.Empty;
- m_searchResultNodes.Clear();
- m_currentSelected = -1;
- }
- }
-
- GUI.Label( m_searchBarSize, string.Empty, UIUtils.ToolbarSearchCancelButton );
-
-
-
- if ( Event.current.isKey && Event.current.keyCode == KeyCode.Escape )
- {
- m_searchBarVisible = false;
- m_refreshSearchResultList = false;
- GUI.FocusControl( null );
- m_selectSearchBarTextfield = false;
- }
-
- if ( m_refreshSearchResultList && ( m_parentWindow.CurrentInactiveTime > InactivityRefreshTime ) )
- {
- RefreshList();
- }
- }
-
- if ( m_selectSearchBarTextfield )
- {
- m_selectSearchBarTextfield = false;
- EditorGUI.FocusTextInControl( SearchBarId );
- //GUI.FocusControl( SearchBarId );
- }
-
- //if ( Event.current.control && Event.current.isKey && Event.current.keyCode == KeyCode.F && Event.current.type == EventType.KeyDown )
- if( m_parentWindow.CurrentCommandName.Equals("Find") )
- {
- if ( !m_searchBarVisible )
- {
- m_searchBarVisible = true;
- m_refreshSearchResultList = false;
- }
- m_selectSearchBarTextfield = true;
- }
-
- GUI.color = m_shareButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- m_shareButton.Draw( m_transformedArea.x + m_transformedArea.width - 195 - TabX, TabY );
-
- GUI.color = m_takeScreenshotButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- m_takeScreenshotButton.Draw( m_transformedArea.x + m_transformedArea.width - 165 - TabX, TabY );
-
-
-
- GUI.color = m_focusOnSelectionButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- m_focusOnSelectionButton.Draw( m_transformedArea.x + m_transformedArea.width - 120 - TabX, TabY );
-
- GUI.color = m_focusOnMasterNodeButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- m_focusOnMasterNodeButton.Draw( m_transformedArea.x + m_transformedArea.width - 85 - TabX, TabY );
-
- GUI.color = m_cleanUnusedNodesButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- m_cleanUnusedNodesButton.Draw( m_transformedArea.x + m_transformedArea.width - 50 - TabX, TabY );
-
- GUI.color = m_showInfoWindowButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- m_showInfoWindowButton.Draw( m_transformedArea.x + m_transformedArea.width - 25 - TabX, TabY );
-
-
- //GUI.color = m_showTipsWindowButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- //m_showTipsWindowButton.Draw( m_transformedArea.x + m_transformedArea.width - 190 - TabX, TabY );
-
- //GUI.color = m_showConsoleWindowButton.IsInside( mousePosition ) ? RightIconsColorOn : RightIconsColorOff;
- //m_showConsoleWindowButton.Draw( m_transformedArea.x + m_transformedArea.width - 195 - TabX, TabY );
-
- GUI.color = bufferedColor;
-
- }
-
- public void OnNodeRemovedFromGraph( ParentNode node )
- {
- m_searchResultNodes.Remove( node );
- }
-
- int m_previousNodeCount = 0;
-
- void RefreshList()
- {
- m_refreshSearchResultList = false;
- m_currentSelected = -1;
- m_searchResultNodes.Clear();
- if ( !string.IsNullOrEmpty( m_searchBarValue ) )
- {
- List<ParentNode> nodes = m_parentWindow.CurrentGraph.AllNodes;
- int count = nodes.Count;
- m_previousNodeCount = count;
- for ( int i = 0; i < count; i++ )
- {
- if ( nodes[ i ].CheckFindText( m_searchBarValue ) )
- {
- m_searchResultNodes.Add( nodes[ i ] );
- }
- }
- }
- }
-
- void SelectNext()
- {
- if ( m_refreshSearchResultList || m_parentWindow.CurrentGraph.AllNodes.Count != m_previousNodeCount )
- {
- RefreshList();
- }
-
- if ( m_searchResultNodes.Count > 0 )
- {
- m_currentSelected = ( m_currentSelected + 1 ) % m_searchResultNodes.Count;
- m_parentWindow.FocusOnNode( m_searchResultNodes[ m_currentSelected ], 1, true ,true);
- }
- }
-
- void SelectPrevious()
- {
- if ( m_refreshSearchResultList || m_parentWindow.CurrentGraph.AllNodes.Count != m_previousNodeCount )
- {
- RefreshList();
- }
-
- if ( m_searchResultNodes.Count > 0 )
- {
- m_currentSelected = ( m_currentSelected > 1 ) ? ( m_currentSelected - 1 ) : ( m_searchResultNodes.Count - 1 );
- m_parentWindow.FocusOnNode( m_searchResultNodes[ m_currentSelected ], 1, true );
- }
- }
-
-
- public void SetStateOnButton( ToolButtonType button, int state, string tooltip )
- {
- switch ( button )
- {
- case ToolButtonType.New:
- case ToolButtonType.Open:
- case ToolButtonType.Save:
- case ToolButtonType.Library:
- case ToolButtonType.Options:
- case ToolButtonType.Help:
- case ToolButtonType.MasterNode: break;
- case ToolButtonType.OpenSourceCode:
- {
- m_openSourceCodeButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.Update:
- {
- m_updateButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.Live:
- {
- m_liveButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.TakeScreenshot:
- {
- m_takeScreenshotButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.CleanUnusedNodes:
- //case eToolButtonType.SelectShader:
- {
- m_cleanUnusedNodesButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.FocusOnMasterNode:
- {
- m_focusOnMasterNodeButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.FocusOnSelection:
- {
- m_focusOnSelectionButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.Share:
- {
- m_shareButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.ShowInfoWindow:
- {
- m_showInfoWindowButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.ShowTipsWindow:
- {
- m_showTipsWindowButton.SetStateOnButton( state, tooltip );
- }
- break;
- case ToolButtonType.ShowConsole:
- {
- m_showConsoleWindowButton.SetStateOnButton( state, tooltip );
- }
- break;
- }
- }
-
- public void SetStateOnButton( ToolButtonType button, int state )
- {
- switch ( button )
- {
- case ToolButtonType.New:
- case ToolButtonType.Open:
- case ToolButtonType.Save:
- case ToolButtonType.Library:
- case ToolButtonType.Options:
- case ToolButtonType.Help:
- case ToolButtonType.MasterNode: break;
- case ToolButtonType.OpenSourceCode:
- {
- m_openSourceCodeButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.Update:
- {
- m_updateButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.Live:
- {
- m_liveButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.TakeScreenshot:
- {
- m_takeScreenshotButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.CleanUnusedNodes:
- //case eToolButtonType.SelectShader:
- {
- m_cleanUnusedNodesButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.FocusOnMasterNode:
- {
- m_focusOnMasterNodeButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.FocusOnSelection:
- {
- m_focusOnSelectionButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.Share:
- {
- m_shareButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.ShowInfoWindow:
- {
- m_showInfoWindowButton.SetStateOnButton( state );
- }
- break;
- case ToolButtonType.ShowTipsWindow:
- {
- m_showTipsWindowButton.SetStateOnButton( state );
- }break;
- case ToolButtonType.ShowConsole:
- {
- m_showConsoleWindowButton.SetStateOnButton( state );
- }
- break;
- }
- }
-
- public void DrawShaderTitle( MenuParent nodeParametersWindow, MenuParent paletteWindow, float availableCanvasWidth, float graphAreaHeight, string shaderName )
- {
- float leftAdjust = nodeParametersWindow.IsMaximized ? nodeParametersWindow.RealWidth : 0;
- float rightAdjust = paletteWindow.IsMaximized ? 0 : paletteWindow.RealWidth;
-
- m_boxRect = new Rect( leftAdjust + rightAdjust, 0, availableCanvasWidth, 35 );
- m_boxRect.x += paletteWindow.IsMaximized ? 0 : -paletteWindow.RealWidth;
- m_boxRect.width += nodeParametersWindow.IsMaximized ? 0 : nodeParametersWindow.RealWidth;
- m_boxRect.width += paletteWindow.IsMaximized ? 0 : paletteWindow.RealWidth;
- m_borderRect = new Rect( m_boxRect );
- m_borderRect.height = graphAreaHeight;
-
- int extra = m_searchBarVisible ? (int)m_searchBarSize.width + 20: 0;
- //m_boxRect.xMax -= ( paletteWindow.IsMaximized ? 195 : 230 ) + extra;
- //m_boxRect.xMin += nodeParametersWindow.IsMaximized ? 95 : 145;
-
- UIUtils.ToolbarMainTitle.padding.right = ( paletteWindow.IsMaximized ? 195 : 230 ) + extra;
- UIUtils.ToolbarMainTitle.padding.left = nodeParametersWindow.IsMaximized ? 110 : 145;
-
- if ( m_borderStyle == null )
- {
- m_borderStyle = ( ParentWindow.CurrentGraph.CurrentMasterNode == null ) ? UIUtils.GetCustomStyle( CustomStyle.ShaderFunctionBorder ) : UIUtils.GetCustomStyle( CustomStyle.ShaderBorder );
- }
-
- GUI.Label( m_borderRect, shaderName, m_borderStyle );
- GUI.Label( m_boxRect, shaderName, UIUtils.ToolbarMainTitle );
- }
-
- public override bool IsInside( Vector2 position )
- {
- if ( !m_isActive )
- return false;
-
- return m_boxRect.Contains( position ) || m_areaLeft.Contains( position ) || m_areaRight.Contains( position );
- }
-
- public GUIStyle BorderStyle
- {
- get { return m_borderStyle; }
- set { m_borderStyle = value; }
- }
- }
-}