public void SetTrainNode(TrainTrackNode node) { TrainNode = node; Tag = node; UpdateFormTitle(); UpdateTrainTrackNodeUI(); }
public TrainTrackNodePositionUndoStep(TrainTrackNode node, Vector3 startpos, WorldForm wf) { Node = node; StartPosition = startpos; EndPosition = node?.Position ?? Vector3.Zero; UpdateGraphics(wf); //forces the update of the path graphics when it's moved... }
public void SetPosition(Vector3 newpos, bool editPivot) { if (MultipleSelection) { //don't do anything here for multiselection } else if (EntityDef != null) { if (editPivot) { EntityDef.SetPivotPositionFromWidget(newpos); } else { EntityDef.SetPositionFromWidget(newpos); } } else if (CarGenerator != null) { CarGenerator.SetPosition(newpos); } else if (PathNode != null) { PathNode.SetPosition(newpos); } else if (CollisionPoly != null) { CollisionPoly.Position = newpos; } else if (CollisionBounds != null) { CollisionBounds.Position = newpos; } else if (NavPoly != null) { NavPoly.SetPosition(newpos); } else if (NavPoint != null) { NavPoint.SetPosition(newpos); } else if (NavPortal != null) { NavPortal.SetPosition(newpos); } else if (TrainTrackNode != null) { TrainTrackNode.SetPosition(newpos); } else if (ScenarioNode != null) { ScenarioNode.SetPosition(newpos); } else if (Audio != null) { Audio.SetPosition(newpos); } }
public void UpdateTrainNodeTreeNode(TrainTrackNode node) { var tn = FindTrainNodeTreeNode(node); if (tn != null) { tn.Text = node.ToString(); } }
public void RemoveTrainNodeTreeNode(TrainTrackNode node) { var tn = FindTrainNodeTreeNode(node); if ((tn != null) && (tn.Parent != null)) { tn.Parent.Text = "Nodes (" + node.Track.Nodes.Count.ToString() + ")"; tn.Parent.Nodes.Remove(tn); } }
public void SetPosition(Vector3 newpos, bool editPivot) { if (MultipleSelection) { //don't do anything here for multiselection } else if (EntityDef != null) { if (editPivot) { EntityDef.SetPivotPositionFromWidget(newpos); } else { EntityDef.SetPositionFromWidget(newpos); } } else if (CarGenerator != null) { CarGenerator.SetPosition(newpos); } else if (PathNode != null) { PathNode.SetPosition(newpos); } else if (NavPoly != null) { NavPoly.SetPosition(newpos); //if (projectForm != null) //{ // projectForm.OnWorldNavPolyModified(NavPoly); //} } else if (NavPoint != null) { NavPoint.SetPosition(newpos); } else if (NavPortal != null) { NavPortal.SetPosition(newpos); } else if (TrainTrackNode != null) { TrainTrackNode.SetPosition(newpos); } else if (ScenarioNode != null) { ScenarioNode.SetPosition(newpos); } else if (Audio != null) { Audio.SetPosition(newpos); } }
public void TrySelectTrainNodeTreeNode(TrainTrackNode node) { TreeNode tnode = FindTrainNodeTreeNode(node); if (tnode == null) { tnode = FindTrainTrackTreeNode(node?.Track); } if (tnode != null) { ProjectTreeView.SelectedNode = tnode; } }
public TreeNode FindTrainNodeTreeNode(TrainTrackNode n) { if (n == null) { return(null); } TreeNode tracknode = FindTrainTrackTreeNode(n.Track); var nodesnode = GetChildTreeNode(tracknode, "Nodes"); if (nodesnode == null) { return(null); } for (int i = 0; i < nodesnode.Nodes.Count; i++) { TreeNode nnode = nodesnode.Nodes[i]; if (nnode.Tag == n) { return(nnode); } } return(null); }
public void SetPosition(Vector3 newpos, bool editPivot) { if (MultipleSelectionItems != null) { if (editPivot) { } else { var dpos = newpos - MultipleSelectionCenter;// oldpos; if (dpos == Vector3.Zero) { return; //nothing moved.. (probably due to snap) } for (int i = 0; i < MultipleSelectionItems.Length; i++) { if (MultipleSelectionItems[i].CollisionPoly == null)//skip polys, they use gathered verts { var refpos = MultipleSelectionItems[i].WidgetPosition; MultipleSelectionItems[i].SetPosition(refpos + dpos, false); } } if (GatheredCollisionVerts != null) { for (int i = 0; i < GatheredCollisionVerts.Length; i++) { var refpos = GatheredCollisionVerts[i].Position; GatheredCollisionVerts[i].Position = refpos + dpos; } } MultipleSelectionCenter = newpos; } } else if (EntityDef != null) { if (editPivot) { EntityDef.SetPivotPositionFromWidget(newpos); } else { EntityDef.SetPositionFromWidget(newpos); } } else if (CarGenerator != null) { CarGenerator.SetPosition(newpos); } else if (PathNode != null) { PathNode.SetPosition(newpos); } else if (CollisionVertex != null) { CollisionVertex.Position = newpos; } else if (CollisionPoly != null) { CollisionPoly.Position = newpos; } else if (CollisionBounds != null) { CollisionBounds.Position = newpos; } else if (NavPoly != null) { NavPoly.SetPosition(newpos); } else if (NavPoint != null) { NavPoint.SetPosition(newpos); } else if (NavPortal != null) { NavPortal.SetPosition(newpos); } else if (TrainTrackNode != null) { TrainTrackNode.SetPosition(newpos); } else if (ScenarioNode != null) { ScenarioNode.SetPosition(newpos); } else if (Audio != null) { Audio.SetPosition(newpos); } }