Пример #1
0
        //public List<DirectScanResult> Result;
        public void ProcessState()
        {
            var ScannerWindow = Cache.Instance.Windows.OfType<DirectScannerWindow>().FirstOrDefault();

            switch(State)
            {
                case ScanInteractionState.Idle:
                    _lastExecute = DateTime.Now;
                    break;
                case ScanInteractionState.Done:

                    Logging.Log("ScanInteraction: Closing Scan Window");
                    ScannerWindow.Close();

                    State = ScanInteractionState.Idle;

                    break;
                case ScanInteractionState.Scan:

                    if(ScannerWindow == null)
                    {
                        Logging.Log("ScanInteraction: Open Scan Window");

                        Cache.Instance.DirectEve.ExecuteCommand(DirectCmd.OpenScanner);
                        break;
                    }
                    if(!ScannerWindow.IsReady)
                        return;

                    //Not Finish don't use
                    //ScannerWindow.SelectByIdx(0);
                    //Result = ScannerWindow.ScanResults;

                    //State = ScanInteractionState.Done;

                    break;

                default:
                    State = ScanInteractionState.Idle;
                    break;
            }
        }