Esempio n. 1
0
 /// <summary>
 /// Установить делегаты оповещения о результатах выполнения опрерации
 /// </summary>
 /// <param name="ferr"></param>
 /// <param name="fwar"></param>
 /// <param name="fact"></param>
 /// <param name="fclr"></param>
 public void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
     this.errorReport       = ferr;
     this.warningReport     = fwar;
     this.actionReport      = fact;
     this.clearReportStates = fclr;
 }
Esempio n. 2
0
        /// <summary>
        /// Обработчик события - сообщение от обработчика очереди событий
        ///  (обратная связь с обработчиком очереди событий)
        /// </summary>
        /// <param name="obj">Объект - параметр(аргумент) события</param>
        private void onHandlerMainQueue(object obj)
        {
            HHandlerQueue.StatesMachine state = (HHandlerQueue.StatesMachine)(obj as object[])[0];

            // анонимная функция для выполнения в контексте формы
            DelegateBoolFunc connectedChanged = delegate(bool bConnected) {
                имитацияпакетодинToolStripMenuItem.Enabled     =
                    имитацияпакетциклToolStripMenuItem.Enabled =
                        m_cbxReadSessionStart.Checked          =
                            bConnected;
                m_cbxReadSessionStop.Checked =
                    !m_cbxReadSessionStart.Checked;
            };

            Logging.Logg().Debug(MethodBase.GetCurrentMethod()
                                 , string.Format(@"получено сообщение state={0} от обработчика очереди событий", state.ToString())
                                 , Logging.INDEX_MESSAGE.NOT_SET);

            switch (state)
            {
            case HHandlerQueue.StatesMachine.UDP_CONNECTED_CHANGED:
                // выполнить анонимный метод
                Invoke(new DelegateBoolFunc(connectedChanged), (bool)(obj as object[])[1]);
                break;

            case HHandlerQueue.StatesMachine.UDP_LISTENER_PACKAGE_RECIEVED:
                m_handlerPackage.Push(null, new object [] {
                    new object[] {
                        new object [] {
                            PackageHandlerQueue.StatesMachine.NEW, (obj as object[])[1], (obj as object[])[2]
                        }
                    }
                });
                break;

            case HHandlerQueue.StatesMachine.LIST_DEST:
                BeginInvoke(new DelegateObjectFunc(fillDestList), (obj as object[])[1]);
                // запуск, активация обработчика очереди событий при записи значений в БД
                m_handlerWriter.Push(null, new object [] {
                    new object[] {
                        new object [] {
                            WriterHandlerQueue.StatesMachine.LIST_DEST, (obj as object[])[1]
                        }
                    }
                });
                break;

            default:
                break;
            }
        }
Esempio n. 3
0
 public override void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
     throw new NotImplementedException();
 }
Esempio n. 4
0
 public override void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
     m_admin.SetDelegateReport(ferr, fwar, fact, fclr);
 }
Esempio n. 5
0
 public void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
     m_handlerDb.SetDelegateReport(ferr, fwar, fact, fclr);
 }
Esempio n. 6
0
 public override void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
 }
Esempio n. 7
0
 /// <summary>
 /// Назначить делегаты по отображению сообщений в строке статуса
 /// </summary>
 /// <param name="ferr">Делегат для отображения в строке статуса ошибки</param>
 /// <param name="fwar">Делегат для отображения в строке статуса предупреждения</param>
 /// <param name="fact">Делегат для отображения в строке статуса описания действия</param>
 /// <param name="fclr">Делегат для удаления из строки статуса сообщений</param>
 public override void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
     foreach (Control ctrl in this.Controls)
     {
         if (ctrl.GetType().Equals(_controlType) == true)
         {
             ((PanelStatistic)ctrl).SetDelegateReport(ferr, fwar, fact, fclr);
         }
         else
         {
             ;
         }
     }
 }
Esempio n. 8
0
 public abstract void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr);
Esempio n. 9
0
 /// <summary>
 /// Метод для передачи сообщений на форму
 /// </summary>
 /// <param name="ferr">Делегат для передачи сообщения об ошибке</param>
 /// <param name="fwar">Делегат для передачи предупреждения</param>
 /// <param name="fact">Делегат для передачи сообщения о выполняемом действии</param>
 /// <param name="fclr">Делегат для передачи комады об очистке строки статуса</param>
 public override void SetDelegateReport(DelegateStringFunc ferr, DelegateStringFunc fwar, DelegateStringFunc fact, DelegateBoolFunc fclr)
 {
     delegateErrorReport   = ferr;
     delegateWarningReport = fwar;
     delegateActionReport  = fact;
     delegateReportClear   = fclr;
 }
Esempio n. 10
0
        public PanelTecView(StatisticCommon.TEC tec, int num_tec, int num_comp, PanelCustomTecView.HLabelCustomTecView label, DelegateStringFunc fErrRep, DelegateStringFunc fWarRep, DelegateStringFunc fActRep, DelegateBoolFunc fRepClr)
            : base(tec, num_tec, num_comp, fErrRep, fWarRep, fActRep, fRepClr)
        {
            m_label = label;

            InitializeComponent();
        }
Esempio n. 11
0
 public override void SetDelegateReport(DelegateStringFunc fErr, DelegateStringFunc fWar, DelegateStringFunc fAct, DelegateBoolFunc fClear)
 {
     m_tecView.SetDelegateReport(fErr, fWar, fAct, fClear);
 }