Zoom on scroll wheel.

This commit is contained in:
Bill Thiede 2019-10-21 21:10:48 -07:00
parent 7cc1866863
commit d688c1b9c4

View File

@ -56,6 +56,16 @@ class App extends React.Component {
} }
this.setState({isZoomed: true}); this.setState({isZoomed: true});
}; };
const mouseScroll = (e) => {
let delta = parseFloat(-e.deltaY/100.0);
let zoomFactor = delta + this.state.zoomFactor;
if (zoomFactor < 1) { zoomFactor = 1; }
if (zoomFactor > 24) { zoomFactor = 24; }
this.setState({
zoomFactor: zoomFactor,
isZoomed: true
});
};
const mouseLeave = (e) => { const mouseLeave = (e) => {
if (isFrozen) { if (isFrozen) {
return; return;
@ -86,6 +96,7 @@ class App extends React.Component {
onMouseMove={mouseMove} onMouseMove={mouseMove}
onMouseEnter={mouseEnter} onMouseEnter={mouseEnter}
onMouseLeave={mouseLeave} onMouseLeave={mouseLeave}
onWheel={mouseScroll}
className="frame" className="frame"
style={{backgroundImage: 'url("' + url + '")', ...style}}> style={{backgroundImage: 'url("' + url + '")', ...style}}>
<p>{name}</p> <p>{name}</p>
@ -101,12 +112,12 @@ class App extends React.Component {
<input <input
id="zoom" id="zoom"
type="range" type="range"
min="1" max="64" min="1" max="24"
value={zoomFactor} value={zoomFactor}
onChange={(e) => this.setState({ onChange={(e) => this.setState({
zoomFactor: e.target.value zoomFactor: Number(e.target.value)
})} })}
step="1"/> step="0.1"/>
</label> </label>
{zoomFactor} {zoomFactor}
</div> </div>