예제 #1
0
파일: FormMain.cs 프로젝트: wurdum/mops
        /// <summary>
        /// Группировка действий по процессам
        /// </summary>
        /// <param name="processPerformer"></param>
        private void CreateGroups(ProcessPerformer processPerformer)
        {
            if (!processPerformer.IsValid)
            {
                return;
            }

            foreach (var process in processPerformer.Processes)
            {
                listView.Groups.Add(new ListViewGroup(process.Name, process.Name));
                foreach (var action in process.Actions)
                {
                    if (IsStartOrEnd(action.Name)) continue;
                    _listViewActions.Add(
                        new ListViewAction(action.Name, process.Name));
                }
            }
        }
예제 #2
0
파일: FormMain.cs 프로젝트: wurdum/mops
        /// <summary>
        /// Подготовка списка для наполнения элемента ListViewListView
        /// </summary>
        /// <param name="processPerformer">Используемый обработчик процессов</param>
        private void PrepareListView(ProcessPerformer processPerformer)
        {
            _listViewActions = new List<ListViewAction>();

            listView.Clear();
            listView.Groups.Clear();

            CreateGroups(processPerformer);
            CreateListViewColumns();
            FillListView();
        }
예제 #3
0
파일: FormMain.cs 프로젝트: wurdum/mops
        /// <summary>
        /// Инициализация основных объектов, обеспечивающих обработку процессов
        /// </summary>
        private void InitializeProcessObjects()
        {
            //IoC-контейнер
            var container = ContainersFactory.GetContainer();
            //Оповещатель
            var messenger = container.Resolve<IMessenger>();
            //Загрузчик процессов
            var processLoader = container.Resolve<IProcessLoader>();
            var timer = container.Resolve<ITimer>();

            _processPerformer = new ProcessPerformer(messenger, timer, processLoader);

            messenger.OnMessengerStateChange += MessengerStateChanged;
        }