private void OnStateChanged_Recorder_(object sender, AudioRecorder.StateChangedEventArgs e) { //Logger.Log("AudioPaneViewModel.OnStateChanged_Recorder", Category.Debug, Priority.Medium); CommandManager.InvalidateRequerySuggested(); resetPeakMeter(); RaisePropertyChanged(() => IsRecording); RaisePropertyChanged(() => IsMonitoring); m_UrakawaSession.isAudioMonitoring = IsMonitoring; m_UrakawaSession.isAudioRecording = IsRecording; if ((e.OldState == AudioRecorder.State.Recording || e.OldState == AudioRecorder.State.Monitoring) && m_Recorder.CurrentState == AudioRecorder.State.Stopped) { UpdatePeakMeter(); //if (View != null) //{ // View.StopPeakMeterTimer(); //} if (View != null) { View.TimeMessageHide(); } //if (e.OldState != AudioRecorder.State.Monitoring && IsMonitoringAlways) //{ // CommandStartMonitor.Execute(); //} } if (IsRecording || IsMonitoring) { if (e.OldState == AudioRecorder.State.Stopped) { PeakOverloadCountCh1 = 0; PeakOverloadCountCh2 = 0; } UpdatePeakMeter(); //if (View != null) //{ // View.StartPeakMeterTimer(); //} if (View != null && (!IsMonitoring || !IsMonitoringAlways)) { View.TimeMessageShow(); } //AudioCues.PlayTock(); } }
//private TreeNode electNextRecordableNode(TreeNode current) //{ // TreeNode node = current; //tryNext: // TreeNode next = node.GetNextSiblingWithText(true); // if (next != null) // { // tryParent: // if (next.Parent != null) // { // foreach (var child in next.Parent.Children.ContentsAs_YieldEnumerable) // { // string text = child.GetTextFlattened(true); // if (!string.IsNullOrEmpty(text)) // { // text = text.Trim(); // we discard punctuation // if (TreeNode.TextOnlyContainsPunctuation(text)) // { // if (child == next) // { // node = next; // goto tryNext; // } // } // else if (child.GetXmlElementQName() == null) // { // next = next.Parent; // goto tryParent; // } // } // } // } // else // { // QualifiedName qName = next.GetXmlElementQName(); // if (qName == null) // { // node = next; // goto tryNext; // } // } // return next; // } // return null; //} private void OnStateChanged_Recorder(object sender, AudioRecorder.StateChangedEventArgs e) { if (!TheDispatcher.CheckAccess()) { TheDispatcher.BeginInvoke(DispatcherPriority.Normal, (Action <object, AudioRecorder.StateChangedEventArgs>)OnStateChanged_Recorder_, sender, e); return; } OnStateChanged_Recorder_(sender, e); }