private void Cd_ClockTypeChanged(object sender, ClockVM.ClockTypeChangedEventArgs e)
        {
            // these remain because there is a handler which is
            // un/subscribed here that has to do with the view
            // (VM should not access the view and modifying the view
            // just through data-binding, triggers and other WPF stuff
            // but timers are a case when the view must be updated
            // through classic ways)

            MToVM[e.NewClockM] = e.ClockVM;

            UnsubscribeFromClock(e.ClockVM);
            Model.UnsubscribeFromClock(e.OldClockM);
            Model.SubscribeToClock(e.NewClockM);
            SubscribeToClock(e.ClockVM); // like VMForM(e.NewClockM)

            MToVM.Remove(e.OldClockM);


            Model.ApplyFilterToClock(e.NewClockM);
        }
 private void ClockVMCollection_ClockTypeChanged(object sender, ClockVM.ClockTypeChangedEventArgs e)
 {
     UpdateClosestRingingMomentClockBasedOnChangedClock(e.NewClockM);
 }