public override void OnPreviewSettings()
{
if (s_DefaultIcon == null)
{
Init();
}
AudioClip clip = target as AudioClip;
using (new EditorGUI.DisabledScope(AudioUtil.IsMovieAudio(clip)))
{
bool isEditingMultipleObjects = targets.Length > 1;
using (new EditorGUI.DisabledScope(isEditingMultipleObjects))
{
bool oldAutoPlay = isEditingMultipleObjects ? false : m_bAutoPlay;
bool newAutoPlay = PreviewGUI.CycleButton(oldAutoPlay ? 1 : 0, s_AutoPlayIcons) != 0;
if (oldAutoPlay != newAutoPlay)
{
m_bAutoPlay = newAutoPlay;
InspectorWindow.RepaintAllInspectors();
}
bool oldLoop = isEditingMultipleObjects ? false : m_bLoop;
bool newLoop = PreviewGUI.CycleButton(oldLoop ? 1 : 0, s_LoopIcons) != 0;
if (oldLoop != newLoop)
{
m_bLoop = newLoop;
if (playing)
{
AudioUtil.LoopClip(clip, newLoop);
}
InspectorWindow.RepaintAllInspectors();
}
}
using (new EditorGUI.DisabledScope(isEditingMultipleObjects && !playing && m_PlayingInspector != this))
{
bool curPlaying = m_PlayingInspector == this && playing;
bool newPlaying = PreviewGUI.CycleButton(curPlaying ? 1 : 0, s_PlayIcons) != 0;
if (newPlaying != curPlaying)
{
AudioUtil.StopAllClips();
if (newPlaying)
{
AudioUtil.PlayClip(clip, 0, m_bLoop);
m_PlayingClip = clip;
m_PlayingInspector = this;
}
}
}
}
}