excalidraw/src/scene/index.ts
Enzo Ferey c7ff4c2ed6
Canvas zooming (#716)
* Zoom icons.

* Actions.

* Min zoom of 0 does not make sense.

* Zoom logic.

* Modify how zoom affects selection rendering.

* More precise scrollbar dimensions.

* Adjust elements visibility and scrollbars.

* Normalized canvas width and height.

* Apply zoom to resize test.

* [WIP] Zoom using canvas center as an origin.

* Undo zoom on `getScrollBars`.

* WIP: center zoom origin via scroll

* This was wrong for sure.

* Finish scaling using center as origin.

* Almost there.

* Scroll offset should be not part of zoom transforms.

* Better naming.

* Wheel movement should be the same no matter the zoom level.

* Panning movement should be the same no matter the zoom level.

* Fix elements pasting.

* Fix text WYSIWGT.

* Fix scrollbars and visibility.
2020-02-15 21:03:32 +01:00

31 lines
691 B
TypeScript

export { isOverScrollBars } from "./scrollbars";
export {
clearSelection,
getSelectedIndices,
deleteSelectedElements,
someElementIsSelected,
getElementsWithinSelection,
getCommonAttributeOfSelectedElements,
} from "./selection";
export {
exportCanvas,
loadFromJSON,
loadFromBlob,
saveAsJSON,
restoreFromLocalStorage,
saveToLocalStorage,
exportToBackend,
importFromBackend,
loadScene,
calculateScrollCenter,
} from "./data";
export {
hasBackground,
hasStroke,
getElementAtPosition,
getElementContainingPosition,
hasText,
} from "./comparisons";
export { createScene } from "./createScene";
export { getZoomOrigin, getZoomTranslation } from "./zoom";