private void UpdateMenu() { if (Engine.Tool.BeginMainMenuBar()) { if (Engine.Tool.BeginMenu("File", true)) { if (Engine.Tool.MenuItem("Save", "", false, true)) { NodeEditorModel.Save(); } if (Engine.Tool.MenuItem("Load", "", false, true)) { NodeEditorModel.Load(); } Engine.Tool.EndMenu(); } if (Engine.Tool.BeginMenu("Edit", true)) { if (Engine.Tool.MenuItem("Undo", "", false, true)) { NodeEditorModel.Undo(); } if (Engine.Tool.MenuItem("Redo", "", false, true)) { NodeEditorModel.Redo(); } Engine.Tool.EndMenu(); } Engine.Tool.Text(Engine.CurrentFPS.ToString()); Engine.Tool.EndMainMenuBar(); } MenuHeight = Engine.Tool.GetFrameHeight(); }
private void UpdateComponents() { Engine.Tool.SetNextWindowViewport(0); Engine.Tool.BeginDockHost("host", new Vector2F(0, MenuHeight)); Engine.Tool.End(); UpdateMenu(); _previewWindow.Render(); _nodeTreeWindow.Render(); _selectedNodeWindow.Render(); if (_textureBrowserWindow.IsActive) { _textureBrowserWindow.Render(); } if (_fontBrowserWindow.IsActive) { _fontBrowserWindow.UpdateFontBrowser(); } if (LoadFilePath != "") { NodeEditorModel.Load(LoadFilePath); } }
public void Render() { _pane.Render(() => { if (_accessor.Selected != null) { NodeEditorModel.StartEditFields(_accessor.Selected); } if (_selectedToolElements != null) { Engine.Tool.PushID("Selected".GetHashCode()); foreach (var toolElement in _selectedToolElements) { Engine.Tool.PushID(toolElement.GetHashCode()); toolElement.Update(_accessor.Selected); Engine.Tool.PopID(); } Engine.Tool.PopID(); } if (_accessor.Selected != null) { NodeEditorModel.EndEditFields(_accessor.Selected); } }); }
public NodeEditorViewModel(IPamuxView v) { V = v; var m = new NodeEditorModel(this); m.PropertyChanged += (s, e) => { }; M = m; }
public void SaveLoad() { NodeEditorHost.Initialize("SaveLoad", 1500, 800, new Configuration() { ConsoleLoggingEnabled = true, IsResizable = true }); var spriteID = NodeEditorModel.AddNode <SpriteNode>(); var textID = NodeEditorModel.AddNode <TextNode>(); var arcID = NodeEditorModel.AddNode <ArcNode>(); var circleID = NodeEditorModel.AddNode <CircleNode>(); var lineID = NodeEditorModel.AddNode <LineNode>(); var rectID = NodeEditorModel.AddNode <RectangleNode>(); var triangleID = NodeEditorModel.AddNode <TriangleNode>(); if (Engine.DoEvents()) { NodeEditorHost.Update(); } var circle = NodeEditorModel.FindInstance(circleID) as CircleNode; NodeEditorModel.StartEditFields(circle); NodeEditorModel.NotifyEditFields(circle); circle.Radius = 100; circle.Position = new Vector2F(500, 500); circle.Color = new Color(255, 0, 100, 255); NodeEditorModel.EndEditFields(circle); while (Engine.DoEvents()) { NodeEditorHost.Update(); } NodeEditorModel.Save("TestData/Editor/SaveLoadTest"); var before = NodeEditorModel.NodeTree; NodeEditorHost.Terminate(); NodeEditorHost.Initialize("SaveLoad", 1500, 800, new Configuration() { ConsoleLoggingEnabled = true, IsResizable = true }); NodeEditorModel.Load("TestData/Editor/SaveLoadTest.nodes"); while (Engine.DoEvents()) { NodeEditorHost.Update(); } var after = NodeEditorModel.NodeTree; NodeEditorHost.Terminate(); Assert.True(PartsTreeSystemTest.Helper.IsValueEqual(before, after)); }
/// <inheritdoc/> public override void Update(Node owner) { base.Update(owner); if (Source == null || MethodInfo == null) { return; } if (Engine.Tool.Button(Name)) { MethodInfo?.Invoke(Source, new object[] { }); NodeEditorModel.NotifyEditFields(owner); } }
/// <inheritdoc/> public override void Update(Node owner) { base.Update(owner); if (Source == null || PropertyInfo == null) { return; } bool flag = (bool)PropertyInfo.GetValue(Source); if (Engine.Tool.Checkbox(Name, ref flag)) { PropertyInfo.SetValue(Source, flag); NodeEditorModel.NotifyEditFields(owner); } }
public void CreateTriangleNode() { var newnodeid = NodeEditorModel.AddNode <TriangleNode>(); _accessor.Selected = NodeEditorModel.FindInstance(newnodeid); }