Beispiel #1
0
 void IAssemblyBrowser.OnNodeRightClicked(AbstractAssemblyNode n, Point pos, bool isFromBrowser)
 {
     if (n is MemberNode)
     {
         mnuMember.Show(Cursor.Position);
         mnuMember.Tag = ((MemberNode)n).Member;
     }
     else if (n is TypeNode)
     {
         mnuMember.Show(Cursor.Position);
         mnuMember.Tag = ((TypeNode)n).Type;
     }
     else if (n is BaseTypeNode)
     {
         mnuMember.Show(Cursor.Position);
         mnuMember.Tag = ((BaseTypeNode)n).Type;
     }
     mnuMember.UpdateAnalyzeTypeMenuEnabledStatus(isFromBrowser);
 }
Beispiel #2
0
        private void txtNewInfo_MouseUp(object sender, MouseEventArgs e)
        {
            var block = txtNewInfo.CodeBlockAtMouse();

            if (block != null)
            {
                if (e.Button == System.Windows.Forms.MouseButtons.Left)
                {
                    if (block is VisualizerHelper.TypeCodeBlock)
                    {
                        browser.SelectType((Type)block.Tag);
                    }
                    else if (block is VisualizerHelper.MemberCodeBlock)
                    {
                        browser.SelectMember((MemberInfo)block.Tag);
                    }
                    else if (block is VisualizerHelper.InstructionOffsetCodeBlock && ((VisualizerHelper.InstructionOffsetCodeBlock)block).IsTarget)
                    {
                        int offset = Convert.ToInt32(((VisualizerHelper.InstructionOffsetCodeBlock)block).Tag);
                        ScrollToInstruction(offset);
                    }
                }
                else if (e.Button == System.Windows.Forms.MouseButtons.Right)
                {
                    // operand
                    if (block is VisualizerHelper.TypeCodeBlock || block is VisualizerHelper.MemberCodeBlock)
                    {
                        mnuMember.Tag = block.Tag;
                        mnuMember.Show(Cursor.Position);
                        mnuMember.UpdateAnalyzeTypeMenuEnabledStatus(false);
                    }
                }
            }

            if (e.Button == System.Windows.Forms.MouseButtons.XButton1)
            {
                browser.GoBack();
            }
            else if (e.Button == System.Windows.Forms.MouseButtons.XButton2)
            {
                browser.GoForward();
            }
        }