3 using MonoDevelop
.Core
;
4 using MonoDevelop
.Projects
;
5 using MonoDevelop
.Ide
.Gui
;
6 using MonoDevelop
.Ide
.Gui
.Pads
;
7 using MonoDevelop
.DesignerSupport
.PropertyGrid
;
8 using MonoDevelop
.Ide
.Gui
.Components
;
10 namespace MonoDevelop
.DesignerSupport
.Projects
12 class ComponentNodeBuilder
: NodeBuilderExtension
14 public override bool CanBuildNode (Type dataType
)
19 public override Type CommandHandlerType
{
20 get { return typeof(ComponentNodeCommandHandler); }
24 class ComponentNodeCommandHandler
: NodeCommandHandler
, IPropertyPadProvider
26 public object GetActiveComponent ()
28 return CurrentNode
.DataItem
;
31 public object GetProvider ()
36 public void OnEndEditing (object obj
)
40 public void OnChanged (object obj
)
42 // Don't use the CurrentNode property here since it may not be properly initialized when the event is fired.
43 ITreeNavigator nav
= Tree
.GetNodeAtObject (obj
);
45 IWorkspaceFileObject ce
= (IWorkspaceFileObject
) nav
.GetParentDataItem (typeof(IWorkspaceFileObject
), true);
47 IdeApp
.ProjectOperations
.Save (ce
);