internal void ColonyRacetrackSettingsResponseHandler(ColonyRacetrackSettingsResponseMessage message)
        {
            IRacetrackSettingsSource source = m_Manager.Source;

            var reply = new RacetrackSettingsResponseMessage
                        {
                            TurnRadiusForPort = source.TurnRadiusForPort,
                            TurnRadiusForStarboard = source.TurnRadiusForStarboard,
                            IsPortTurnAllowed = source.IsPortTurnAllowed,
                            IsStarboardTurnAllowed = source.IsStarboardTurnAllowed
                        };

            m_MemoryBus.PublishAsync(reply);
        }
        private void UpdateAndNotify(RacetrackSettingsResponseMessage message)
        {
            Update(message.TurnRadiusForPort,
                   message.TurnRadiusForStarboard,
                   message.IsPortTurnAllowed,
                   message.IsStarboardTurnAllowed);

            IsApplying = false;

            NotifyPropertyChanged("IsApplyEnabled");

            m_CommandManager.InvalidateRequerySuggested();
        }
 internal void RacetrackSettingsResponseHandler(RacetrackSettingsResponseMessage message)
 {
     m_Dispatcher.BeginInvoke(() => UpdateAndNotify(message));
 }