コード例 #1
0
 private void buttonDeleteTicket_Click(object sender, EventArgs e)
 {
     if (this.listViewTicket.SelectedIndices.Count >= 1)
     {
         ListViewItem item      = this.listViewTicket.SelectedItems[0];
         string       ticket_id = item.SubItems[COLUMN_INDEX_TICKET_ID].Text;
         DialogResult result    = MessageBox.Show(
             this,
             string.Format("保存されている検索を削除します。\r\n「{0}」", ticket_id),
             "検索削除",
             MessageBoxButtons.OKCancel);
         if (result == DialogResult.OK)
         {
             try
             {
                 SearchingTicketManager.DeleteTicket(ticket_id);
                 this.listViewTicket.Items.Remove(item);
             }
             catch (IOException)
             {
                 MessageBox.Show(string.Format("保存されている検索の削除に失敗しました。\r\nこの検索の再開は失敗する可能性があります\r\n「{0}」", ticket_id));
             }
         }
     }
 }
コード例 #2
0
 private void buttonOpenSaveDirectory_Click(object sender, EventArgs e)
 {
     if (this.listViewTicket.SelectedIndices.Count >= 1)
     {
         string ticket_id = this.listViewTicket.SelectedItems[0].SubItems[COLUMN_INDEX_TICKET_ID].Text;
         string directory = SearchingTicketManager.GetTicketDirectory(ticket_id);
         Process.Start(directory);
     }
 }
コード例 #3
0
        private void ResetTickets()
        {
            List <string> id_list = new List <string>(SearchingTicketManager.GetTicketIDs());

            id_list.Sort(CompareStringForDescendingSort);
            foreach (string ticket_id in id_list)
            {
                AddTicket(ticket_id);
            }
        }
コード例 #4
0
        private void toolStripMenuItemRenameTicket_Click(object sender, EventArgs e)
        {
            ListViewItem item          = this.listViewTicket.SelectedItems[0];
            string       src_ticket_id = item.SubItems[COLUMN_INDEX_TICKET_ID].Text;
            string       dst_ticket_id = this.toolStripTextBoxNewID.Text;

            try
            {
                SearchingTicketManager.RenameTicket(src_ticket_id, dst_ticket_id);
                item.SubItems[COLUMN_INDEX_TICKET_ID].Text = dst_ticket_id;
            }
            catch (IOException)
            {
                MessageBox.Show(string.Format("検索ID変更に失敗しました。\r\n「{0}」→「{1}」", src_ticket_id, dst_ticket_id));
            }
            catch (ArgumentException)
            {
                MessageBox.Show(string.Format("検索ID変更に失敗しました。\r\n「{0}」→「{1}」", src_ticket_id, dst_ticket_id));
            }
        }
コード例 #5
0
 private void buttonClearTicket_Click(object sender, EventArgs e)
 {
     if (this.listViewTicket.SelectedIndices.Count >= 1)
     {
         string       ticket_id = this.listViewTicket.SelectedItems[0].SubItems[COLUMN_INDEX_TICKET_ID].Text;
         DialogResult result    = MessageBox.Show(
             this,
             string.Format("検索条件だけを残して、保存されている検索をリセットします。\r\n「{0}」", ticket_id),
             "検索リセット",
             MessageBoxButtons.OKCancel);
         if (result == DialogResult.OK)
         {
             try
             {
                 SearchingTicketManager.ClearTicket(ticket_id);
             }
             catch (IOException)
             {
                 MessageBox.Show(string.Format("保存されている検索のリセットに失敗しました。\r\n「{0}」", ticket_id));
             }
         }
     }
 }
コード例 #6
0
        private void AddTicket(string ticket_id)
        {
            try
            {
                SearchingTagOption option = SearchingTicketManager.GetOption(ticket_id);

                ListViewItem item = new ListViewItem(ticket_id);

                string word = string.Join("\r\n", option.searching_tag_list.ToArray());
                item.SubItems.Add(word);

                string tag_or_word = option.is_searching_kind_tag ? "タグ" : "キーワード";
                item.SubItems.Add(tag_or_word);

                string   sort;
                string[] text;
                if (this.search_sort_method_text_map.TryGetValue(option.GetSortMethod(), out text))
                {
                    if (option.GetSearchOrder() == NicoNetwork.SearchOrder.Asc)
                    {
                        sort = text[0];
                    }
                    else if (option.GetSearchOrder() == NicoNetwork.SearchOrder.Desc)
                    {
                        sort = text[1];
                    }
                    else
                    {
                        return;
                    }
                }
                else
                {
                    return;
                }
                item.SubItems.Add(sort);

                string page;
                if (option.is_page_all)
                {
                    page = "指定無し";
                }
                else
                {
                    page = string.Format("{0} - {1}", option.page_start, option.page_end);
                }
                item.SubItems.Add(page);

                string date;
                if (option.is_using_condition)
                {
                    string date_format = "yyyy年MM月dd日 HH:mm:ss";
                    date = string.Format("{0} - {1}", option.date_from.ToString(date_format), option.date_to.ToString(date_format));
                }
                else
                {
                    date = "指定無し";
                }
                item.SubItems.Add(date);

                string detail = option.is_detail_getting ? "有" : "無";
                item.SubItems.Add(detail);

                string mylist;
                if (option.is_detail_getting)
                {
                    mylist = option.detail_info_lower.ToString();
                }
                else
                {
                    mylist = string.Empty;
                }
                item.SubItems.Add(mylist);

                string redundant_searching_method;
                switch (option.redundant_seatching_method)
                {
                case RedundantSearchingMethod.Once:
                    redundant_searching_method = "無";
                    break;

                case RedundantSearchingMethod.TwiceTakeFirst:
                    redundant_searching_method = "2回(1回目を優先)";
                    break;

                case RedundantSearchingMethod.TwiceTakeLast:
                    redundant_searching_method = "2回(2回目を優先)";
                    break;

                case RedundantSearchingMethod.TwiceMergeResult:
                    redundant_searching_method = "2回(マージ)";
                    break;

                case RedundantSearchingMethod.AtMostThreeTimes:
                    redundant_searching_method = "最大3回";
                    break;

                default:
                    redundant_searching_method = "無し";
                    break;
                }
                item.SubItems.Add(redundant_searching_method);


                this.listViewTicket.Items.Add(item);
            }
            catch (IOException)
            {
            }
            catch (FormatException)
            {
            }
        }