Exemplo n.º 1
0
        public NodeViewModel(Main.Nodes.Node model, double left, double top, WorkAreaViewModel parent)
        {
            Parent       = parent;
            NodeModel    = model;
            Name         = NodeModel.Name;
            NodeTypeName = model.GetType().GetField("typeName").GetValue(null) as string;
            IsUpToDate   = false;
            // Get ports
            var _ports = NodeModel.PortManager.GetPorts();

            InputPorts  = new ObservableCollection <InputPortViewModel>();
            OutputPorts = new ObservableCollection <OutputPortViewModel>();
            foreach (Main.Ports.Port p in _ports)
            {
                switch (p.PortType)
                {
                case Main.Ports.PortType.Input:
                    InputPortViewModel inst = new InputPortViewModel(p, this);
                    inst.Port.ValueManager.UpToDateChanged += ValueManager_UpToDateChanged;
                    InputPorts.Add(inst);
                    break;

                case Main.Ports.PortType.Output:
                    OutputPortViewModel inst2 = new OutputPortViewModel(p, this);
                    inst2.Port.ValueManager.UpToDateChanged += ValueManager_UpToDateChanged;
                    OutputPorts.Add(inst2);
                    break;
                }
            }
            Left = left;
            Top  = top;
        }
Exemplo n.º 2
0
        public MainWindowViewModel()
        {
            List <Assembly> _assemblys = new List <Assembly>();

            _assemblys.Add(Assembly.LoadFrom(@"StandartNodes.dll"));
            _nodeTypes = new Main.Nodes.NodeTypesManager(_assemblys);

            WorkArea = new WorkAreaViewModel(_nodeTypes);

            NodeTypes = new NodeTypesListViewModel(_nodeTypes);

            MyConsole = new ConsViewModel();

            CalculateSchemeCommand = new SimpleCommand(CalculateSchemeExcecuted);
            ClearSchemeCommand     = new SimpleCommand(ClearSchemeExcecuted);
            SaveSchemeCommand      = new SimpleCommand(SaveSchemeExcecuted);
            LoadSchemeCommand      = new SimpleCommand(LoadSchemeExcecuted);
        }