Пример #1
0
        private void AddTypeExtension(ITypeVisualizer visualizer)
        {
            string item_name = visualizer.Name + "...";

            MenuItem mi = new MenuItem(item_name);

            visualizers.Add(mi, visualizer);

            mi.Activated += delegate(object obj, EventArgs args) {
                TypeDefinition td = (GetSelectedObject() as TypeDefinition);
                if (td == null)
                {
                    return;
                }

                ITypeVisualizer tv = visualizers [(obj as MenuItem)] as ITypeVisualizer;
                if (tv == null)
                {
                    return;
                }

                string title = String.Format("{0} for {1}", tv.Name, td.Name);

                Tab tab = new Tab(title);
                tab.Content             = tv.GetWidget(td);
                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_types.Append(mi);
            popup_types.ShowAll();
        }
		private void AddTypeExtension (ITypeVisualizer visualizer)
		{
			string item_name = visualizer.Name + "...";
			
			MenuItem mi = new MenuItem (item_name);
			visualizers.Add (mi, visualizer);

			mi.Activated += delegate (object obj, EventArgs args) {
				TypeDefinition td = (GetSelectedObject () as TypeDefinition);
				if (td == null)
					return;

				ITypeVisualizer tv = visualizers [(obj as MenuItem)] as ITypeVisualizer;
				if (tv == null)
					return;

				string title = String.Format ("{0} for {1}", tv.Name, td.Name);
				
				Tab tab = new Tab (title);
				tab.Content =  tv.GetWidget (td);
				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_types.Append (mi);
			popup_types.ShowAll ();
		}