Exemple #1
0
 public override void StartHandler(BaseClass sender, StateEventArgs e)
 {
     base.StartHandler(sender, e);
     ActionSMEMAReady(false);
     IsPlacingPart = false;
     IsSortPicking = false;
 }
Exemple #2
0
        /// <summary>
        /// Event that gets called to update GUI and projectstate on NewProject.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void NewProject_CreateProject(object sender, StateEventArgs e)
        {
            Close_Click(null, null);

            this.framesContainer.Clear();

            this.SequencePanel.Child = timeLinePanel;

            //Update projectstate
            this.projectstate.Active      = e.ACTIVE;
            this.projectstate.Saved       = e.SAVED;
            this.projectstate.FileName    = e.FILENAME;
            this.projectstate.Destination = e.DESTINATION;
            this.projectstate.Width       = e.WIDTH;
            this.projectstate.Height      = e.HEIGHT;

            this.projectstate.EditorState = ProjectState.ProjectEditorState.Create;

            //Set Viewport
            this.GLControl.Children.Add(glHost);
            System.Drawing.Size frameSize = new System.Drawing.Size(projectstate.Width, projectstate.Height);
            glHost.SetProjectFrameSize(frameSize);
            exporter.SetFrameSize(frameSize);

            framesContainer.AddFrame(new Model.Frame(null));
            this.projectstate.ActiveLayerIndex = 0;

            EnableMenuItems();

            EnableButtons();

            EnableLayers();
        }
        protected virtual void Update()
        {
            if (WaitForOtherAnimations && m_CurrentTransitionArgs != null && m_CurrentTransitionArgs.HasTransitions(this, WaitForTransitionTypes))
            {
                m_StartTime = Now;
                return;
            }

            float progress = (Now - m_StartTime) / Duration;

            progress = Mathf.Clamp01(progress);

            TargetCanvas.alpha = Mathf.Lerp(m_StartAlpha, m_EndAlpha, progress);

            if (progress >= 1.0f)
            {
                if (m_EndAlpha == 0.0f)
                {
                    TargetCanvas.gameObject.SetActive(false);
                }
                enabled = false;

                if (m_CurrentTransitionArgs != null)
                {
                    m_CurrentTransitionArgs.RemoveTransition(this);
                    m_CurrentTransitionArgs = null;
                }
            }
        }
        protected virtual void OnStateChanged(StateEventArgs <TState> e)
        {
            bool prevIsActive = Array.IndexOf(ActiveStates, e.PrevState) != -1;
            bool nextIsActive = Array.IndexOf(ActiveStates, e.NextState) != -1;

            if (prevIsActive == nextIsActive && !AlwaysTriggerCallback)
            {
                return;
            }

            if (Invert)
            {
                if (nextIsActive)
                {
                    OnDeactivateStateChanged.Invoke();
                }
                if (prevIsActive)
                {
                    OnActivateStateChanged.Invoke();
                }
            }
            else
            {
                if (nextIsActive)
                {
                    OnActivateStateChanged.Invoke();
                }
                if (prevIsActive)
                {
                    OnDeactivateStateChanged.Invoke();
                }
            }
        }
Exemple #5
0
        private void Updater_StateChanged(object sender, StateEventArgs e)
        {
            if (InvokeRequired)
            {
                Invoke(new Action <object, StateEventArgs>(Updater_StateChanged), sender, e);
            }
            else if (!Disposing && !IsDisposed)
            {
                var msg = string.Empty;
                switch (e.State)
                {
                case UpdaterState.DownloadingVerification:
                    msg = "Baixando verificação...";
                    break;

                case UpdaterState.CheckingFiles:
                    msg = "Verificando lista de arquivos...";
                    break;

                case UpdaterState.Failed:
                    msg = "Falha no atualizador!";
                    break;

                case UpdaterState.Downloading:
                    msg = "Baixando atualizações...";
                    break;

                case UpdaterState.Finished:
                    msg = "Atualizações finalizadas!";
                    break;
                }
                lblStatus.Text = msg;
            }
        }
Exemple #6
0
 public override void run(StateEventArgs inputEventArg)
 {
     lock (runLock)
     {
         base.run(inputEventArg);
         //doneArgs.eventName = "TransPNPMoveLeftFinish";
         switch (inputEventArg.eventName)
         {
         case "LoadPNPPlaceFinish":     //From state StartLoadPNP
             while (!ClassWorkZones.Instance.WorkZone传送机械手.IsWorkFree)
             {
                 Thread.Sleep(1);
                 if (!owner.IsRunning)
                 {
                     return;
                 }
             }
             while (!ClassWorkZones.Instance.WorkZone传送机械手.AxisTransPNPX.MoveTo(ClassZone传送机械手.EnumPointPNPX.Load))
             {
                 if (ClassWorkZones.Instance.WorkZone传送机械手.DispMotionError(ClassWorkZones.Instance.WorkZone传送机械手.AxisTransPNPX, ClassZone传送机械手.EnumPointPNPX.Load) != null)
                 {
                     return;
                 }
             }
             DoneReturn("TransPNPMoveLeftFinish");
             break;
         }
     }
 }
Exemple #7
0
 public override void run(StateEventArgs inputEventArg)
 {
     lock (runLock)
     {
         switch (inputEventArg.eventName)
         {
         case "UnloadPNPPickFinish":     //From state PickPart
         case "WaitUnloadOutEmpty":
             if (!ClassWorkZones.Instance.WorkZone下料传送.IsUnLoadHavePartEmpty)
             {
                 DoneReturn("WaitUnloadOutEmpty");
                 return;
             }
             base.run(inputEventArg);
             ClassZone下料机械手     UnloadZone = ClassWorkZones.Instance.WorkZone下料机械手;
             ErrorInfoWithPause res        = UnloadZone.ActionMove(ClassZone下料机械手.EnumPoint.Place);
             if (res != null)
             {
                 ClassErrorHandle.ShowError("下料PNP放料", res);
                 return;
             }
             ErrorReturnHandler("", "", ErrorDialogResult.OK);
             break;
         }
     }
 }
Exemple #8
0
        public async Task TestGetSetOnOff()
        {
            StateEventArgs args = null;

            Communication.StaticOnStateEvent += (o, e) => { args = e; };
            Communication.StartEventListener(IP, PORT, AUTH_TOKEN);
            await Task.Delay(5000);

            Assert.IsTrue(await Communication.SetStateOnOff(IP, PORT, AUTH_TOKEN, false));
            Assert.AreEqual(false, await Communication.GetStateOnOff(IP, PORT, AUTH_TOKEN));
            while (args?.StateEvents?.Events?.FirstOrDefault(e => e.Attribute == EAttribute.On) == null)
            {
                await Task.Delay(1);
            }
            Assert.AreEqual(IP, args.IP);
            Assert.AreEqual(EAttribute.On, args.StateEvents.Events.First(e => e.Attribute == EAttribute.On).Attribute);
            Assert.AreEqual(false, args.StateEvents.Events.First(e => e.Attribute == EAttribute.On).Value);
            args = null;

            await Task.Delay(5000);

            Assert.IsTrue(await Communication.SetStateOnOff(IP, PORT, AUTH_TOKEN, true));
            Assert.AreEqual(true, await Communication.GetStateOnOff(IP, PORT, AUTH_TOKEN));
            while (args?.StateEvents?.Events?.FirstOrDefault(e => e.Attribute == EAttribute.On) == null)
            {
                await Task.Delay(1);
            }
            Assert.AreEqual(IP, args.IP);
            Assert.AreEqual(EAttribute.On, args.StateEvents.Events.First(e => e.Attribute == EAttribute.On).Attribute);
            Assert.AreEqual(true, args.StateEvents.Events.First(e => e.Attribute == EAttribute.On).Value);
            args = null;
            await Task.Delay(5000);
        }
Exemple #9
0
 public override void StartHandler(BaseClass sender, StateEventArgs e)
 {
     base.StartHandler(sender, e);
     EventCCDMeasFinish          = false;
     EventTransPNPMoveLeftFinish = false;
     UnloadPNPFinish             = true;
 }
Exemple #10
0
 private void MainForm_UserLoggedOut1(BaseClass sender, StateEventArgs e)
 {
     if (_currUser != null)
     {
         ClassCommonSetting.ProgramLog(LogFile.Level.Info, "用户", "注销用户:" + _currUser.Name);
     }
 }
        private void Speedometer_PlayerStateChanged(object sender, StateEventArgs e)
        {
            if (!(sender is Player player))
            {
                return;
            }

            if (e.NewState == PlayerState.Driving || e.NewState == PlayerState.Passenger)
            {
                player.VehicleNameTextDraw.Show();
                player.SpeedometerTextDraw.Show();
                player.FuelGaugeTextDraw.Show();

                player.Speed = 0;

                player.SpeedometerTimer.IsRunning = true;
            }
            else if (e.OldState == PlayerState.Driving || e.OldState == PlayerState.Passenger)
            {
                player.VehicleNameTextDraw.Hide();
                player.SpeedometerTextDraw.Hide();
                player.FuelGaugeTextDraw.Hide();

                player.Speed = 0;

                player.SpeedometerTimer.IsRunning = false;
            }
        }
        protected virtual void OnTransitionStarts(StateEventArgs <TState> e)
        {
            if (SkipFirstFadeIn)
            {
                SkipFirstFadeIn = false;
                return;
            }

            if (Array.IndexOf(SkipWhenExitingFrom, e.PrevState) != -1)
            {
                return;
            }
            if (Array.IndexOf(SkipWhenEnteringTo, e.NextState) != -1)
            {
                return;
            }

            m_CurrentTransitionArgs = e;
            m_CurrentTransitionArgs.AddTransition(this);

            m_StartTime  = Now;
            m_StartAlpha = (Inverse) ? 1.0f : 0.0f;
            m_EndAlpha   = (Inverse) ? 0.0f : 1.0f;

            TargetCanvas.alpha = m_StartAlpha;

            TargetCanvas.gameObject.SetActive(true);
            enabled = true;
        }
 public override void ProgramExitHandler(BaseClass sender, StateEventArgs e)
 {
     BeepDisable = true;
     base.ProgramExitHandler(sender, e);
     ClassWorkZones.Instance.WorkZone外框架.SwitchKM(false);
     ThisInport(EnumInportName.FrameButtonStop).SetOutput(false);
 }
Exemple #14
0
 public override void run(StateEventArgs inputEventArg)
 {
     lock (runLock)
     {
         base.run(inputEventArg);
         switch (inputEventArg.eventName)
         {
         case "LoadinFinish":                                                                 //From state StartLoadin
         case "WaitPNPFree":
             if (ClassWorkZones.Instance.WorkZone上料传送.LoadInDataStations[0].CellData == null) // && !ClassWorkZones.Instance.WorkZone上料传送.ThisInport(ClassZone上料传送.EnumInportName.LoadInConvInPos).status)
             {
                 return;
             }
             if (isRunning)
             {
                 DoneReturn("WaitPNPFree");
             }
             else if (owner.IsRunning)
             {
                 isRunning = true;
                 parts     = ClassWorkZones.Instance.WorkZone上料传送.GetDataInfoString();
                 ClassCommonSetting.SMLogInfo(this.owner.Name, this.Name, "上料机械手开始取物料: " + parts);
                 ClassWorkFlow.Instance.LoadPNPLoadSM.subscribeMeToResponseEvents(this);
                 ClassWorkFlow.Instance.LoadPNPLoadSM.StartHandler(this, null);
             }
             break;
         }
     }
 }
Exemple #15
0
 public override void run(StateEventArgs inputEventArg)
 {
     lock (runLock)
     {
         switch (inputEventArg.eventName)
         {
         case "Start":        //From state Idle
         case "NotReady":     //From state CheckLoadIn
         case "LoadinFinish": //From state StartLoadin
             ErrorInfoWithPause res = ClassWorkZones.Instance.WorkZone上料传送.CheckLoadReady();
             if (!ClassWorkZones.Instance.WorkZone上料机械手.isPicking && res == null)
             {
                 if (ClassWorkFlow.Instance.LoadMode == EnumLoadMode.手动)
                 {
                     Thread.Sleep(ClassCommonSetting.SysParam.ManualLoadDelayTime);
                     //重新检测,防止误操作
                     res = ClassWorkZones.Instance.WorkZone上料传送.CheckLoadReady();
                     if (!(!ClassWorkZones.Instance.WorkZone上料机械手.isPicking && res == null))
                     {
                         DoneReturn("NotReady");
                         return;
                     }
                 }
                 DoneReturn("NewCellReady");
                 return;
             }
             else if (res != null && res.Message == "停止上料中")
             {
                 Thread.Sleep(5000);
             }
             DoneReturn("NotReady");
             break;
         }
     }
 }
Exemple #16
0
            public TransitionScope(StateEventArgs <TState> transitionArgs, object source)
            {
                m_TransitionArgs = transitionArgs;
                m_Source         = source;

                m_TransitionArgs.AddTransition(source);
            }
Exemple #17
0
        public override void OnStateChanged(StateEventArgs e)
        {
            base.OnStateChanged(e);

            if (e.NewState != PlayerState.Driving)
            {
                return;
            }

            if (PlayerClass != PlayerClassType.Police && MissionVehicles.PoliceJobVehicles.Contains(Vehicle))
            {
                RemoveFromVehicle();
                Vehicle.Engine = false;
                Vehicle.Lights = false;
                SendClientMessage(Color.Red, "You can't use police vehicles.");
            }

            if (PlayerClass == PlayerClassType.Pilot)
            {
                return;
            }

            if (!MissionVehicles.PilotJobVehicles.Contains(Vehicle))
            {
                return;
            }

            RemoveFromVehicle();
            Vehicle.Engine = false;
            Vehicle.Lights = false;
            SendClientMessage(Color.Red, "You can't use pilot vehicles.");

            // TODO: Kick player out of vehicle if vehicle is owned by other/clmaped
        }
Exemple #18
0
 private void OnStateChanged(StateEventArgs e)
 {
     if (this.LedStateChanged != null)
     {
         this.LedStateChanged(this, e);
     }
 }
Exemple #19
0
 private void OnPlayerStateChanged(StateEventArgs args)
 {
     if (args.State == MediaStatus.Loaded)
     {
         handlePlayerLoading();
     }
 }
 //public override void StopHandler(BaseClass sender, StateEventArgs e)
 //{
 //    base.StopHandler(sender, e);
 //    //ActionSMEMAAvaliable(false);
 //}
 public override void PauseHandler(BaseClass sender, StateEventArgs e)
 {
     base.PauseHandler(sender, e);
     pausedAvaliable = SMEMAAvailable;
     //ActionSMEMAAvaliable(false);
     ActionSMEMAAvailable(false);
 }
Exemple #21
0
        private void Resource_StateChanged(object sender, StateEventArgs e)
        {
            Invoke(new Action(() =>
            {
                tsmiSave.Enabled            = e.State == WebresourceState.Draft;
                tsbGetLatestVersion.Enabled = Resource.Synced;

                if (e.State == WebresourceState.Draft)
                {
                    Text = $@"{Resource.Name} *";
                    tslWebresource.Text      = $@"{Resource.Name} (not saved)";
                    tslWebresource.ForeColor = Color.Red;
                }
                else if (e.State == WebresourceState.Saved)
                {
                    Text = $@"{Resource.Name} !";
                    tslWebresource.Text      = $@"{Resource.Name} (not published)";
                    tslWebresource.ForeColor = Color.Blue;
                }
                else
                {
                    Text = Resource.Name;
                    tslWebresource.Text      = Resource.Name;
                    tslWebresource.ForeColor = Color.Black;
                }
            }));
        }
Exemple #22
0
 public override void run(StateEventArgs inputEventArg)
 {
     lock (runLock)
     {
         if (inputEventArg.eventName != "WaitPNPFree")
         {
             base.run(inputEventArg);
         }
         switch (inputEventArg.eventName)
         {
         case "CellWorkAllFinish":     //From state TransPNPReady
         case "WaitPNPFree":
             if (ClassWorkFlow.Instance.TransPNPWorkSM.IsRunning)
             {
                 DoneReturn("WaitPNPFree");
                 return;
             }
             else if (owner.IsRunning)
             {
                 parts = ClassWorkZones.Instance.WorkZone厚度测量.GetDataInfoString() + " " + ClassWorkZones.Instance.WorkZone顶封边定位.GetDataInfoString();
                 ClassCommonSetting.SMLogInfo(this.owner.Name, this.Name, "传送机械手开始传送物料: " + parts);
                 ClassWorkFlow.Instance.TransPNPWorkSM.subscribeMeToResponseEvents(this);
                 ClassWorkFlow.Instance.TransPNPWorkSM.StartHandler(this, null);
             }
             break;
         }
     }
 }
Exemple #23
0
 public override void run(StateEventArgs inputEventArg)
 {
     lock (runLock)
     {
         switch (inputEventArg.eventName)
         {
         case "SortingPickFinish":
         case "Unload":
         case "NotReady":
             if (ClassWorkZones.Instance.WorkZone下料传送.IsUnLoadOutEmpty)
             {
                 ClassCommonSetting.SMLogInfo(this.owner.Name, this.Name, "下料传送带上没有物料,下料检查停止。");
                 return;
             }
             if (!ClassWorkZones.Instance.WorkZone下料传送.CheckUnloadReady())
             {
                 DoneReturn("NotReady");
             }
             else
             {
                 base.run(inputEventArg);
                 DoneReturn("ReadyUnload");
             }
             break;
         }
     }
 }
 void gDropInFont_StateChanged(object sender, StateEventArgs e)
 {
     if ((DropInFont.FontState)e.Data == DropInFont.FontState.Compress)
     {
         //TODO Add sound effects
     }
 }
Exemple #25
0
 private void _context_StateEvent(Context context, StateEventArgs args)
 {
     if (args.State != ContextState.Disconnected)
     {
         return;
     }
     this._character = "";
 }
Exemple #26
0
 public virtual void StartHandler(BaseClass sender, StateEventArgs e)
 {
     _isRunning = true;
     _isPausing = false;
     IsWorkFree = true;
     _isManual  = false;
     ResetOutPort();
 }
 void nDropInFont_StateChanged(object sender, StateEventArgs e)
 {
     if ((DropInFont.FontState)e.Data == DropInFont.FontState.Compress)
     {
         //TODO Add sound effects
         gDropInFont.IsVisible = true;
     }
 }
Exemple #28
0
 public override void InputDeActiveHandler(BaseClass sender, StateEventArgs e)
 {
     //if (ActionEnable)
     //{
     base.InputDeActiveHandler(sender, e);
     InPortDeActive(((BaseIOPort)sender).PortName.Substring(2));
     //}
 }
Exemple #29
0
 public override void StartHandler(BaseClass sender, StateEventArgs e)
 {
     base.StartHandler(sender, e);
     BaseForm.DoInvokeRequired(selectBoxNoLoad, () => selectBoxNoLoad.Checked = false);
     workflowStart = DateTime.Now;
     timer.StartTimer(1000, 1000);
     BaseForm.SetControlText(cellTextBoxWorkFlowStart, workflowStart.ToLongTimeString());
 }
Exemple #30
0
 public void ResumeHandler(BaseClass sender, StateEventArgs e)
 {
     _CDIMainSM.ResumeHandler(sender, null);
     _LoadPNPLoadSM.ResumeHandler(sender, null);
     _SortingPNPWorkSM.ResumeHandler(sender, null);
     _TransPNPWorkSM.ResumeHandler(sender, null);
     _UnloadPNPWorkSM.ResumeHandler(sender, null);
 }
Exemple #31
0
 // a media state has changed
 private void state_changed(StateEventArgs args)
 {
     if (args.State == MediaStatus.Playing)
         play.Image = new Image (Stock.MediaPause, IconSize.Button);
     else
         play.Image = new Image (Stock.MediaPlay, IconSize.Button);
 }
Exemple #32
0
        //the engine state has changed
        private void state_changed(StateEventArgs args)
        {
            if (args.State == MediaStatus.Loaded)
            {
                Media media = Global.Core.Library.MediaTree.CurrentMedia;

                Thread thread = new Thread (delegate (){ nowPlaying (media); });
                thread.Start ();

                timeout = 240;
                if (media.Duration.TotalSeconds > 30)
                {
                    int duration = (int) (media.Duration.TotalSeconds / 2);
                    if (duration < timeout)
                        timeout = duration;
                }

                play_timestamp = unixTimestamp ().ToString ();
            }

            else if (args.State == MediaStatus.Playing)
                timer.Start (1000);

            else if (args.State == MediaStatus.Paused)
                timer.Stop ();

            else
            {
                timer.Stop ();
                counter = 0;
                timeout = 0;
            }
        }
Exemple #33
0
        /// <summary>
        /// Update the state of the current Alex so as to change the Alex menu items accordingly.
        /// </summary>
        /// <param name="state"></param>
        private void UpdateState(AlexState state)
        {
            // Make sure someone is listening to event
            if (OnUpdateState == null) return;

            StateEventArgs args = new StateEventArgs(state);
            OnUpdateState(this, args);
        }
Exemple #34
0
 protected void RaiseStateChanged(StateEventArgs args)
 {
     var handler = StateChanged;
     if(handler != null)
         handler(this, args);
 }
Exemple #35
0
 private void OnStateChanged(StateEventArgs e)
 {
     if (this.LedStateChanged != null)
         this.LedStateChanged(this, e);
 }