コード例 #1
0
        private void AddBoolControl(Dsp dsp, ref DspParameterDesc info, int index)
        {
            var boolPanel = new IntParameterPanel();

            boolPanel.ComboBox.Items.AddRange(new object[] { "False", "True" });
            boolPanel.Description   = info.Description;
            boolPanel.Anchor        = AnchorStyles.Left | AnchorStyles.Right;
            boolPanel.ValueChanged += (s, e) => dsp.SetParameterBool(index, boolPanel.Value == 1);
            flowPanel.Controls.Add(boolPanel, 0, index);
        }
コード例 #2
0
        private void AddIntControl(Dsp dsp, ref DspParameterDesc info, int index)
        {
            var intPanel = new IntParameterPanel();

            // ReSharper disable once CoVariantArrayConversion
            intPanel.ComboBox.Items.AddRange(info.IntDescription.ValueNames);
            intPanel.Description   = info.Description;
            intPanel.Anchor        = AnchorStyles.Left | AnchorStyles.Right;
            intPanel.Value         = dsp.GetParameterInt(index);
            intPanel.ValueChanged += (s, e) => dsp.SetParameterInt(index, intPanel.Value);
            flowPanel.Controls.Add(intPanel, 0, index);
        }
コード例 #3
0
        public Result GetParameterInfo(int index, out DspParameterDesc desc)
        {
            IntPtr descPtr;
            Result result = FMOD_DSP_GetParameterInfo(RawPtr, index, out descPtr);

            if (result == Result.Ok)
            {
                desc = Marshal.PtrToStructure <DspParameterDesc>(descPtr);
            }
            else
            {
                desc = new DspParameterDesc();
            }
            return(result);
        }
コード例 #4
0
        private void AddFloatControl(Dsp dsp, ref DspParameterDesc info, int index)
        {
            var floatPanel = new FloatParameterPanel
            {
                ParameterUnit        = info.Label,
                ParameterDescription = info.Description
            };

            floatPanel.TrackBarControl.Maximum    = info.FloatDescription.Maximum;
            floatPanel.TrackBarControl.Minimum    = info.FloatDescription.Minimum;
            floatPanel.TrackBarControl.TickFactor = 20;
            floatPanel.TrackBarControl.Value      = dsp.GetParameterFloat(index);
            floatPanel.Anchor        = AnchorStyles.Left | AnchorStyles.Right;
            floatPanel.ValueChanged += (s, e) => dsp.SetParameterFloat(index, floatPanel.Value);
            flowPanel.Controls.Add(floatPanel, 0, index);
        }
コード例 #5
0
        // ReSharper disable once UnusedParameter.Local
        private void AddDataControl(Dsp dsp, ref DspParameterDesc info, int index)
        {
            var panel = new IntParameterPanel {
                Description = info.Description
            };

            panel.ComboBox.Visible = false;
            panel.Anchor           = AnchorStyles.Left | AnchorStyles.Right;
            var label = new Label
            {
                Text      = @"Unable to create dynamic control for ""Data"" parameters.",
                ForeColor = Color.Red,
                AutoSize  = false,
                TextAlign = ContentAlignment.MiddleCenter,
                Anchor    = AnchorStyles.Bottom | AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right,
                Size      = new Size(371, 45),
                Location  = new Point(6, 42)
            };

            panel.Controls.Add(label);
            flowPanel.Controls.Add(panel, 0, index);
        }