Beispiel #1
0
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            var targetObject      = (AdaptiveAspectRatioFitterEnabler)serializedObject.targetObject;
            var propertiesChanged = false;

            EGUI.Horizontally(() =>
            {
                EGUI.Label("Enabled on Interfaces", 200);
                EGUI.Enum(targetObject.interfaceType, EnumRenderMode.DropDown, valueNew =>
                {
                    targetObject.interfaceType = (InterfaceType)valueNew;
                    propertiesChanged          = true;
                });
            });

            EGUI.Horizontally(() =>
            {
                EGUI.Label("Stretch", 200);
                EGUI.Checkbox(targetObject.stretch, valueNew =>
                {
                    targetObject.stretch = valueNew;
                    propertiesChanged    = true;
                });
            });

            EGUI.Horizontally(() =>
            {
                EGUI.Label("Reset offsets when ARF disabled", 200);
                EGUI.Checkbox(targetObject.resetOffsetsWhenAspectRationFitterDisabled, valueNew =>
                {
                    targetObject.resetOffsetsWhenAspectRationFitterDisabled = valueNew;
                    propertiesChanged = true;
                });
            });

            serializedObject.ApplyModifiedProperties();

            if (propertiesChanged)
            {
                targetObject.SendMessage("OnValidate", null, SendMessageOptions.DontRequireReceiver);
                EditorUtility.SetDirty(targetObject);
            }
        }