You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

75 lines
1.4 KiB

// Amplify Shader Editor - Visual Shader Editing Tool
// Copyright (c) Amplify Creations, Lda <info@amplify.pt>
using UnityEngine;
namespace AmplifyShaderEditor
{
public class ToolsMenuButtonParent
{
protected AmplifyShaderEditorWindow m_parentWindow = null;
private float m_buttonSpacing = 10;
private int m_currentState = 0;
private bool m_isInitialized = false;
protected GUIContent m_content;
public ToolsMenuButtonParent( AmplifyShaderEditorWindow parentWindow, string text, string tooltip, float buttonSpacing )
{
m_parentWindow = parentWindow;
m_content = new GUIContent( text, tooltip );
if ( buttonSpacing > 0 )
m_buttonSpacing = buttonSpacing;
}
public virtual void Draw()
{
if ( !m_isInitialized )
{
Init();
}
GUILayout.Space( m_buttonSpacing );
}
public virtual void Draw( Vector2 pos )
{
Draw( pos.x, pos.y );
}
public virtual void Draw( float x ,float y )
{
if ( !m_isInitialized )
{
Init();
}
}
protected virtual void Init()
{
m_isInitialized = false;
}
public virtual void SetStateOnButton( int state, string tooltip )
{
m_currentState = state;
m_content.tooltip = tooltip;
}
public virtual void SetStateOnButton( int state )
{
m_currentState = state;
}
public virtual void Destroy() { }
public float ButtonSpacing
{
get { return m_buttonSpacing; }
}
public int CurrentState
{
get { return m_currentState; }
}
}
}