public DetectorenExtraTabViewModel() : base()
 {
     MessengerInstance.Register <Messaging.Requests.PrepareForGenerationRequest>(this, (msg) =>
     {
         Detectoren.BubbleSort();
     });
 }
 private void UpdateDetectoren()
 {
     foreach (var d in Detectoren)
     {
         d.PropertyChanged -= Detector_PropertyChanged;
     }
     Detectoren.Clear();
     foreach (var fcm in _Controller.Fasen)
     {
         foreach (var dm in fcm.Detectoren)
         {
             var dvm = new DetectorViewModel(dm)
             {
                 FaseCyclus = fcm.Naam
             };
             dvm.PropertyChanged += Detector_PropertyChanged;
             Detectoren.Add(dvm);
         }
     }
     Detectoren.BubbleSort();
     foreach (var dm in _Controller.Detectoren)
     {
         var dvm = new DetectorViewModel(dm);
         dvm.PropertyChanged += Detector_PropertyChanged;
         Detectoren.Add(dvm);
     }
 }
示例#3
0
        void RemoveDetectorCommand_Executed(object prm)
        {
            bool changed = false;
            var  remDets = new List <DetectorModel>();

            if (SelectedDetectoren != null && SelectedDetectoren.Count > 0)
            {
                changed = true;
                foreach (DetectorViewModel dvm in SelectedDetectoren)
                {
                    remDets.Add(dvm.Detector);
                    Integrity.TLCGenControllerModifier.Default.RemoveDetectorFromController(dvm.Naam);
                }
            }
            else if (SelectedDetector != null)
            {
                changed = true;
                remDets.Add(SelectedDetector.Detector);
                Integrity.TLCGenControllerModifier.Default.RemoveDetectorFromController(SelectedDetector.Naam);
            }
            RebuildDetectorenList();
            MessengerInstance.Send(new ControllerDataChangedMessage());

            if (changed)
            {
                Messenger.Default.Send(new DetectorenChangedMessage(_Controller, null, remDets));
                Detectoren.BubbleSort();
            }
        }
示例#4
0
        void AddDetectorCommand_Executed(object prm)
        {
            DetectorModel dm       = new DetectorModel();
            string        newname  = "001";
            int           inewname = 1;

            foreach (DetectorViewModel dvm in Detectoren)
            {
                if (Regex.IsMatch(dvm.Naam, @"[0-9]+"))
                {
                    Match  m    = Regex.Match(dvm.Naam, @"[0-9]+");
                    string next = m.Value;
                    if (Int32.TryParse(next, out inewname))
                    {
                        newname = inewname.ToString("000");
                        while (!TLCGenModelManager.Default.IsElementIdentifierUnique(TLCGenObjectTypeEnum.Detector, newname))
                        {
                            inewname++;
                            newname = inewname.ToString("000");
                        }
                    }
                }
            }
            dm.Naam = newname;
            DefaultsProvider.Default.SetDefaultsOnModel(dm, dm.Type.ToString());
            dm.AanvraagDirect = false; // Not possible / allowed on loose detector
            DetectorViewModel dvm1 = new DetectorViewModel(dm);

            Detectoren.Add(dvm1);
            Messenger.Default.Send(new DetectorenChangedMessage(_Controller, new List <DetectorModel> {
                dm
            }, null));
            Detectoren.BubbleSort();
        }
示例#5
0
 public DetectorenExtraTabViewModel() : base()
 {
     MessengerInstance.Register <Messaging.Requests.PrepareForGenerationRequest>(this, (msg) =>
     {
         Detectoren.BubbleSort();
     });
     MessengerInstance.Register <Messaging.Messages.NameChangedMessage>(this, (msg) =>
     {
         if (msg.ObjectType == TLCGenObjectTypeEnum.Detector)
         {
             Detectoren.BubbleSort();
         }
     });
 }