Example #1
0
        private bool ImportControllerCommand_CanExecute(object obj)
        {
            if (obj == null)
            {
                return(false);
            }

            ITLCGenImporter imp = obj as ITLCGenImporter;

            if (imp == null)
            {
                throw new NotImplementedException();
            }

            if (imp.ImportsIntoExisting)
            {
                return(ControllerVM != null);
            }

            return(true);
        }
Example #2
0
        private void ImportControllerCommand_Executed(object obj)
        {
            if (obj == null)
            {
                throw new NotImplementedException();
            }
            ITLCGenImporter imp = obj as ITLCGenImporter;

            if (imp == null)
            {
                throw new NotImplementedException();
            }

            // Import into existing controller
            if (!ControllerHasChanged())
            {
                if (imp.ImportsIntoExisting)
                {
                    // Check data integrity
                    string s1 = IntegrityChecker.IsControllerDataOK(ControllerVM.Controller);
                    if (s1 != null)
                    {
                        System.Windows.MessageBox.Show("Kan niet importeren:\n\n" + s1, "Error bij importeren: fout in regeling");
                        return;
                    }
                    // Import to clone of original (so we can discard if wrong)
                    ControllerModel c1 = DeepCloner.DeepClone(ControllerVM.Controller);
                    ControllerModel c2 = imp.ImportController(c1);

                    // Do nothing if the importer returned nothing
                    if (c2 == null)
                    {
                        return;
                    }

                    // Check data integrity
                    s1 = IntegrityChecker.IsControllerDataOK(c2);
                    if (s1 != null)
                    {
                        System.Windows.MessageBox.Show("Fout bij importeren:\n\n" + s1, "Error bij importeren: fout in data");
                        return;
                    }
                    if (ControllerVM != null)
                    {
                        ControllerVM.HasChanged = false; // Set forcefully, in case the user decided to ignore changes above
                    }
                    SetController(c2);
                    ControllerVM.ReloadController();
                    ControllerVM.HasChanged = true;
                }
                // Import as new controller
                else
                {
                    ControllerModel c1 = imp.ImportController();

                    // Do nothing if the importer returned nothing
                    if (c1 == null)
                    {
                        return;
                    }

                    // Check data integrity
                    string s1 = IntegrityChecker.IsControllerDataOK(c1);
                    if (s1 != null)
                    {
                        System.Windows.MessageBox.Show("Fout bij importeren:\n\n" + s1, "Error bij importeren: fout in data");
                        return;
                    }
                    if (ControllerVM != null)
                    {
                        ControllerVM.HasChanged = false; // Set forcefully, in case the user decided to ignore changes above
                    }
                    SetNewController(c1);
                    ControllerVM.ReloadController();
                    ControllerVM.HasChanged = true;
                }
            }
        }