12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- using UnityEditor;
- using FairyGUI;
- namespace FairyGUIEditor
- {
- /// <summary>
- ///
- /// </summary>
- [CustomEditor(typeof(UIContentScaler))]
- public class UIContentScalerEditor : Editor
- {
- SerializedProperty scaleMode;
- SerializedProperty screenMatchMode;
- SerializedProperty designResolutionX;
- SerializedProperty designResolutionY;
- SerializedProperty fallbackScreenDPI;
- SerializedProperty defaultSpriteDPI;
- SerializedProperty constantScaleFactor;
- SerializedProperty ignoreOrientation;
- string[] propertyToExclude;
- void OnEnable()
- {
- scaleMode = serializedObject.FindProperty("scaleMode");
- screenMatchMode = serializedObject.FindProperty("screenMatchMode");
- designResolutionX = serializedObject.FindProperty("designResolutionX");
- designResolutionY = serializedObject.FindProperty("designResolutionY");
- fallbackScreenDPI = serializedObject.FindProperty("fallbackScreenDPI");
- defaultSpriteDPI = serializedObject.FindProperty("defaultSpriteDPI");
- constantScaleFactor = serializedObject.FindProperty("constantScaleFactor");
- ignoreOrientation = serializedObject.FindProperty("ignoreOrientation");
- propertyToExclude = new string[] { "m_Script", "scaleMode", "screenMatchMode", "designResolutionX", "designResolutionY",
- "fallbackScreenDPI", "defaultSpriteDPI", "constantScaleFactor", "ignoreOrientation"};
- }
- public override void OnInspectorGUI()
- {
- serializedObject.Update();
- DrawPropertiesExcluding(serializedObject, propertyToExclude);
- EditorGUILayout.PropertyField(scaleMode);
- if ((UIContentScaler.ScaleMode)scaleMode.enumValueIndex == UIContentScaler.ScaleMode.ScaleWithScreenSize)
- {
- EditorGUILayout.PropertyField(designResolutionX);
- EditorGUILayout.PropertyField(designResolutionY);
- EditorGUILayout.PropertyField(screenMatchMode);
- EditorGUILayout.PropertyField(ignoreOrientation);
- }
- else if ((UIContentScaler.ScaleMode)scaleMode.enumValueIndex == UIContentScaler.ScaleMode.ConstantPhysicalSize)
- {
- EditorGUILayout.PropertyField(fallbackScreenDPI);
- EditorGUILayout.PropertyField(defaultSpriteDPI);
- }
- else
- EditorGUILayout.PropertyField(constantScaleFactor);
- if (serializedObject.ApplyModifiedProperties())
- (target as UIContentScaler).ApplyModifiedProperties();
- }
- }
- }
|