Example #1
0
 private void GetTag(string strTag)
 {
     if (!lsbTag.Items.Contains(strTag))
     {
         RLiteratureTag newTag = new RLiteratureTag();
         newTag.Tag = strTag;
         lstLiteratureTag.Add(newTag);
         lsbTag.Items.Add(strTag);
     }
 }
Example #2
0
        private void removeTagToolStripMenuItem_Click(object sender, EventArgs e)
        {
            List <string> selectedTags = new List <string>();

            if (clbTag.CheckedItems != null)
            {
                foreach (var selected in clbTag.CheckedItems)
                {
                    string[] sub = selected.ToString().Split('[');
                    selectedTags.Add(sub[0]);
                }
                DialogResult result = MessageBox.Show("Do you want to remove these tags? Literature without tag will add a new tag called '(default)'", "Remove confirm", MessageBoxButtons.YesNo);
                switch (result)
                {
                case DialogResult.Yes:
                    foreach (string tag in selectedTags)
                    {
                        G.glb.lstLiteratureTag.RemoveAll(o => o.Tag == tag);
                    }
                    foreach (CLiterature lit in G.glb.lstLiterature)
                    {
                        if (!G.glb.lstLiteratureTag.Exists(o => o.Title == lit.Title))
                        {
                            RLiteratureTag defaultTag = new RLiteratureTag();
                            defaultTag.Title = lit.Title;
                            defaultTag.Tag   = "(default)";
                            G.glb.lstLiteratureTag.Add(defaultTag);
                        }
                    }
                    LoadTab();
                    LoadLiteratureList();
                    break;

                case DialogResult.No:
                    break;

                default:
                    break;
                }
            }
        }
Example #3
0
        private void groupToolStripMenuItem_Click(object sender, EventArgs e)
        {
            List <string> selectedTags = new List <string>();

            if (clbTag.CheckedItems != null)
            {
                foreach (var selected in clbTag.CheckedItems)
                {
                    string[] sub = selected.ToString().Split('[');
                    selectedTags.Add(sub[0]);
                }
            }
            string        NewName      = Interaction.InputBox("Input Group Tag Name", "Rename", "Rename Tag", 300, 300);
            List <string> existingTags = new List <string>();

            foreach (RLiteratureTag litTag in G.glb.lstLiteratureTag)
            {
                if (!existingTags.Exists(o => o == litTag.Tag))
                {
                    existingTags.Add(litTag.Tag);
                }
            }
            if (existingTags.Exists(o => o == NewName))
            {
                DialogResult result = MessageBox.Show("Tag '" + NewName + "' exists, do you want to add this tag?", "Group confirm", MessageBoxButtons.YesNo);
                switch (result)
                {
                case DialogResult.Yes:
                    List <RLiteratureTag> newTags = new List <RLiteratureTag>();
                    foreach (RLiteratureTag litTag in G.glb.lstLiteratureTag)
                    {
                        if (selectedTags.Exists(o => o == litTag.Tag))
                        {
                            if (!G.glb.lstLiteratureTag.Exists(o => o.Title == litTag.Title && o.Tag == NewName) && !newTags.Exists(o => o.Title == litTag.Title && o.Tag == NewName))
                            {
                                RLiteratureTag groupTag = new RLiteratureTag();
                                groupTag.Title = litTag.Title;
                                groupTag.Tag   = NewName;
                                newTags.Add(groupTag);
                            }
                        }
                    }
                    G.glb.lstLiteratureTag.AddRange(newTags);
                    LoadTab();
                    LoadLiteratureList();
                    break;

                case DialogResult.No:
                    break;

                default:
                    break;
                }
            }
            else
            {
                List <RLiteratureTag> newTags = new List <RLiteratureTag>();
                foreach (RLiteratureTag litTag in G.glb.lstLiteratureTag)
                {
                    if (selectedTags.Exists(o => o == litTag.Tag))
                    {
                        if (!G.glb.lstLiteratureTag.Exists(o => o.Title == litTag.Title && o.Tag == NewName) && !newTags.Exists(o => o.Title == litTag.Title && o.Tag == NewName))
                        {
                            RLiteratureTag groupTag = new RLiteratureTag();
                            groupTag.Title = litTag.Title;
                            groupTag.Tag   = NewName;
                            newTags.Add(groupTag);
                        }
                    }
                }
                G.glb.lstLiteratureTag.AddRange(newTags);
                LoadTab();
                LoadLiteratureList();
            }
        }