private bool suppressTableOrFrameChange = true; // suppress until after form is loaded - since init fires notifications public WaveTableWindow(Registration registration, WaveTableObjectRec waveTableObject, IMainWindowServices mainWindow) { this.registration = registration; this.waveTableObject = waveTableObject; this.mainWindow = mainWindow; InitializeComponent(); this.Icon = OutOfPhase.Properties.Resources.Icon2; this.textBoxFormula.TextService = Program.Config.EnableDirectWrite ? TextEditor.TextService.DirectWrite : TextEditor.TextService.Uniscribe; this.textBoxFormula.AutoIndent = Program.Config.AutoIndent; DpiChangeHelper.ScaleFont(this, Program.Config.AdditionalUIZoom); menuStripManager.SetGlobalHandler(mainWindow); menuStripManager.HookUpTextEditorWindowHelper(this.textEditorWindowHelper); menuStripManager.HookUpTextBoxWindowHelper(this.textBoxWindowHelper); waveTableControl.WaveTableObject = waveTableObject; hScrollBarWaveTable.Scroll += new ScrollEventHandler(waveTableControl.OnIndexChanged); foreach (int i in WaveTableObjectRec.NumFramesAllowedValues) { comboBoxNumFrames.Items.Add(i.ToString()); } foreach (string item in EnumUtility.GetDescriptions(WaveTableObjectRec.NumBitsAllowedValues)) { comboBoxNumBits.Items.Add(item); } documentBindingSource.Add(mainWindow.Document); waveTableObjectRecBindingSource.Add(waveTableObject); waveTableObject.PropertyChanged += WaveTableObject_PropertyChanged; textBoxName.TextChanged += new EventHandler(textBoxName_TextChanged); GlobalNameChanged(); buttonTest.MouseDown += new MouseEventHandler(buttonTest_MouseDown); buttonTest.MouseUp += new MouseEventHandler(buttonTest_MouseUp); textBoxNumTables.Validated += new EventHandler(textBoxNumTables_TextChanged); comboBoxNumFrames.TextChanged += new EventHandler(comboBoxNumFrames_TextChanged); comboBoxNumBits.TextChanged += new EventHandler(ComboBoxNumBits_TextChanged); tabControlWave.SelectedIndexChanged += TabControlWave_SelectedIndexChanged; // dataGridViewWave.CellValueNeeded += DataGridViewWave_CellValueNeeded; dataGridViewWave.CellValuePushed += DataGridViewWave_CellValuePushed; RebuildDataGrid(); // labelScale.Visible = false; comboBoxScale.Visible = false; comboBoxScale.SelectedIndex = 0; registration.Register(waveTableObject, this); }
private int GetWaveTableFrames( ArrayHandleByte waveTableName) { string name = waveTableName.strings; WaveTableObjectRec waveTable = mainWindow.Document.WaveTableList.Find( delegate(WaveTableObjectRec candidate) { return(String.Equals(name, candidate.Name)); }); if (waveTable == null) { throw new EvalErrorException(EvalErrors.eEvalGetSampleNotDefined); } return(waveTable.NumFrames); }
bool IMenuStripManagerHandler.ExecuteMenuItem(MenuStripManager menuStrip, ToolStripMenuItem menuItem) { if (menuItem == menuStrip.buildObjectToolStripMenuItem) { BuildThis(true /*force*/); return(true); } else if (menuItem == menuStrip.disassembleToolStripMenuItem) { DisassembleThis(); return(true); } else if (menuItem == menuStrip.openAsWaveTableToolStripMenuItem) { if (BuildThis(false /*force*/)) { float[] raw = algoWaveTableObject.WaveTableData.GetRawCopy(); SampConv.QuantizeAndClampVector(raw, algoWaveTableObject.WaveTableData.NumBits); // ensure target bit depth is honored WaveTableObjectRec waveTableObject = new WaveTableObjectRec( mainWindow.Document, new WaveTableStorageRec( algoWaveTableObject.WaveTableData.NumTables, algoWaveTableObject.WaveTableData.NumFrames, algoWaveTableObject.WaveTableData.NumBits, raw)); waveTableObject.Name = String.Format("Copy of {0}", algoWaveTableObject.Name); mainWindow.Document.WaveTableList.Add(waveTableObject); new WaveTableWindow(registration, waveTableObject, mainWindow).Show(); } return(true); } else if (menuItem == menuStrip.deleteObjectToolStripMenuItem) { Close(); mainWindow.DeleteObject(algoWaveTableObject, mainWindow.Document.AlgoWaveTableList); return(true); } return(false); }
protected override object Load(BinaryReader reader, Document document) { waveTable = new WaveTableObjectRec(reader, new LoadContext(Document.CurrentFormatVersionNumber, document, LoadContextState.Paste)); return(waveTable); }
public WaveTableClipboard(WaveTableObjectRec waveTable, Document document) : base(document) { this.waveTable = waveTable; }