public override void OnDataSetted() { UserVariableHierarchyData uhd = (UserVariableHierarchyData)data; if (data != null) { contextMenu = uhd.contextMenu; if (uhd.data.GetType().IsNumber()) { property.SetData(uhd.data, data.name, GUIProperty.PropertyType.Number); } else if (uhd.data.GetType().IsBool()) { property.SetData(uhd.data, data.name, GUIProperty.PropertyType.Boolean); } else { property.SetData(uhd.data, data.name, GUIProperty.PropertyType.String); } property.OnValueChanged.RemoveAllListeners(); property.OnValueChanged.AddListener(SetUserVariable); } }