public override void Initialize(Invert.IOC.UFrameContainer container) { container.RegisterInstance <IDocumentationProvider>(new uFrameMVVMDocumentationProvider(), "uFrameMVVM"); container.RegisterInstance <IEditorCommand>(GetCommandsSelectionCommand(), typeof(CommandsChildItem).Name + "TypeSelection");; container.AddTypeItem <CommandsChildItem>(); container.RegisterInstance <IEditorCommand>(GetPropertiesSelectionCommand(), typeof(PropertiesChildItem).Name + "TypeSelection");; container.AddTypeItem <PropertiesChildItem>(); container.RegisterInstance <IEditorCommand>(GetCollectionsSelectionCommand(), typeof(CollectionsChildItem).Name + "TypeSelection");; container.AddTypeItem <CollectionsChildItem>(); container.AddItem <BindingsReference>(); container.AddItem <SubPropertiesReference>(); container.AddTypeItem <InstancesReference>(); container.AddItem <TransitionsChildItem>(); container.AddItem <StateTransitionsReference>(); container.AddItem <HandlersReference>(); Element = container.AddNode <ElementNode, ElementNodeViewModel, ElementNodeDrawer>("Element"); Element.Inheritable(); Element.Color(NodeColor.DarkGray); Element.HasSubNode <SimpleClassNode>(); Element.HasSubNode <ViewNode>(); Element.HasSubNode <ComputedPropertyNode>(); Element.HasSubNode <StateMachineNode>(); Element.HasSubNode <ViewComponentNode>(); Element.HasSubNode <CommandNode>(); SimpleClass = container.AddNode <SimpleClassNode, SimpleClassNodeViewModel, SimpleClassNodeDrawer>("SimpleClass"); SimpleClass.Inheritable(); SimpleClass.Color(NodeColor.DarkDarkGray); View = container.AddNode <ViewNode, ViewNodeViewModel, ViewNodeDrawer>("View"); View.Inheritable(); View.Color(NodeColor.Blue); ComputedProperty = container.AddNode <ComputedPropertyNode, ComputedPropertyNodeViewModel, ComputedPropertyNodeDrawer>("ComputedProperty"); ComputedProperty.Color(NodeColor.Green); Subsystem = container.AddGraph <SubsystemGraph, SubsystemNode>("SubsystemGraph"); Subsystem.Color(NodeColor.Purple); Subsystem.HasSubNode <ElementNode>(); Subsystem.HasSubNode <SimpleClassNode>(); Subsystem.HasSubNode <CommandNode>(); Subsystem.HasSubNode <ServiceNode>(); SceneType = container.AddNode <SceneTypeNode, SceneTypeNodeViewModel, SceneTypeNodeDrawer>("SceneType"); SceneType.Color(NodeColor.Orange); MVVM = container.AddGraph <MVVMGraph, MVVMNode>("MVVMGraph"); MVVM.Color(NodeColor.Gray); MVVM.HasSubNode <SubsystemNode>(); MVVM.HasSubNode <SceneTypeNode>(); StateMachine = container.AddGraph <StateMachineGraph, StateMachineNode>("StateMachineGraph"); StateMachine.Color(NodeColor.Orange); StateMachine.HasSubNode <StateNode>(); State = container.AddNode <StateNode, StateNodeViewModel, StateNodeDrawer>("State"); State.Color(NodeColor.Green); ViewComponent = container.AddNode <ViewComponentNode, ViewComponentNodeViewModel, ViewComponentNodeDrawer>("ViewComponent"); ViewComponent.Color(NodeColor.Orange); Command = container.AddNode <CommandNode, CommandNodeViewModel, CommandNodeDrawer>("Command"); Command.Inheritable(); Command.Color(NodeColor.Black); Service = container.AddGraph <ServiceGraph, ServiceNode>("ServiceGraph"); Service.Color(NodeColor.Black); container.Connectable <ElementNode, InstancesReference>(); container.Connectable <ElementNode, Element>(); container.Connectable <PropertiesChildItem, BindingsReference>(); container.Connectable <PropertiesChildItem, SceneProperties>(); container.Connectable <PropertiesChildItem, SubPropertiesReference>(); container.Connectable <PropertiesChildItem, StateMachineNode>(); container.Connectable <CollectionsChildItem, BindingsReference>(); container.Connectable <CommandsChildItem, BindingsReference>(); container.Connectable <CommandsChildItem, TransitionsChildItem>(); container.Connectable <PropertiesChildItem, BindingsReference>(); container.Connectable <PropertiesChildItem, ComputedPropertyNode>(); container.Connectable <CollectionsChildItem, BindingsReference>(); container.Connectable <ViewNode, ViewComponentNode>(); container.Connectable <ComputedPropertyNode, TransitionsChildItem>(); container.Connectable <ComputedPropertyNode, ComputedPropertyNode>(); container.Connectable <TransitionsChildItem, StateTransitionsReference>(); container.Connectable <StartState, StateNode>(); container.Connectable <StateTransitionsReference, StateNode>(); }