// delete select database.
        private void DeleteDBdata_(int index, bool isCalendarMode)
        {
            ListView         listview    = isCalendarMode == true ? listView_Schedule : listView_todayList;
            SQLiteConnection tempConnect = isCalendarMode == true ? connect[0] : connect[1];

            decimal[] tempDateYMD = isCalendarMode == true ? selectCalendarDay : null;
            int       mode        = isCalendarMode == true ? ListSqlQuery.CALENDAR_MODE : ListSqlQuery.ALARM_MODE;

            string[] splitstr = listview.Items[index].Text.Split(':');

            DataManage dManage = new DataManage(decimal.Parse(splitstr[0]), decimal.Parse(splitstr[1]));

            tempConnect.Open();
            SQLiteCommand command = new SQLiteCommand(new ListSqlQuery().sqlDeleteData(mode, tempDateYMD, dManage.HourMinute), tempConnect);

            command.ExecuteNonQuery();
            tempConnect.Close();
        }
        private void DeleteButtonClickProcess(bool isCalendar)
        {
            if (isCalendar)
            {
                if (MessageBox.Show($"Are you sure you want to delete the data?", "", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    for (int count = listView_Schedule.Items.Count - 1; count >= 0; count = count - 1)
                    {
                        if (listView_Schedule.Items[count].Selected == true)
                        {
                            DeleteDBdata_(count, true);
                        }
                    }

                    DataManage dManage = new DataManage(selectCalendarDay[0], selectCalendarDay[1], selectCalendarDay[2]);
                    ChangeCalendar();
                    CalendarListRefresh();
                    RefreshAlarm();
                }
            }

            else
            {
                if (MessageBox.Show($"Are you sure you want to delete the data?", "", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    for (int count = listView_todayList.Items.Count - 1; count >= 0; count = count - 1)
                    {
                        if (listView_todayList.Items[count].Selected == true)
                        {
                            DeleteDBdata_(count, false);
                        }
                    }

                    TodayAlarmListRefresh();
                    RefreshAlarm();
                }
            }
        }
        // calendar diary set Method.
        private void SettingCalendar()
        {
            int      maxDays = int.Parse(DateTime.DaysInMonth((int)selectCalendarDay[0], (int)selectCalendarDay[1]).ToString());
            int      blankCount, tempCt;
            DateTime dOfMonth = new DateTime();

            dOfMonth = dOfMonth.AddYears((int)selectCalendarDay[0] - 1).AddMonths((int)selectCalendarDay[1] - 1);

            switch (dOfMonth.DayOfWeek.ToString())
            {
            case "Sunday": blankCount = 7; break;

            case "Monday": blankCount = 1; break;

            case "Tuesday": blankCount = 2; break;

            case "Wednesday": blankCount = 3; break;

            case "Thursday": blankCount = 4; break;

            case "Friday": blankCount = 5; break;

            default: blankCount = 6; break;
            }

            tempCt = blankCount - 1;
            connect[0].Open();

            for (int row = 1, boxCount = 0, dayCount = 1; row <= 6; row = row + 1)
            {
                for (int col = 0; col < 7; col = col + 1)
                {
                    if (blankCount > 0 || dayCount > maxDays)
                    {
                        gbox[boxCount].BackColor = System.Drawing.SystemColors.InactiveCaptionText;
                        gbox[boxCount].Enabled   = false;
                        blankCount = blankCount - 1;
                    }

                    else
                    {
                        // Calender Panel color setting.
                        if (DateTime.Now.ToString("yyyy-MM") == (selectCalendarDay[0].ToString() + "-" + selectCalendarDay[1].ToString("00")) && dayCount == int.Parse(DateTime.Now.ToString("dd")))
                        {
                            gbox[dayCount + tempCt].BackColor = System.Drawing.Color.FromArgb(192, 255, 255);
                        }

                        else if (dOfMonth.DayOfWeek.ToString() == "Sunday")
                        {
                            gbox[boxCount].BackColor = System.Drawing.Color.FromArgb(255, 192, 192);
                        }

                        else if (dOfMonth.DayOfWeek.ToString() == "Saturday")
                        {
                            gbox[boxCount].BackColor = System.Drawing.Color.FromArgb(192, 192, 255);
                        }

                        else
                        {
                            gbox[boxCount].BackColor = System.Drawing.SystemColors.Window;
                        }

                        //gbox[boxCount].MouseDown += new MouseEventHandler(CalendarMouseDown);


                        // database setting.
                        string[]   dateStr = dOfMonth.ToString("yyyy-MM-dd").Split('-');
                        DataManage dManage = new DataManage(decimal.Parse(dateStr[0]), decimal.Parse(dateStr[1]), decimal.Parse(dateStr[2]));

                        command = new SQLiteCommand(new ListSqlQuery().sqlListboxRefresh(dManage.YearMonthDay), connect[0]);
                        SQLiteDataReader reader = command.ExecuteReader();
                        gbox[boxCount].Items.Insert(0, dayCount);

                        int moreCount = 0;
                        for (int count = 1; reader.Read(); count = count + 1)
                        {
                            if (count >= 4)
                            {
                                moreCount = moreCount + 1;
                            }
                            else
                            {
                                gbox[boxCount].Items.Insert(count, reader["text"].ToString());
                            }
                        }

                        if (moreCount > 0)
                        {
                            gbox[boxCount].Items.Insert(4, "(...more " + moreCount + ")");
                        }

                        reader.Close();

                        gbox[boxCount].Enabled = true;
                        dayCount = dayCount + 1;
                        dOfMonth = dOfMonth.AddDays(1);
                    }

                    boxCount = boxCount + 1;
                }
            }

            connect[0].Close();

            gbox_index = (int)selectCalendarDay[2] + tempCt;
            gbox[gbox_index].BackColor = System.Drawing.Color.FromArgb(255, 255, 192);
            if (dataview != null && !dataview.IsDisposed)
            {
                dataview.RefreshData();
            }
        }
        // Impliment Method.
        public void AddMode(bool multiMod)
        {
            string[]   tempDate = (dateTimePicker_start.Value.ToString("yyyy-M-d")).Split('-');
            DataManage setData  = new DataManage(dateYMD[0], dateYMD[1], dateYMD[2], numericUpDown_setHour.Value, numericUpDown_setMinute.Value, textBox_calendarText.Text, checkBox_checkAlarm.Checked);

            // overlap alarm check.
            string sql_str = new ListSqlQuery().sqlOverlapCheck(ListSqlQuery.CALENDAR_MODE, setData.YearMonthDay, setData.HourMinute);

            if (!OverlapCheck(sql_str, false))
            {
                return;
            }

            // insert data. (normal)
            if (!multiMod)
            {
                sql_str = new ListSqlQuery().sqlInsertValues(ListSqlQuery.CALENDAR_MODE, setData.YearMonthDay, setData.HourMinute, setData.Text, setData.Active);
                QueryActive(sql_str, false);
            }

            // insert data. (multi)
            else
            {
                DateTime temp_nextday = new DateTime(dateTimePicker_start.Value.Ticks);
                TimeSpan temp         = DateTime.Parse(dateTimePicker_end.Value.ToString("yyyy-M-d")) - DateTime.Parse(dateTimePicker_start.Value.ToString("yyyy-M-d"));
                int      dayTemp      = temp.Days;
                bool     oncemessage  = true;

                for (int count = 0; count <= dayTemp; count++, temp_nextday = temp_nextday.AddDays(1))
                {
                    tempDate = temp_nextday.ToString("yyyy-M-d").Split('-');

                    setData.YearMonthDay = new decimal[] { decimal.Parse(tempDate[0]), decimal.Parse(tempDate[1]), decimal.Parse(tempDate[2]) };
                    sql_str = new ListSqlQuery().sqlOverlapCheck(ListSqlQuery.CALENDAR_MODE, setData.YearMonthDay, setData.HourMinute);

                    tempConnect.Open();
                    command = new SQLiteCommand(sql_str, tempConnect);
                    SQLiteDataReader reader = command.ExecuteReader();

                    // data is already exist.
                    if (reader.Read())
                    {
                        reader.Close(); tempConnect.Close();
                        if (oncemessage)
                        {
                            MessageBox.Show("Existing data was maintained due to overlapping schedules.");
                        }
                        oncemessage = false;
                    }

                    // data is not already exist.
                    else
                    {
                        reader.Close(); tempConnect.Close();

                        sql_str = new ListSqlQuery().sqlInsertValues(ListSqlQuery.CALENDAR_MODE, setData.YearMonthDay, setData.HourMinute, textBox_calendarText.Text, checkBox_checkAlarm.Checked);

                        tempConnect.Open();
                        command = new SQLiteCommand(sql_str, tempConnect);
                        command.ExecuteNonQuery();
                        tempConnect.Close();
                    }
                }

                calendar.ChangeCalendar();
                calendar.CalendarListRefresh();
                calendar.RefreshAlarm();
                Close();
            }
        }