private void OnWorkEnabledCheck(object sender, WorkEventArgs args)
        {
            if (args.CallerMaid == null)
            {
                return;
            }
            if (!IsMaidLoaded(args.CallerMaid))
            {
                return;
            }

            switch (args.Tag)
            {
            case MaidChangeType.NoonWorkId:
                args.ForceEnabled = GetMaidInfo(args.CallerMaid).IsNoonWorkForceEnabled(args.ID);
                break;

            case MaidChangeType.NightWorkId:
                args.ForceEnabled = GetMaidInfo(args.CallerMaid).IsNightWorkForceEnabled(args.ID);
                break;
            }
            Debugger.WriteLine(
                LogLevel.Info,
                $"Attempting to check work enabled: ID={args.ID}, Force={args.ForceEnabled}");
        }
        private void DetectURL(object sender, WorkEventArgs e)
        {
            try
            {
                ImageSizeEventArgs ev = (ImageSizeEventArgs)e;

                if (CurrentSetting.ImageFromURLSave == ImageSaveMode.NoUse)
                {
                    return;
                }

                BitmapImage image = new BitmapImage();
                image.BeginInit();
                image.UriSource         = ev.Img.UriSource;
                image.DecodePixelHeight = (int)ev.ImageSize.Height;
                image.DecodePixelWidth  = (int)ev.ImageSize.Width;
                image.EndInit();

                if (CurrentSetting.ImageFromURLSave == ImageSaveMode.PatternSave)
                {
                    SaveRequest(image, false);
                }
                else if (CurrentSetting.ImageFromURLSave == ImageSaveMode.Ask)
                {
                    if (MsgBox("사진이 포함된 URL을 감지했습니다. 저장할까요?", "사진 저장 확인", MessageBoxStyle.YesNo) == MessageBoxResult.Yes)
                    {
                        SaveRequest(image, false);
                    }
                }
            }
            catch (Exception ex)
            {
                MsgBox(ex.ToString());
            }
        }
Exemple #3
0
 public Work()
 {
   _state = WorkState.INIT;
   _description = string.Empty;
   _priority = ThreadPriority.Normal;
   _eventArgs = new WorkEventArgs(this);
 }
Exemple #4
0
 protected void _work()
 {
     if (Work != null)
     {
         WorkEventArgs e = new WorkEventArgs(this.Status, this._userID, this._userList);
         Work(this, e);
         Status = e.status;
     }
 }
Exemple #5
0
 public Work(DoWorkHandler work, string description, ThreadPriority threadPriority, WorkEventHandler workCompletedHandler)
 {
   WorkLoad = work;
   _description = description;
   _priority = threadPriority;
   WorkCompleted = workCompletedHandler;
   _eventArgs = new WorkEventArgs(this);
   _simpleWork = true;
   _state = WorkState.INIT;
 }
Exemple #6
0
 // Обработчик запроса на изменение активного контрола
 private void Set_ActivControl(object sender, WorkEventArgs e)
 {
     if (activeControl != null)         // Если активный контрол был установлен -
     {
         activeControl.Visible = false; // делаем его невидимым (неактивным),
     }
     // Делаем активным - контрол отправитель запроса
     activeControl         = (Control)sender;
     activeControl.Visible = true;        // и отображаем его.
     this.BackColor        = e.BackColor; // Цвет фона формы
 }
        private void AfterInitialLoad(WorkEventArgs args)
        {
            var ovMP2Settings = ServiceRegistration.Get <ISettingsManager>().Load <Configuration.Settings>();

            if (Sites.Updater.VersionCompatible && ovMP2Settings.AutomaticUpdate)
            {
                _autoUpdateTask = new IntervalWork(PeriodicSitesUpdate, TimeSpan.FromHours(ovMP2Settings.AutomaticUpdateInterval));
                ServiceRegistration.Get <IThreadPool>().AddIntervalWork(_autoUpdateTask, false);
            }

            // start listening to changes of the OnlineVideos configuration settings
            _settingsWatcher = new SettingsChangeWatcher <Configuration.Settings>();
            _settingsWatcher.SettingsChanged += OnlineVideosSettingsChanged;
        }
        private void DetectPrintScreen(object sender, WorkEventArgs e)
        {
            try
            {
                if (AuCaEnabled)
                {
                    BitmapSource image = (BitmapSource)((ImageWorkEventArgs)e).Data;

                    PlayNotificationSound(SoundType.Captured);

                    SaveRequest(image);
                }
            }
            catch (Exception ex)
            {
                MsgBox(ex.ToString());
            }
        }
        private void DetectShortCut(object sender, WorkEventArgs e)
        {
            try
            {
                ShortCutWorkEventArgs ev = (ShortCutWorkEventArgs)e;

                Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate
                {
                    switch (ev.Data.Name)
                    {
                    case "AutoCapture":
                        BtnEnAutoSave_Click(this, null);
                        break;

                    case "AllCapture":
                        BtnAllCapture_Click(this, null);
                        break;

                    case "OpenSetting":
                        PathButton_Click(this, null);
                        break;

                    case "SelCapture":
                        BtnSelCapture_Click(this, null);
                        break;

                    case "ChangeEditorMode":
                        ChangeEditorMode();
                        break;
                    }
                }));
            }
            catch (Exception ex)
            {
                MsgBox(ex.ToString());
            }
        }
Exemple #10
0
 private void SetLog(WorkEventArgs e)
 {
     txtLog.Text = txtLog.Text + e.ErrorInfo + "\n";
 }
Exemple #11
0
 /// <summary>
 /// 被委托调用,专门设置进度条结束后的处理
 /// </summary>
 /// <param name="nowValue"></param>
 private void SetEndValue(WorkEventArgs e)
 {
     this.progressBar.Value = e.Position;
     lblInfo.Text = e.Info;
     BtnGenerateAll.Enabled = true;
     RecoverBackground();
 }
Exemple #12
0
 /// <summary>
 /// 线程开始事件,设置进度条最大值,需要一个委托来替我完成
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void OnStartWorkEventHandler(object sender, WorkEventArgs e)
 {
     MaxValueDelegate max = new MaxValueDelegate(SetMaxValue);
     this.Invoke(max, e);
 }
Exemple #13
0
 void OnShowWorkInfoEventHandler(object sender, WorkEventArgs e)
 {
     InitialDelegate initial = new InitialDelegate(Initialize);
     this.Invoke(initial, e);
 }
Exemple #14
0
 void OnSetLogHandler(object sender, WorkEventArgs e)
 {
     SetLogDelegate setLog = new SetLogDelegate(SetLog);
     this.Invoke(setLog, e);
 }
Exemple #15
0
 /// <summary>
 /// 线程完成事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void OnEndWorkEventHandler(object sender, WorkEventArgs e)
 {
     EndValueDelegate end = new EndValueDelegate(SetEndValue);
     this.Invoke(end, e);
 }
Exemple #16
0
 /// <summary>
 /// 线程执行中的事件,设置进度条当前进度,需要一个委托来替我完成
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void OnDoWorkEventHandler(object sender, WorkEventArgs e)
 {
     NowValueDelegate now = new NowValueDelegate(SetNowValue);
     this.Invoke(now, e);
 }
Exemple #17
0
 private void Initialize(WorkEventArgs e)
 {
     this.lblInfo.Text = e.Info;
     //this.progressBar.Value = 0;
 }
Exemple #18
0
 protected virtual void OnFind(WorkEventArgs e)
 {
     Find?.Invoke(this, e);
 }
Exemple #19
0
 /// <summary>
 /// 被委托调用,专门设置进度条最大值的
 /// </summary>
 /// <param name="maxValue"></param>
 private void SetMaxValue(WorkEventArgs e)
 {
     this.progressBar.Maximum = e.Position;
     this.progressBar.Value = 0;
     this.lblInfo.Text = e.Info;
 }
Exemple #20
0
 protected override void OnFind(WorkEventArgs e)
 {
     base.OnFind(e);
 }
        private void AfterInitialLoad(WorkEventArgs args)
        {
            var ovMP2Settings = ServiceRegistration.Get<ISettingsManager>().Load<Configuration.Settings>();
            if (Sites.Updater.VersionCompatible && ovMP2Settings.AutomaticUpdate)
            {
                _autoUpdateTask = new IntervalWork(PeriodicSitesUpdate, TimeSpan.FromHours(ovMP2Settings.AutomaticUpdateInterval));
                ServiceRegistration.Get<IThreadPool>().AddIntervalWork(_autoUpdateTask, false);
            }

            // start listening to changes of the OnlineVideos configuration settings
            _settingsWatcher = new SettingsChangeWatcher<Configuration.Settings>();
            _settingsWatcher.SettingsChanged += OnlineVideosSettingsChanged;
        }
Exemple #22
0
 /// <summary>
 /// 被委托调用,专门设置进度条当前值的
 /// </summary>
 /// <param name="nowValue"></param>
 private void SetNowValue(WorkEventArgs e)
 {
     this.progressBar.Value = e.Position;
     lblInfo.Text = e.Info;
     SetGridRecordBackground(e.TemplateName);
 }
Exemple #23
0
 private void HandleTrackedWork(WorkEventArgs eventArgs)
 {
     this.trackCallback(eventArgs.Employee, eventArgs.Hours, eventArgs.TaskAddress);
 }