private void view_MouseMoveEvent(object sender, EditorEventArgs e) { const int xOffset = 10; const int yOffset = 10; if (e.X >= e.SceneObject.X - xOffset && e.X <= e.SceneObject.X + xOffset && e.Y >= e.SceneObject.Y - yOffset && e.Y <= e.SceneObject.Y + yOffset) { mouseInteraction = interactions[4]; view.ChangeCursor(Cursors.SizeAll); } else if (e.X >= e.SceneObject.X + e.SceneObject.ScaleX - xOffset && e.X <= e.SceneObject.X + e.SceneObject.ScaleX + xOffset && e.Y >= e.SceneObject.Y + e.SceneObject.ScaleY - yOffset && e.Y <= e.SceneObject.Y + e.SceneObject.ScaleY + yOffset) { mouseInteraction = interactions[3]; view.ChangeCursor(Cursors.SizeNWSE); } else if (e.X >= e.SceneObject.X + e.SceneObject.ScaleX - xOffset && e.X <= e.SceneObject.X + e.SceneObject.ScaleX + xOffset && e.Y >= e.SceneObject.Y - yOffset && e.Y <= e.SceneObject.Y + e.SceneObject.ScaleY + yOffset) { mouseInteraction = interactions[1]; view.ChangeCursor(Cursors.SizeWE); } else if (e.Y >= e.SceneObject.Y + e.SceneObject.ScaleY - yOffset && e.Y <= e.SceneObject.Y + e.SceneObject.ScaleY + yOffset && e.X >= e.SceneObject.X - xOffset && e.X <= e.SceneObject.X + e.SceneObject.ScaleX + xOffset) { mouseInteraction = interactions[2]; view.ChangeCursor(Cursors.SizeNS); } else { mouseInteraction = interactions[0]; } }
private void view_ListViewSelectedIndexChanged(object sender, SceneObjectListEventArgs e) { view.PropertyGrid.SelectedObject = null; if (e.Item != 0) { mouseInteraction = interactions[5]; view.ChangeCursor(Cursors.Cross); } else { mouseInteraction = interactions[0]; view.ChangeCursor(Cursors.Default); } }
private void view_MouseUpEvent(object sender, EditorEventArgs e) { if (e.IndeciesCount != 0) { var sceneObject = e.ListViewItemCollection[0].Tag as SceneObject; sceneObject.X = firstPos.X; sceneObject.Y = firstPos.Y; var cloned = sceneObject.Clone() as SceneObject; cloned.Name = GetUnicalName(cloned.Name); model.AddNewObject(cloned); Overlay.DrawingObject = null; } else { mouseInteraction = interactions[0]; } view.SceneBox.Refresh(); view.UpdateSceneObjectsData(model.SceneObjects); }
public RainPresenter(IScene model, IView view) { this.model = model; this.view = view; this.view.MouseDownEvent += view_MouseDownEvent; this.view.MouseUpEvent += view_MouseUpEvent; this.view.MouseMoveEvent += view_MouseMoveEvent; this.view.PressedMouseMoveEvent += view_PressedMouseMoveEvent; this.view.ClearClick += view_ClearClick; this.view.OpenFromXMLClick += view_OpenFromXMLClick; this.view.SaveToXMLClick += view_SaveToXMLClick; this.view.ListBoxSelectedIndexChanged += view_ListBoxSelectedIndexChanged; this.view.ListViewSelectedIndexChanged += view_ListViewSelectedIndexChanged; this.view.PropertyValueChanged += view_PropertyValueChanged; this.view.OpenProjectClick += view_OpenProjectClick; this.view.MouseUpRightClick += view_MouseUpRightClick; this.view.DeleteClick += view_DeleteObjectClick; this.view.DuplicateClick += view_DuplicateObjectClick; this.view.SearchTextBox.TextChanged += view_SearchBoxTextChanged; this.view.TabControlTabSwithed += view_TabConrolTabSwitched; this.view.ComponentAddClick += view_ComponentAddClick; this.view.ComponentDeleteClick += view_ComponentDeleteClick; this.view.PropertyGrid.SelectedObjectsChanged += view_PropertyGridValueChanged; var circleBrush = new SceneObject("Circle", 0, 0, 100, 100); var circleDrawer = circleBrush.AttachComponent <Drawer>(); circleDrawer.UseBrush = true; circleDrawer.Shape = Shapes.Circle; scenabs.Add(circleBrush); var squareBrush = new SceneObject("Square", 0, 0, 100, 100); var squareDrawer = squareBrush.AttachComponent <Drawer>(); squareDrawer.UseBrush = true; squareDrawer.Shape = Shapes.Square; scenabs.Add(squareBrush); var arrowVerticalBrush = new SceneObject("Arrow_Vertical", 0, 0, 100, 100); var arrowVerticalDrawer = arrowVerticalBrush.AttachComponent <Drawer>(); arrowVerticalDrawer.UseBrush = true; arrowVerticalDrawer.Shape = Shapes.Arrow_Vertical; scenabs.Add(arrowVerticalBrush); var arrowHorizontalBrush = new SceneObject("Arrow_Horizontal", 0, 0, 100, 100); var arrowHorizontalDrawer = arrowHorizontalBrush.AttachComponent <Drawer>(); arrowHorizontalDrawer.UseBrush = true; arrowHorizontalDrawer.Shape = Shapes.Arrow_Horizontal; scenabs.Add(arrowHorizontalBrush); var stickmanBrush = new SceneObject("Stickman", 0, 0, 100, 100); var stickmanDrawer = stickmanBrush.AttachComponent <Drawer>(); stickmanDrawer.UseBrush = true; stickmanDrawer.Shape = Shapes.StickMan; scenabs.Add(stickmanBrush); using (Graphics gr = Graphics.FromImage(emptyImage)) { gr.Clear(Color.White); } for (int i = 0; i < scenabimgs.Length; i++) { scenabimgs[i] = emptyImage; } this.view.UpdateScenabsData(scenabs, scenabimgs); mouseInteraction = interactions[0]; this.view.SceneBox.Scene = model; }