/// <summary>
        /// Draws a field belonging to the object with the specified field name.
        /// </summary>
        /// <param name="obj">The object being drawn.</param>
        /// <param name="name">The name of the field.</param>
        public static void DrawField(object obj, string name)
        {
            var field = GetField(obj, name);

            if (field != null)
            {
                var prevValue = field.GetValue(obj);
                var value     = ObjectInspector.DrawObject(new GUIContent(SplitCamelCase(name), GetFieldTooltip(field)), field.FieldType, prevValue, name, 0, null, null, field, true);
                if (prevValue != value && GUI.changed)
                {
                    field.SetValue(obj, value);
                }
            }
            else
            {
                Debug.LogError("Error: Unable to find a field with name " + name + " on object " + obj);
            }
        }
Example #2
0
        /// <summary>
        /// Draws a field belonging to the object with the specified field name.
        /// </summary>
        /// <param name="obj">The object being drawn.</param>
        /// <param name="name">The name of the field.</param>
        public static void DrawField(object obj, string name)
        {
            var field = GetField(obj, name);

            if (field != null)
            {
                try {
                    var prevValue = field.GetValue(obj);
                    var value     = ObjectInspector.DrawObject(new GUIContent(Shared.Editor.Utility.EditorUtility.SplitCamelCase(name), GetFieldTooltip(field)), field.FieldType, obj, prevValue, name, 0, null, null, field, true);
                    if (prevValue != value && GUI.changed)
                    {
                        field.SetValue(obj, value);
                    }
                } catch (Exception /*e*/) { }
            }
            else
            {
                Debug.LogError($"Error: Unable to find a field with name {name} on object {obj}.");
            }
        }