コード例 #1
0
        private void FileLocations_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
        {
            if (e.Action == NotifyCollectionChangedAction.Add || e.Action == NotifyCollectionChangedAction.Remove)
            {
                var firstNotSecond = FileLocations.Except(Parent.SettingContainer.Settings.GeneralSettings.FileLocations).ToList();
                var secondNotFirst = Parent.SettingContainer.Settings.GeneralSettings.FileLocations.Except(FileLocations).ToList();

                bool changed = firstNotSecond.Any() || secondNotFirst.Any();

                if (changed)
                {
                    Parent.SettingContainer.Settings.GeneralSettings.FileLocations = FileLocations.ToList();
                    Parent.UpdateSettings(false);
                }
            }
        }
コード例 #2
0
        internal override void SettingsUpdated()
        {
            base.SettingsUpdated();

            SquaresX     = Parent.SettingContainer.Settings.CalibrationSettings.ChArucoCalibrationSettings.SquaresX;
            SquaresY     = Parent.SettingContainer.Settings.CalibrationSettings.ChArucoCalibrationSettings.SquaresY;
            MarkerLength = Parent.SettingContainer.Settings.CalibrationSettings.ChArucoCalibrationSettings.MarkerLength;
            SquareLength = Parent.SettingContainer.Settings.CalibrationSettings.ChArucoCalibrationSettings.SquareLength;
            Dictionary   = Parent.SettingContainer.Settings.CalibrationSettings.ChArucoCalibrationSettings.Dictionary;

            TagSize          = Parent.SettingContainer.Settings.CalibrationSettings.AprilGridCalibration.TagSize;
            TagSpacingFactor = Parent.SettingContainer.Settings.CalibrationSettings.AprilGridCalibration.TagSpacingFactor;
            TagsX            = Parent.SettingContainer.Settings.CalibrationSettings.AprilGridCalibration.TagsX;
            TagsY            = Parent.SettingContainer.Settings.CalibrationSettings.AprilGridCalibration.TagsY;

            SelectedHost = Parent.SettingContainer.Settings.ConnectionSettings.SelectedConnection;

            AccelerometerScale = Parent.SettingContainer.Settings.ImuSettings.AccelerometerScale;
            GyroscopeScale     = Parent.SettingContainer.Settings.ImuSettings.GyroscopeScale;
            TemperatureScale   = Parent.SettingContainer.Settings.ImuSettings.TemperatureScale;
            TemperatureOffset  = Parent.SettingContainer.Settings.ImuSettings.TemperatureOffset;

            var firstNotSecondFile = FileLocations.Except(Parent.SettingContainer.Settings.GeneralSettings.FileLocations).ToList();
            var secondNotFirstFile = Parent.SettingContainer.Settings.GeneralSettings.FileLocations.Except(FileLocations).ToList();

            bool changed = firstNotSecondFile.Any() || secondNotFirstFile.Any();

            if (changed)
            {
                List <FileLocation> l = Parent.SettingContainer.Settings.GeneralSettings.FileLocations.ToList();
                FileLocations.Clear();
                FileLocations.AddRange(l);
            }

            var firstNotSecondCon = Connections.Except(Parent.SettingContainer.Settings.ConnectionSettings.Connections).ToList();
            var secondNotFirstCon = Parent.SettingContainer.Settings.ConnectionSettings.Connections.Except(Connections).ToList();

            changed = firstNotSecondCon.Any() || secondNotFirstCon.Any();

            if (changed)
            {
                List <Connection> l = Parent.SettingContainer.Settings.ConnectionSettings.Connections.ToList();
                Connections.Clear();
                Connections.AddRange(l);
            }
        }