KPFloatingPanel.MainForm.AddActionsToItem C# (CSharp) Method

AddActionsToItem() private method

private AddActionsToItem ( ToolStripMenuItem Parent, PwEntry Entry ) : void
Parent ToolStripMenuItem
Entry PwEntry
return void
        private void AddActionsToItem(ToolStripMenuItem Parent, PwEntry Entry)
        {
            ToolStripMenuItem Item;

            foreach (KeyValuePair<string, ProtectedString> kvp in Entry.Strings) {
                if (kvp.Key.Equals(PwDefs.UrlField)) {
                    if (kvp.Value.Length > 0) {
                        Item = new ToolStripMenuItem();
                        Item.Tag = Entry;
                        ToolStripMenuItem Tmp;
                        if (FOptions.URLAction == 0)
                            Tmp = (ToolStripMenuItem)Host.MainWindow.EntryContextMenu.Items.Find("m_ctxEntryOpenUrl", true)[0];
                        else
                            if (FOptions.URLAction == 1)
                                Tmp = (ToolStripMenuItem)Host.MainWindow.EntryContextMenu.Items.Find("m_ctxEntryCopyUrl", true)[0];
                            else
                                throw new Exception("Internal error in AddActionsToItem (FOptions.URLAction)");
                        Item.Text = Tmp.Text;
                        Item.Image = ilIcons.Images[9];
                        Item.Click += miItem_OpenURL;
                        Parent.DropDownItems.Add(Item);
                    }
                    break;
                }
            }

            Item = new ToolStripMenuItem();
            Item.Tag = Entry;
            Item.Text = KPRes.AutoType;
            Item.Image = ilIcons.Images[8];
            Item.Click += miItem_AutoType;
            Parent.DropDownItems.Add(Item);

            foreach (KeyValuePair<string, ProtectedString> kvp in Entry.Strings) {
                if ((!kvp.Key.Equals(PwDefs.TitleField)) && (!kvp.Key.Equals(PwDefs.NotesField)) && (!kvp.Key.Equals(PwDefs.UrlField))) {
                    if (kvp.Value.Length > 0) {
                        Item = new ToolStripMenuItem();
                        Item.Tag = Entry;
                        Item.Text = kvp.Key;
                        //Item.MouseDown += new MouseEventHandler(miItem_Mousedown);
                        Item.Click += miItem_Click;
                        //Item.

                        if (kvp.Key.Equals(PwDefs.UserNameField)) {
                            Item.Image = ilIcons.Images[10];
                            Parent.DropDownItems.Insert(Parent.DropDownItems.Count, Item);
                        }
                        else
                            if (kvp.Key.Equals(PwDefs.PasswordField)) {
                                Item.Image = ilIcons.Images[11];
                                Parent.DropDownItems.Insert(Parent.DropDownItems.Count, Item);
                            }
                            else {
                                Item.Image = ilIcons.Images[5];
                                Parent.DropDownItems.Add(Item);
                            }
                    }
                }
            }

            //Test implementation of Edit Entry s² 2009/07

            bool added = false;
            foreach (KeyValuePair<string, ProtectedString> kvp in Entry.Strings) {
                if ((!kvp.Key.Equals(PwDefs.TitleField)) && (!kvp.Key.Equals(PwDefs.NotesField)) && (!kvp.Key.Equals(PwDefs.UrlField)) && !added) {
                    if (kvp.Value.Length > 0) {
                        Item = new ToolStripMenuItem();
                        Item.Tag = Entry;
                        Item.Text = KPRes.EditEntry;
                        Item.Image = ilIcons.Images[1];
                        //1
                        Item.Click += miItem_Edit;
                        Parent.DropDownItems.Add(Item);
                        added = true;
                    }
                }
            }
            //End Test implementation of Edit Entry s² 2009/07
        }