Notes

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
(Removed width limit.)
(added JS)
Line 59: Line 59:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
[[Category:Editor Scripts]]
+
== JS - NoteEditor.js ==
[[Category:C Sharp]]
+
<syntaxhighlight lang="javascript">
 +
 
 +
CustomEditor(Note);
 +
 
 +
    private var note : Note;
 +
 +
    private var scrollPos : Vector2;
 +
 +
    function OnInspectorGUI ()
 +
    {
 +
        scrollPos = GUILayout.BeginScrollView(scrollPos, GUILayout.Height(100.0));
 +
        var myStyle : GUIStyle;
 +
        myStyle.wordWrap = true;
 +
        myStyle.stretchWidth = false;
 +
        myStyle.normal.textColor = Color.gray;
 +
        note.text = GUILayout.TextArea(note.text, myStyle, GUILayout.Width(200.0), GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true));
 +
        GUILayout.EndScrollView();
 +
        this.Repaint();     
 +
    }         
 +
 
 +
</syntaxhighlight>
 +
 
 +
 
 +
== JS - Note.js ==
 +
<syntaxhighlight lang="javascript">
 +
public class Note extends MonoBehaviour
 +
{
 +
    public var text : String = "Type your note here";
 +
}
 +
</syntaxhighlight>

Revision as of 19:47, 3 September 2013

Author: Jeremy Hollingsworth (jeremyace)

Contents

Description

Allows you to add a custom note field to any GameObject.

Usage

Place NoteEditor.cs in the Editor folder in your assets folder.

Place Note.cs in your chosen script folder.

To add a note, simply drag Note.cs to your object and type away.

Warning: This script uses unsupported code, so use at your own risk.

C# - NoteEditor.cs

using UnityEditor;
using UnityEngine;
using System;
 
[CustomEditor(typeof(Note))]
public class NoteEditor : Editor
{
    private Note note;
 
    private Vector2 scrollPos;
 
    private void Init()
    {
        note = base.target as Note;        
    }
 
    void OnInspectorGUI()
    {
        Init();
        scrollPos = GUILayout.BeginScrollView(scrollPos, GUILayout.Height(100.0F));
        GUIStyle myStyle = new GUIStyle();
        myStyle.wordWrap = true;
        myStyle.stretchWidth = false;
        myStyle.normal.textColor = Color.gray;
        note.text = GUILayout.TextArea(note.text, myStyle, GUILayout.Width(200.0F), GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true));
        GUILayout.EndScrollView();
        Repaint();       
    }          
}

C# - Note.cs

using UnityEngine;
 
public class Note : MonoBehaviour
{
    public string text = "Type your note here";
}

JS - NoteEditor.js

CustomEditor(Note);
 
    private var note : Note;
 
    private var scrollPos : Vector2;
 
    function OnInspectorGUI ()
    {
        scrollPos = GUILayout.BeginScrollView(scrollPos, GUILayout.Height(100.0));
        var myStyle : GUIStyle;
        myStyle.wordWrap = true;
        myStyle.stretchWidth = false;
        myStyle.normal.textColor = Color.gray;
        note.text = GUILayout.TextArea(note.text, myStyle, GUILayout.Width(200.0), GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true));
        GUILayout.EndScrollView();
        this.Repaint();       
    }


JS - Note.js

public class Note extends MonoBehaviour
{
    public var text : String = "Type your note here";
}
Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox