using UnityEngine;
|
|
using System.Collections;
|
|
|
|
namespace ProGrids
|
|
{
|
|
/**
|
|
* A substitute for GUIContent that offers some additional functionality.
|
|
*/
|
|
[System.Serializable]
|
|
public class pg_ToggleContent
|
|
{
|
|
public string text_on, text_off;
|
|
public Texture2D image_on, image_off;
|
|
public string tooltip;
|
|
|
|
GUIContent gc = new GUIContent();
|
|
|
|
public pg_ToggleContent(string t_on, string t_off, string tooltip)
|
|
{
|
|
this.text_on = t_on;
|
|
this.text_off = t_off;
|
|
this.image_on = (Texture2D)null;
|
|
this.image_off = (Texture2D)null;
|
|
this.tooltip = tooltip;
|
|
|
|
gc.tooltip = tooltip;
|
|
}
|
|
|
|
public pg_ToggleContent(string t_on, string t_off, Texture2D i_on, Texture2D i_off, string tooltip)
|
|
{
|
|
this.text_on = t_on;
|
|
this.text_off = t_off;
|
|
this.image_on = i_on;
|
|
this.image_off = i_off;
|
|
this.tooltip = tooltip;
|
|
|
|
gc.tooltip = tooltip;
|
|
}
|
|
|
|
public static bool ToggleButton(Rect r, pg_ToggleContent content, bool enabled, GUIStyle imageStyle, GUIStyle altStyle)
|
|
{
|
|
content.gc.image = enabled ? content.image_on : content.image_off;
|
|
content.gc.text = content.gc.image == null ? (enabled ? content.text_on : content.text_off) : "";
|
|
|
|
return GUI.Button(r, content.gc, content.gc.image != null ? imageStyle : altStyle);
|
|
}
|
|
}
|
|
}
|