Exemplo n.º 1
0
        public void AddStep(MenuItem Item)
        {
            String TagStr   = Item.Tag.ToString();
            String StepName = Item.Header.ToString();
            int    StepID   = 0;

            int.TryParse(TagStr, out StepID);
            LogicStepScreen vm = GetViewModel(TagStr);

            if (vm == null)
            {
                M_ConfirmEvent(null, new T_LogicStep()
                {
                    Name = StepName, StepID = StepID, StepEnum = (LogicStepEnum)Convert.ToByte(TagStr)
                });
            }
            else if (vm is LogicStepScreen m)
            {
                m.ConfirmEvent += M_ConfirmEvent;
                m.Name          = StepName;
                m.StepID        = StepID;
                windowManager.ShowDialog(vm);
            }
        }
Exemplo n.º 2
0
        private LogicStepScreen GetViewModel(String IndexStr)
        {
            LogicStepScreen vm       = null;
            LogicStepEnum   stepEnum = (LogicStepEnum)Convert.ToByte(IndexStr);

            switch (stepEnum)
            {
            case LogicStepEnum.InitAll:
            case LogicStepEnum.InitZ:
            case LogicStepEnum.InitS:
            {
                break;
            }

            case LogicStepEnum.Alert:
            {
                vm = IoC.Get <MessageViewModel>();
                //
                break;
            }

            case LogicStepEnum.Delay:
            {
                vm = IoC.Get <Time_lapseViewModel>();
                break;
            }

            case LogicStepEnum.TimerStart:
            {
                vm = IoC.Get <TimingViewModel>();
                break;
            }

            case LogicStepEnum.WaitTimer:
            {
                vm = IoC.Get <WaitTimingViewModel>();
                break;
            }

            case LogicStepEnum.LoopStart:
            {
                vm = IoC.Get <LoopViewModel>();
                break;
            }

            case LogicStepEnum.LoopEnd:
            {
                vm = IoC.Get <LoopEndViewModel>();
                break;
            }

            case LogicStepEnum.SubFunc:
            {
                vm = IoC.Get <SubFuncViewModel>();
                break;
            }

            case LogicStepEnum.Hex:
            {
                vm = IoC.Get <HexViewModel>();
                break;
            }

            case LogicStepEnum.OutTip:
            {
                vm = IoC.Get <UploadTipViewModel>();
                break;
            }

            case LogicStepEnum.TakeTip:
            {
                vm = IoC.Get <TakeTipViewModel>();
                break;
            }

            case LogicStepEnum.MoveXY:
            {
                vm = IoC.Get <XYMoveViewModel>();
                break;
            }

            case LogicStepEnum.MoveZ:
            {
                vm = IoC.Get <ZMoveViewModel>();
                break;
            }

            case LogicStepEnum.SimpleAction:
            {
                vm = IoC.Get <ActionViewModel>();
                break;
            }

            case LogicStepEnum.DetectSquid:
            {
                vm = IoC.Get <LiquidLevelDetectViewModel>();
                break;
            }

            case LogicStepEnum.ZBySquid:
            {
                vm = IoC.Get <ZLiquidLevelMoveViewModel>();
                break;
            }

            case LogicStepEnum.FixedIn:
            {
                vm = IoC.Get <FixedAbsorbViewModel>();
                break;
            }

            case LogicStepEnum.FixedOut:
            {
                vm = IoC.Get <FixedDivideViewModel>();
                break;
            }

            case LogicStepEnum.TakeGel:
            case LogicStepEnum.PutDownGel:
            {
                vm = IoC.Get <TakeGELViewModel>();
                break;
            }

            //case "21":
            //    {
            //        vm = IoC.Get<PutGELViewModel>();
            //        break;
            //    }
            case LogicStepEnum.Piercer:
            {
                vm = IoC.Get <PierceViewModel>();
                break;
            }

            case LogicStepEnum.Centrifuge:
            {
                vm = IoC.Get <CentrifugeViewModel>();
                break;
            }

            case LogicStepEnum.GelWarehouse:
            {
                vm = IoC.Get <GelWarehouseViewModel>();
                break;
            }

            case LogicStepEnum.Couveuse:
            {
                vm = IoC.Get <HatcherViewModel>();
                break;
            }

            case LogicStepEnum.TakeAndPutDownGel:
            {
                vm = IoC.Get <TakeAndPutGelViewModel>();
                break;
            }
            }
            if (vm is LogicStepScreen lgvm)
            {
                lgvm.StepEnum = stepEnum;
            }
            return(vm);
        }