Jelajahi Sumber

Refactor: AudioListener and AudioSource inspectors are now auto-generated

BearishSun 6 tahun lalu
induk
melakukan
c54a8a7de3

+ 0 - 31
Source/EditorManaged/Inspectors/AudioListenerInspector.cs

@@ -1,31 +0,0 @@
-//********************************** Banshee Engine (www.banshee3d.com) **************************************************//
-//**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
-using bs;
-
-namespace bs.Editor
-{
-    /** @addtogroup Inspectors
-     *  @{
-     */
-
-    /// <summary>
-    /// Renders an inspector for the <see cref="AudioListener"/> component.
-    /// </summary>
-    [CustomInspector(typeof(AudioListener))]
-    internal class AudioListenerInspector : Inspector
-    {
-        /// <inheritdoc/>
-        protected internal override void Initialize()
-        {
-
-        }
-
-        /// <inheritdoc/>
-        protected internal override InspectableState Refresh(bool force = false)
-        {
-            return InspectableState.NotModified;
-        }
-    }
-
-    /** @} */
-}

+ 0 - 143
Source/EditorManaged/Inspectors/AudioSourceInspector.cs

@@ -1,143 +0,0 @@
-//********************************** Banshee Engine (www.banshee3d.com) **************************************************//
-//**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
-using bs;
-
-namespace bs.Editor
-{
-    /** @addtogroup Inspectors
-     *  @{
-     */
-
-    /// <summary>
-    /// Renders an inspector for the <see cref="AudioSource"/> component.
-    /// </summary>
-    [CustomInspector(typeof(AudioSource))]
-    internal class AudioSourceInspector : Inspector
-    {
-        private GUIResourceField audioClipField = new GUIResourceField(typeof(AudioClip), new LocEdString("Clip"));
-        private GUISliderField volumeField = new GUISliderField(0.0f, 1.0f, new LocEdString("Volume"));
-        private GUIFloatField pitchField = new GUIFloatField(new LocEdString("Pitch"));
-        private GUIToggleField loopField = new GUIToggleField(new LocEdString("Loop"));
-        private GUIIntField priorityField = new GUIIntField(new LocEdString("Priority"));
-        private GUIFloatField minDistanceField = new GUIFloatField(new LocEdString("Min. distance"));
-        private GUIFloatField attenuationField = new GUIFloatField(new LocEdString("Attenuation"));
-        private GUIToggleField playOnStartField = new GUIToggleField(new LocEdString("Play on start"));
-
-        private InspectableState modifyState;
-        
-        /// <inheritdoc/>
-        protected internal override void Initialize()
-        {
-            BuildGUI();
-        }
-
-        /// <inheritdoc/>
-        protected internal override InspectableState Refresh(bool force = false)
-        {
-            AudioSource source = InspectedObject as AudioSource;
-            if (source == null)
-                return InspectableState.NotModified;
-
-            audioClipField.ValueRef = source.Clip;
-            volumeField.Value = source.Volume;
-            pitchField.Value = source.Pitch;
-            loopField.Value = source.Loop;
-            priorityField.Value = (int)source.Priority;
-            minDistanceField.Value = source.MinDistance;
-            attenuationField.Value = source.Attenuation;
-            playOnStartField.Value = source.PlayOnStart;
-
-            InspectableState oldState = modifyState;
-            if (modifyState.HasFlag(InspectableState.Modified))
-                modifyState = InspectableState.NotModified;
-
-            return oldState;
-        }
-
-        /// <summary>
-        /// Recreates all the GUI elements used by this inspector.
-        /// </summary>
-        private void BuildGUI()
-        {
-            Layout.Clear();
-
-            AudioSource source = InspectedObject as AudioSource;
-            if (source == null)
-                return;
-
-            audioClipField.OnChanged += x =>
-            {
-                AudioClip clip = Resources.Load<AudioClip>(x.UUID);
-
-                source.Clip = clip;
-                MarkAsModified();
-                ConfirmModify();
-            };
-
-            volumeField.OnChanged += x =>
-            {
-                source.Volume = x;
-                MarkAsModified();
-                ConfirmModify();
-            };
-
-            pitchField.OnChanged += x => { source.Pitch = x; MarkAsModified(); };
-            pitchField.OnConfirmed += ConfirmModify;
-            pitchField.OnFocusLost += ConfirmModify;
-
-            loopField.OnChanged += x =>
-            {
-                source.Loop = x;
-                MarkAsModified();
-                ConfirmModify();
-            };
-
-            priorityField.OnChanged += x => { source.Priority = x; MarkAsModified(); };
-            priorityField.OnConfirmed += ConfirmModify;
-            priorityField.OnFocusLost += ConfirmModify;
-
-            minDistanceField.OnChanged += x => { source.MinDistance = x; MarkAsModified(); };
-            minDistanceField.OnConfirmed += ConfirmModify;
-            minDistanceField.OnFocusLost += ConfirmModify;
-
-            attenuationField.OnChanged += x => { source.Attenuation = x; MarkAsModified(); };
-            attenuationField.OnConfirmed += ConfirmModify;
-            attenuationField.OnFocusLost += ConfirmModify;
-
-            playOnStartField.OnChanged += x =>
-            {
-                source.PlayOnStart = x;
-                MarkAsModified();
-                ConfirmModify();
-            };
-
-            Layout.AddElement(audioClipField);
-            Layout.AddElement(volumeField);
-            Layout.AddElement(pitchField);
-            Layout.AddElement(loopField);
-            Layout.AddElement(priorityField);
-            Layout.AddElement(minDistanceField);
-            Layout.AddElement(attenuationField);
-            Layout.AddElement(playOnStartField);
-        }
-        
-        /// <summary>
-        /// Marks the contents of the inspector as modified.
-        /// </summary>
-        protected void MarkAsModified()
-        {
-            modifyState |= InspectableState.ModifyInProgress;
-        }
-
-        /// <summary>
-        /// Confirms any queued modifications.
-        /// </summary>
-        protected void ConfirmModify()
-        {
-            if (modifyState.HasFlag(InspectableState.ModifyInProgress))
-                modifyState |= InspectableState.Modified;
-        }
-    }
-
-    /** @} */
-}

+ 1 - 1
Source/bsf

@@ -1 +1 @@
-Subproject commit f1d2fe177c92e54be8498afc0ab0756ebeede0b0
+Subproject commit be40e5bc1d3011be6489e17210846e557f764120