void Convert() { foreach (var elem in this.elements) { switch (elem.convertTo) { case ConvertTo.OptimizedImage: elem.image = OptimizedImageConverter.Convert <OptimizedImage>(elem.image); break; case ConvertTo.OptimizedFilledImage: elem.image = OptimizedImageConverter.Convert <OptimizedFilledImage>(elem.image); break; case ConvertTo.OptimizedQuadPolyImage: elem.image = OptimizedImageConverter.Convert <OptimizedQuadPolyImage>(elem.image); break; case ConvertTo.OptimizedRectImage: elem.image = OptimizedImageConverter.Convert <OptimizedRectImage>(elem.image); break; case ConvertTo.Gauge: elem.image = OptimizedImageConverter.Convert <Gauge>(elem.image); break; case ConvertTo.OriginalImage: elem.image = OptimizedImageConverter.Convert <Image>(elem.image); break; } } }
public override void OnInspectorGUI() { if (GUILayout.Button("Revert To UnityEngine.UI.Image")) { foreach (var target in this.targets) { OptimizedImageConverter.Convert <Image>(target as OptimizedImage); } return; } base.OnInspectorGUI(); EditorGUI.showMixedValue = this.resizeAutomatically.hasMultipleDifferentValues; EditorGUI.BeginChangeCheck(); var resizeAutomatically = EditorGUILayout.Toggle("Resize Automatically", this.resizeAutomatically.boolValue); EditorGUI.showMixedValue = false; if (EditorGUI.EndChangeCheck()) { this.resizeAutomatically.boolValue = resizeAutomatically; this.sobj.ApplyModifiedProperties(); this.sobj.Update(); } EditorGUI.showMixedValue = this.overrideRendering.hasMultipleDifferentValues; EditorGUI.BeginChangeCheck(); var overrideRendering = EditorGUILayout.Toggle("Override Rendering", this.overrideRendering.boolValue); EditorGUI.showMixedValue = false; if (EditorGUI.EndChangeCheck()) { this.overrideRendering.boolValue = overrideRendering; this.sobj.ApplyModifiedProperties(); this.sobj.Update(); } if (!this.overrideRendering.boolValue) { return; } this.OnInspectorOptimizedImage(); }