public static void PaintZoomButtons(IGraphics g, int width, int height, ZoomButtonState state) { const int bsize = zoomButtonSize; g.SmoothingMode = SmoothingMode2.AntiAlias; Brush2 b = buttonBrush; switch (state) { case ZoomButtonState.HighlightPlus: b = buttonBrushHighlight; break; case ZoomButtonState.PressPlus: b = buttonBrushPress; break; } PaintPlusZoomButton(g, b, width - bsize - 4, height - 2 * bsize - 8, bsize); b = buttonBrush; switch (state) { case ZoomButtonState.HighlightMinus: b = buttonBrushHighlight; break; case ZoomButtonState.PressMinus: b = buttonBrushPress; break; } PaintMinusZoomButton(g, b, width - bsize - 4, height - bsize - 4, bsize); g.SmoothingMode = SmoothingMode2.Default; }
public override void OnMouseIsUp(BasicMouseEventArgs e) { main.OnMouseIsUpMainView?.Invoke(e.Scale(main.ZoomFactor)); navigatorData.Reset(); state = ZoomButtonState.Neutral; Invalidate(); }
public override void OnMouseMoved(BasicMouseEventArgs e) { main.OnMouseMoveMainView?.Invoke(e.Scale(main.ZoomFactor)); ZoomButtonState newState = GraphUtil.GetNewZoomButtonState(e.X, e.Y, e.Width, e.Height, false); if (newState != state) { state = newState; Invalidate(); } }
public override void OnMouseIsDown(BasicMouseEventArgs e) { Size2 overview = GraphUtil.CalcOverviewSize(e.Width, e.Height, main.TotalWidth(), main.TotalHeight()); if (e.X < overview.Width && e.Y > e.Height - overview.Height) { OnMouseIsDownOverview(e.X, (int)(e.Y - e.Height + overview.Height), e.Width, e.Height); return; } ZoomButtonState newState = GraphUtil.GetNewZoomButtonState(e.X, e.Y, e.Width, e.Height, true); switch (newState) { case ZoomButtonState.PressMinus: main.ZoomFactor /= GraphUtil.zoomStep; invalidate(); main.InvalidateScrollbars(); main.UpdateZoom(); break; case ZoomButtonState.PressPlus: main.ZoomFactor *= GraphUtil.zoomStep; invalidate(); main.InvalidateScrollbars(); main.UpdateZoom(); break; default: if (newState != state) { invalidate(); } break; } state = newState; if (newState == ZoomButtonState.PressMinus || newState == ZoomButtonState.PressPlus) { return; } main.OnMouseIsDownMainView?.Invoke(e.Scale(main.ZoomFactor)); }
public override void OnMouseLeave(EventArgs e) { main.OnMouseLeaveMainView?.Invoke(e); state = ZoomButtonState.Neutral; Invalidate(); }
public static void PaintZoomButtons(IGraphics g, int width, int height, ZoomButtonState state) { const int bsize = zoomButtonSize; g.SmoothingMode = SmoothingMode2.AntiAlias; Brush2 b = buttonBrush; switch (state){ case ZoomButtonState.HighlightPlus: b = buttonBrushHighlight; break; case ZoomButtonState.PressPlus: b = buttonBrushPress; break; } PaintPlusZoomButton(g, b, width - bsize - 4, height - 2*bsize - 8, bsize); b = buttonBrush; switch (state){ case ZoomButtonState.HighlightMinus: b = buttonBrushHighlight; break; case ZoomButtonState.PressMinus: b = buttonBrushPress; break; } PaintMinusZoomButton(g, b, width - bsize - 4, height - bsize - 4, bsize); g.SmoothingMode = SmoothingMode2.Default; }