Beispiel #1
0
        public void readRecord(CrimeMonitorConfiguration configuration = null)
        {
            lock (recordLock)
            {
                // Obtain current criminal record from configuration
                configuration = configuration ?? CrimeMonitorConfiguration.FromFile();
                claims        = configuration.claims;
                fines         = configuration.fines;
                bounties      = configuration.bounties;
                maxStationDistanceFromStarLs =
                    configuration.maxStationDistanceFromStarLs ?? Constants.maxStationDistanceDefault;
                prioritizeOrbitalStations = configuration.prioritizeOrbitalStations;
                targetSystem = configuration.targetSystem;
                homeSystems  = configuration.homeSystems;
                updateDat    = configuration.updatedat;

                // Build a new criminal record
                List <FactionRecord> records = configuration.criminalrecord.OrderBy(c => c.faction).ToList();
                criminalrecord.Clear();
                foreach (FactionRecord record in records)
                {
                    criminalrecord.Add(record);
                }
            }
        }
Beispiel #2
0
        public ConfigurationWindow()
        {
            InitializeComponent();

            criminalRecord.ItemsSource = crimeMonitor()?.criminalrecord;

            CrimeMonitorConfiguration configuration = CrimeMonitorConfiguration.FromFile();

            prioritizeOrbitalStations.IsChecked = configuration.prioritizeOrbitalStations;
            maxStationDistanceInt.Text          = configuration.maxStationDistanceFromStarLs?.ToString(CultureInfo.InvariantCulture);
        }
Beispiel #3
0
        private void updateCheckbox()
        {
            CrimeMonitorConfiguration configuration = CrimeMonitorConfiguration.FromFile();
            bool isChecked = prioritizeOrbitalStations.IsChecked.Value;

            if (configuration.prioritizeOrbitalStations != isChecked)
            {
                crimeMonitor().prioritizeOrbitalStations = isChecked;
                configuration.prioritizeOrbitalStations  = isChecked;
                configuration.ToFile();
                crimeMonitor().UpdateStations();
            }
        }
Beispiel #4
0
        private void maxStationDistance_Changed()
        {
            CrimeMonitorConfiguration configuration = CrimeMonitorConfiguration.FromFile();

            try
            {
                int?distance = string.IsNullOrWhiteSpace(maxStationDistanceInt.Text)
                    ? 10000 : Convert.ToInt32(maxStationDistanceInt.Text, CultureInfo.InvariantCulture);
                if (distance != configuration.maxStationDistanceFromStarLs)
                {
                    crimeMonitor().maxStationDistanceFromStarLs = distance;
                    configuration.maxStationDistanceFromStarLs  = distance;
                    configuration.ToFile();
                    crimeMonitor().UpdateStations();
                }
            }
            catch
            {
                // Bad user input; ignore it
            }
        }