Beispiel #1
0
 internal void SetAlerm(Alerm a, List <Alerm> list)
 {
     alerm             = a.DeepCopy();
     alerm.AlermDelete = true;
     alerm.ScheduleList.Clear();
     snoozeList = list;
 }
Beispiel #2
0
        /// <summary>
        /// 削除ボタンのクリックイベント
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void RemoveButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (AlermGrid.SelectedIndex < 0)
                {
                    return;
                }
                MessageBoxResult result = MessageBox.Show("アラームを削除しますか?", "削除確認", MessageBoxButton.YesNo, MessageBoxImage.Information);
                if (result == MessageBoxResult.No)
                {
                    return;
                }

                Alerm remove = (Alerm)AlermGrid.Items[AlermGrid.SelectedIndex];
                AlermGrid.Items.Remove(remove);
                alermList.Remove(remove);
                SetButtonEnabled();
                if (AlermGrid.Items.Count > 0)
                {
                    AlermGrid.SelectedIndex = 0;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #3
0
 /// <summary>
 /// 新規作成ボタンのクリックイベント
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void AddButton_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         ScheduleSettingWindow form = new ScheduleSettingWindow();
         Alerm alerm = LoadFormSetting();
         form.Init(alerm);
         form.ShowDialog();
         if (form.Committed)
         {
             AlermGrid.Items.Add(form.EditData);
             alermList.Add(form.EditData);
             SaveFormSetting(form.EditData);
         }
         AlermGrid.SelectedIndex = AlermGrid.Items.Count - 1;
         SetButtonEnabled();
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Beispiel #4
0
        /// <summary>
        /// 初期化処理を行う
        /// </summary>
        /// <param name="alm"></param>
        public void Init(Alerm alm)
        {
            try
            {
                EditData = alm.DeepCopy();
                AlermEnableCheck.IsChecked = EditData.Enable;
                TorokuNameTextBox.Text     = EditData.Name;
                AlermDeleteCheck.IsChecked = EditData.AlermDelete;
                switch (EditData.ExecTypeIndex)
                {
                case 0:
                    AlermRadio.IsChecked                = true;
                    AlermMessageTextBox.Text            = EditData.Message;
                    EdgeColorColorPicker.SelectedColor  = Color.FromArgb(EditData.EdgeColor[0], EditData.EdgeColor[1], EditData.EdgeColor[2], EditData.EdgeColor[3]);
                    LabelColorColorPicker.SelectedColor = Color.FromArgb(EditData.LabelColor[0], EditData.LabelColor[1], EditData.LabelColor[2], EditData.LabelColor[3]);
                    ForeColorColorPicker.SelectedColor  = Color.FromArgb(EditData.ForeColor[0], EditData.ForeColor[1], EditData.ForeColor[2], EditData.ForeColor[3]);
                    SetSelectedFont(EditData.FontName);


                    SetFontSampleBorderColor();
                    SetFontSampleBackColor();
                    SetFontSampleForeColor();

                    break;

                case 1:
                    ExecRadio.IsChecked  = true;
                    ExecPathTextBox.Text = EditData.Message;
                    break;
                }

                SetScheduleGrid();
                SetButtonEnabled();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #5
0
        /// <summary>
        /// 画面状態を読み込む
        /// </summary>
        private Alerm LoadFormSetting()
        {
            try
            {
                string          appDir  = AppUtil.GetAppDirPath() + @"\" + SCHEDULE_SETTING_FILE;
                ScheduleSetting setting = new ScheduleSetting();
                if (!System.IO.File.Exists(appDir))
                {
                    string jsonString = JsonConvert.SerializeObject(setting);
                    using (StreamWriter sw = new StreamWriter(appDir, false))
                    {
                        sw.WriteLine(jsonString);
                    }
                }
                else
                {
                    using (StreamReader sr = new StreamReader(appDir))
                    {
                        string jsonString = sr.ReadToEnd();
                        setting = JsonConvert.DeserializeObject <ScheduleSetting>(jsonString);
                    }
                }

                Alerm alerm = new Alerm();
                alerm.EdgeColor     = setting.EdgeColor;
                alerm.LabelColor    = setting.LabelColor;
                alerm.ForeColor     = setting.ForeColor;
                alerm.AlermDelete   = setting.AlermDelete;
                alerm.FontName      = setting.FontName;
                alerm.TimeAddUpDown = setting.TimeAddUpDown;
                return(alerm);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #6
0
 /// <summary>
 /// 修正を実行する
 /// </summary>
 private void ExecuteEdit()
 {
     try
     {
         if (AlermGrid.SelectedIndex < 0)
         {
             return;
         }
         Alerm edit = (Alerm)AlermGrid.SelectedItem;
         ScheduleSettingWindow form = new ScheduleSettingWindow();
         form.Init(edit);
         form.ShowDialog();
         if (form.Committed)
         {
             edit.Clone(form.EditData);
             SaveFormSetting(form.EditData);
             SetAlermGrid();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Beispiel #7
0
        /// <summary>
        /// 画面状態を保存する
        /// </summary>
        private void SaveFormSetting(Alerm alerm)
        {
            try
            {
                string appDir = AppUtil.GetAppDirPath() + @"\" + SCHEDULE_SETTING_FILE;

                ScheduleSetting setting = new ScheduleSetting();
                setting.EdgeColor     = new byte[] { alerm.EdgeColor[0], alerm.EdgeColor[1], alerm.EdgeColor[2], alerm.EdgeColor[3] };
                setting.LabelColor    = new byte[] { alerm.LabelColor[0], alerm.LabelColor[1], alerm.LabelColor[2], alerm.LabelColor[3] };
                setting.ForeColor     = new byte[] { alerm.ForeColor[0], alerm.ForeColor[1], alerm.ForeColor[2], alerm.ForeColor[3] };
                setting.AlermDelete   = alerm.AlermDelete;
                setting.FontName      = alerm.FontName;
                setting.TimeAddUpDown = alerm.TimeAddUpDown;
                string jsonString = JsonConvert.SerializeObject(setting);
                using (StreamWriter sw = new StreamWriter(appDir, false))
                {
                    sw.WriteLine(jsonString);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }