Ejemplo n.º 1
0
        /// <summary>
        /// Saves a given mod tuple to the hard disk.
        /// </summary>
        public void SaveMod(ImageModPathTuple oldModTuple)
        {
            if (oldModTuple == null)
            {
                return;
            }

            if (EnabledAppIds != null)
            {
                oldModTuple.ModConfig.SupportedAppId = EnabledAppIds.Where(x => x.Enabled).Select(x => x.Generic.AppId).ToArray();
            }

            oldModTuple.Save();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Saves the old mod tuple about to be swapped out by the UI and updates the UI
        /// with the details of the new tuple.
        /// </summary>
        public void SwapMods(ImageModPathTuple oldModTuple, ImageModPathTuple newModTuple)
        {
            // Save old collection.
            if (oldModTuple != null)
            {
                SaveMod(oldModTuple);
            }

            // Make new collection.
            if (newModTuple == null)
            {
                return;
            }

            var supportedAppIds = newModTuple.ModConfig.SupportedAppId;
            var tuples          = _mainPageViewModel.Applications.Select(x => new BooleanGenericTuple <ApplicationConfig>(supportedAppIds.Contains(x.Config.AppId), x.Config));

            EnabledAppIds = new ObservableCollection <BooleanGenericTuple <ApplicationConfig> >(tuples);
        }
Ejemplo n.º 3
0
        private void ListView_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
        {
            if (ViewModel.SelectedModTuple != null)
            {
                ViewModel.Icon = Imaging.BitmapFromUri(new Uri(ViewModel.SelectedModTuple.Image));
            }

            // Tell viewmodel to swap ModId compatibility chart.
            ImageModPathTuple oldModTuple = null;
            ImageModPathTuple newModTuple = null;

            if (e.RemovedItems.Count > 0)
            {
                oldModTuple = e.RemovedItems[0] as ImageModPathTuple;
            }

            if (e.AddedItems.Count > 0)
            {
                newModTuple = e.AddedItems[0] as ImageModPathTuple;
            }

            ViewModel.SwapMods(oldModTuple, newModTuple);
            e.Handled = true;
        }
        private BooleanGenericTuple <ImageModPathTuple> MakeSaveSubscribedGenericTuple(bool isEnabled, ImageModPathTuple item)
        {
            // Make BooleanGenericTuple that saves application on Enabled change.
            var tuple = new BooleanGenericTuple <ImageModPathTuple>(isEnabled, item);

            tuple.PropertyChanged += SaveOnEnabledPropertyChanged;
            return(tuple);
        }