public void TriggerModeEventHandler(IRagePixelMode handler) { handler.OnSceneGui(this); switch (Event.current.type) { case EventType.MouseDown: handler.OnMouseDown(this); break; case EventType.MouseUp: handler.OnMouseUp(this); break; case EventType.MouseMove: handler.OnMouseMove(this); break; case EventType.MouseDrag: handler.OnMouseDrag(this); break; case EventType.Repaint: handler.OnRepaint(this); break; } }
private IRagePixelMode GetModeHandler() { IRagePixelMode handler = null; switch (Mode) { case SceneMode.Default: break; case SceneMode.Paint: handler = GetModeHandler <PaintHandler>(); break; case SceneMode.FloodFill: handler = GetModeHandler <FloodFillHandler>(); break; case SceneMode.ReplaceColor: handler = GetModeHandler <ReplaceColorHandler>(); break; case SceneMode.Resize: handler = GetModeHandler <ResizeHandler>(); break; case SceneMode.CreateSprite: handler = GetModeHandler <CreateSpriteHandler>(); break; } return(handler); }
public void OnSceneGui(SceneView sceneView) { if (Tools.current != Tool.None) { OnUserToolChange(); } if (Sprite == null && Mode != SceneMode.CreateSprite) { return; } IRagePixelMode handler = GetModeHandler(); if (handler == null) { return; } UpdateMouseIsDown(); UpdateHotControl(); UpdateCursor(); if (handler.AllowPickingDefaultBehaviour()) { TriggerModeEventHandler(GetModeHandler <PickingHandler>()); } if (!GetModeHandler <PickingHandler>().Active) { TriggerModeEventHandler(handler); } }