private void AddMethodExtension(IMethodVisualizer visualizer) { string item_name = visualizer.Name + "..."; MenuItem mi = new MenuItem(item_name); visualizers.Add(mi, visualizer); mi.Activated += delegate(object obj, EventArgs args) { MethodDefinition md = (GetSelectedObject() as MethodDefinition); if (md == null) { return; } IMethodVisualizer mv = visualizers [(obj as MenuItem)] as IMethodVisualizer; if (mv == null) { return; } string title = String.Format("{0} for {1}", mv.Name, md.Name); Tab tab = new Tab(title); tab.Content = mv.GetWidget(md); tab.CloseButtonClicked += delegate(object o, EventArgs ea) { notebook.Remove((o as Tab).Content); }; int new_page = notebook.AppendPage(tab.Content, tab); notebook.Page = new_page; }; popup_methods.Append(mi); popup_methods.ShowAll(); }
private void AddMethodExtension (IMethodVisualizer visualizer) { string item_name = visualizer.Name + "..."; MenuItem mi = new MenuItem (item_name); visualizers.Add (mi, visualizer); mi.Activated += delegate (object obj, EventArgs args) { MethodDefinition md = (GetSelectedObject () as MethodDefinition); if (md == null) return; IMethodVisualizer mv = visualizers [(obj as MenuItem)] as IMethodVisualizer; if (mv == null) return; string title = String.Format ("{0} for {1}", mv.Name, md.Name); Tab tab = new Tab (title); tab.Content = mv.GetWidget (md); tab.CloseButtonClicked += delegate (object o, EventArgs ea) { notebook.Remove ((o as Tab).Content); }; int new_page = notebook.AppendPage (tab.Content, tab); notebook.Page = new_page; }; popup_methods.Append (mi); popup_methods.ShowAll (); }