Beispiel #1
0
        /// <inheritdoc />
        public AudioClipWindow(Editor editor, AssetItem item)
            : base(editor, item)
        {
            // Split Panel
            _split = new SplitPanel(Orientation.Horizontal, ScrollBars.None, ScrollBars.Vertical)
            {
                DockStyle     = DockStyle.Fill,
                SplitterValue = 0.7f,
                Parent        = this
            };

            // AudioClip preview
            _preview = new AudioClipPreview
            {
                DrawMode  = AudioClipPreview.DrawModes.Fill,
                DockStyle = DockStyle.Fill,
                Parent    = _split.Panel1
            };

            // AudioClip properties editor
            _propertiesEditor = new CustomEditorPresenter(null);
            _propertiesEditor.Panel.Parent = _split.Panel2;
            _properties = new PropertiesProxy();
            _propertiesEditor.Select(_properties);

            // Toolstrip
            _toolstrip.AddButton(Editor.Icons.Import32, () => Editor.ContentImporting.Reimport((BinaryAssetItem)Item)).LinkTooltip("Reimport");
            _toolstrip.AddSeparator();
            _toolstrip.AddButton(editor.Icons.Docs32, () => Platform.StartProcess(Utilities.Constants.DocsUrl + "manual/audio/audio-clip.html")).LinkTooltip("See documentation to learn more");
        }
Beispiel #2
0
        /// <inheritdoc />
        public override void OnThumbnailDrawPrepare(ThumbnailRequest request)
        {
            AudioClipPreview preview;

            if (_previews != null && _previews.Count > 0)
            {
                // Reuse preview control
                preview = _previews[_previews.Count - 1];
                _previews.RemoveAt(_previews.Count - 1);
            }
            else
            {
                // Create new preview control
                preview = new AudioClipPreview
                {
                    DrawMode     = AudioClipPreview.DrawModes.Fill,
                    Offsets      = Margin.Zero,
                    AnchorPreset = AnchorPresets.StretchAll,
                };
            }

            // Cached used preview in request data
            request.Tag = preview;

            // Start loading the audio buffers
            preview.Asset = (AudioClip)request.Asset;
        }
Beispiel #3
0
        /// <inheritdoc />
        public AudioClipWindow(Editor editor, AssetItem item)
            : base(editor, item)
        {
            // Split Panel
            _split = new SplitPanel(Orientation.Horizontal, ScrollBars.None, ScrollBars.Vertical)
            {
                DockStyle     = DockStyle.Fill,
                SplitterValue = 0.7f,
                Parent        = this
            };

            // AudioClip preview
            _preview = new AudioClipPreview()
            {
                Parent = _split.Panel1
            };

            // AudioClip properties editor
            _propertiesEditor = new CustomEditorPresenter(null);
            _propertiesEditor.Panel.Parent = _split.Panel2;
            _properties = new PropertiesProxy();
            _propertiesEditor.Select(_properties);

            // Toolstrip
            _toolstrip.AddButton(Editor.UI.GetIcon("Import32"), () => Editor.ContentImporting.Reimport((BinaryAssetItem)Item)).LinkTooltip("Reimport");
        }
Beispiel #4
0
        /// <inheritdoc />
        public override void OnThumbnailDrawPrepare(ThumbnailRequest request)
        {
            AudioClipPreview preview;

            if (_previews != null && _previews.Count > 0)
            {
                // Reuse preview control
                preview = _previews[_previews.Count - 1];
                _previews.RemoveAt(_previews.Count - 1);
            }
            else
            {
                // Create new preview control
                preview = new AudioClipPreview
                {
                    DrawMode  = AudioClipPreview.DrawModes.Fill,
                    DockStyle = DockStyle.Fill,
                    Size      = new Vector2(PreviewsCache.AssetIconSize)
                };
            }

            // Cached used preview in request data
            request.Tag = preview;

            // Start loading the audio buffers
            preview.Asset = (AudioClip)request.Asset;
        }
Beispiel #5
0
        /// <inheritdoc />
        public AudioClipWindow(Editor editor, AssetItem item)
            : base(editor, item)
        {
            // Split Panel
            _split = new SplitPanel(Orientation.Horizontal, ScrollBars.None, ScrollBars.Vertical)
            {
                AnchorPreset  = AnchorPresets.StretchAll,
                Offsets       = new Margin(0, 0, _toolstrip.Bottom, 0),
                SplitterValue = 0.7f,
                Parent        = this
            };

            // Preview
            _preview = new AudioClipPreview
            {
                DrawMode     = AudioClipPreview.DrawModes.Fill,
                AnchorPreset = AnchorPresets.StretchAll,
                Offsets      = Margin.Zero,
                Parent       = _split.Panel1
            };

            // Properties editor
            _propertiesEditor = new CustomEditorPresenter(null);
            _propertiesEditor.Panel.Parent = _split.Panel2;
            _properties = new PropertiesProxy();
            _propertiesEditor.Select(_properties);

            // Toolstrip
            _toolstrip.AddButton(Editor.Icons.Import64, () => Editor.ContentImporting.Reimport((BinaryAssetItem)Item)).LinkTooltip("Reimport");
            _toolstrip.AddSeparator();
            _playButton  = (ToolStripButton)_toolstrip.AddButton(Editor.Icons.Play64, OnPlay).LinkTooltip("Play/stop audio");
            _pauseButton = (ToolStripButton)_toolstrip.AddButton(Editor.Icons.Pause64, OnPause).LinkTooltip("Pause audio");
            _toolstrip.AddSeparator();
            _toolstrip.AddButton(editor.Icons.Docs64, () => Platform.OpenUrl(Utilities.Constants.DocsUrl + "manual/audio/audio-clip.html")).LinkTooltip("See documentation to learn more");
        }