UNPKG

@scena/react-ruler

Version:

A React Ruler component that can draw grids and scroll infinitely.

41 lines (40 loc) 1.13 kB
import * as React from "react"; import { DrawRulerOptions, RulerInterface, RulerProps } from "./types"; export default class Ruler extends React.PureComponent<RulerProps> implements RulerInterface { static defaultProps: Partial<RulerProps>; divisionsElement: HTMLElement; state: { scrollPos: number; }; canvasElement: HTMLCanvasElement; private canvasContext; private width; private height; private _zoom; private _rulerScale; private _observer; render(): JSX.Element; componentDidMount(): void; componentDidUpdate(): void; componentWillUnmount(): void; /** * Gets the scroll position of the ruler. */ getScrollPos(): number; /** * @method Ruler#scroll * @param scrollPos */ scroll(scrollPos: number, zoom?: number): void; /** * @method Ruler#resize */ resize(nextZoom?: number): void; /** * draw a ruler * @param options - It is drawn with an external value, not the existing state. */ draw(options?: DrawRulerOptions): void; private _getRulerScale; private _checkResize; }