protected bool Enable(bool force = false) { try { if (!force) { switch (target) { case MonoBehaviour monoBehaviour when Selection.activeObject != monoBehaviour.gameObject: case ScriptableObject _ when Selection.activeObject != target: return(false); } } m_drawer = new MightyDrawer(); m_drawer.OnEnableMonoScript(target, serializedObject); } catch (Exception ex) { if (ex.GetType().Name != "SerializedObjectNotCreatableException") { // This is a terrible fix, but it'll be enough until I find what's actually triggering this... // It might have to do with additive scenes or prefabs Debug.LogException(ex); } return(false); } return(true); }
public MightyContext(MightyDrawer drawer, Object obj, SerializedProperty scriptProperty, object target) { Object = obj; ScriptProperty = scriptProperty; Target = target; Drawer = drawer; }
public override void OnInspectorAbort(MightyDrawer drawer) { if (!MightyEditorUtilities.HasEditorChanged() || drawer == null) { return; } drawer.ApplyAutoValues(); drawer.RefreshAllDrawers(); }
public override void OnInspectorAbort(MightyDrawer drawer) { if (MightyEditorUtilities.HasEditorChanged() && drawer != null) { drawer.ApplyAutoValues(); drawer.RefreshAllDrawers(); } GUILayout.BeginVertical(); }
private void Enable() { m_drawer = new MightyDrawer(); try { m_drawer.OnEnableMonoScript(target, serializedObject); } catch { // ignored } }
private void Enable() { m_drawer = new MightyDrawer(); try { m_drawer.OnEnableWindow(this); } catch { // ignored } }
public static object[] GetAttributes(this SerializedProperty property, Type attributeType) { var fieldInfo = ReflectionUtility.GetField(property.GetSerializableClassProperty(out var name)?.GetSystemType() ?? property.GetTargetObject().GetType(), name); if (fieldInfo == null) { return(new object[0]); } var attributesList = new List <object>(); var attributes = fieldInfo.GetCustomAttributes(attributeType, true); if (attributes.Length > 0) { attributesList.AddRange(attributes); } var customWrapperDrawer = new MightyWrapperDrawer(); attributesList.AddRange(MightyDrawer.GetAttributesFromCustomWrappers(attributeType, fieldInfo, customWrapperDrawer)); return(attributesList.ToArray()); }
private void Disable() { m_drawer?.OnDisable(); m_drawer = null; DrawersDatabase.ClearCache(); }
public override void OnEnableClass(SerializedProperty script, Object context, BaseClassAttribute attribute, MightyDrawer drawer) { var hideStatusAttribute = (HideStatusClassAttribute)attribute; drawer.hideStatus |= hideStatusAttribute.HideStatus; }
public override void EndDrawClass(SerializedProperty script, Object context, BaseClassAttribute attribute, MightyDrawer drawer) { }
public abstract void OnDisableClass(SerializedProperty script, Object context, BaseClassAttribute attribute, MightyDrawer drawer);
protected void Disable() { m_drawer?.OnDisable(); m_drawer = null; MightyDrawersDatabase.ClearCachesNotOfTypes(typeof(BaseHierarchyAttribute), typeof(BaseReloadScriptsAttribute)); }
public abstract void OnInspectorAbort(MightyDrawer drawer);