// Select an object in the world by clicking its name in the outliner. Currently broken.
    public void selectedInOutliner(OutlinerItemManager item)
    {
        Debug.Log("Selected in outliner");

        for (int j = 0; j < OutlinerItems.Count; j++)
        {
            toggleButton toggle = OutlinerItems[j].GetComponent <toggleButton>();
            if (toggle != null)
            {
                if (j == item.index && !toggle.IsPressed)
                {
                    // select it!
                    //toggle.changeState();
                    if (gizmo != null)
                    {
                        gizmo.ClearAndAddTarget(item.obj.transform);
                    }
                    else
                    {
                        Debug.Log("gizmo is null in select()");
                    }
                }
                else if (toggle.IsPressed)
                {
                    // deselect it!
                    //toggle.changeState();
                }
            }
        }
    }
    // Creates a new entry for the object "obj" to the outliner.
    public void addItem(GameObject obj)
    {
        GameObject          newItem     = Instantiate(OutlinerItemPrefab) as GameObject;
        OutlinerItemManager itemManager = newItem.GetComponent <OutlinerItemManager>();
        Text objName = newItem.GetComponentInChildren <Text>();

        itemManager.manager = this;
        OutlinerItems.Add(newItem);
        objName.text = obj.name;
        newItem.transform.SetParent(outlinerContent.transform);
        newItem.transform.localScale = Vector3.one;

        if (itemManager != null)
        {
            // populate variables
            itemManager.objName = name;
            itemManager.obj     = obj;
            itemManager.index   = OutlinerItems.Count - 1;
        }
        else
        {
            // error
            Debug.Log("New item " + name + " does not have OutlinerItemManager component in populateOutliner().");
        }
    }