@webviz/well-log-viewer 2.6.4 → 2.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/SyncLogViewer.js +1 -1
- package/dist/SyncLogViewer.js.map +1 -1
- package/dist/components/AxisSelector.d.ts +3 -7
- package/dist/components/AxisSelector.js +12 -34
- package/dist/components/AxisSelector.js.map +1 -1
- package/dist/components/CallbackManager.js.map +1 -1
- package/dist/components/InfoPanel.d.ts +2 -9
- package/dist/components/InfoPanel.js +17 -31
- package/dist/components/InfoPanel.js.map +1 -1
- package/dist/components/LocalMenus.d.ts +6 -25
- package/dist/components/LocalMenus.js +91 -89
- package/dist/components/LocalMenus.js.map +1 -1
- package/dist/components/Scroller.d.ts +3 -24
- package/dist/components/Scroller.js +65 -56
- package/dist/components/Scroller.js.map +1 -1
- package/dist/components/WellLogAxesPanel.js +1 -1
- package/dist/components/WellLogAxesPanel.js.map +1 -1
- package/dist/components/WellLogScaleSelector.d.ts +2 -15
- package/dist/components/WellLogScaleSelector.js +33 -77
- package/dist/components/WellLogScaleSelector.js.map +1 -1
- package/dist/components/WellLogViewWithScroller.d.ts +3 -3
- package/dist/components/WellLogViewWithScroller.js +4 -3
- package/dist/components/WellLogViewWithScroller.js.map +1 -1
- package/dist/components/WellLogZoomSlider.d.ts +2 -15
- package/dist/components/WellLogZoomSlider.js +32 -72
- package/dist/components/WellLogZoomSlider.js.map +1 -1
- package/dist/components/ZoomSlider.d.ts +2 -10
- package/dist/components/ZoomSlider.js +21 -51
- package/dist/components/ZoomSlider.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, { useState, useEffect, useCallback } from "react";
|
|
2
2
|
import { createRoot } from "react-dom/client";
|
|
3
3
|
import { isScaleTrack } from "../utils/tracks";
|
|
4
4
|
import Menu from "@mui/material/Menu";
|
|
@@ -26,121 +26,120 @@ function getPlotTitle(plot, wellLogSets) {
|
|
|
26
26
|
}
|
|
27
27
|
return title;
|
|
28
28
|
}
|
|
29
|
-
export
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
29
|
+
export const SimpleMenu = ({ anchorEl: initialAnchorEl, wellLogView, track, type, }) => {
|
|
30
|
+
const [anchorEl, setAnchorEl] = useState(initialAnchorEl);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
setAnchorEl(initialAnchorEl);
|
|
33
|
+
}, [initialAnchorEl]);
|
|
34
|
+
const addTrack = useCallback(() => {
|
|
35
|
+
wellLogView.addTrack(anchorEl, track);
|
|
36
|
+
}, [wellLogView, anchorEl, track]);
|
|
37
|
+
const editTrack = useCallback(() => {
|
|
38
|
+
wellLogView.editTrack(anchorEl, track);
|
|
39
|
+
}, [wellLogView, anchorEl, track]);
|
|
40
|
+
const removeTrack = useCallback(() => {
|
|
41
|
+
wellLogView.removeTrack(track);
|
|
42
|
+
}, [wellLogView, track]);
|
|
43
|
+
const addPlot = useCallback(() => {
|
|
44
|
+
wellLogView.addPlot(anchorEl, track);
|
|
45
|
+
}, [wellLogView, anchorEl, track]);
|
|
46
|
+
const editPlots = useCallback(() => {
|
|
47
|
+
editPlotsFunctionHelper(anchorEl, wellLogView, track);
|
|
48
|
+
}, [anchorEl, wellLogView, track]);
|
|
49
|
+
const removePlots = useCallback(() => {
|
|
50
|
+
removePlotsFunctionHelper(anchorEl, wellLogView, track);
|
|
51
|
+
}, [anchorEl, wellLogView, track]);
|
|
52
|
+
const closeMenu = useCallback(() => {
|
|
53
|
+
setAnchorEl(null);
|
|
54
|
+
}, []);
|
|
55
|
+
const handleContextMenu = useCallback((ev) => {
|
|
52
56
|
ev.preventDefault();
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
handleCloseMenu
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
handleClickItem(action) {
|
|
57
|
+
closeMenu();
|
|
58
|
+
}, [closeMenu]);
|
|
59
|
+
const handleCloseMenu = useCallback(() => {
|
|
60
|
+
closeMenu();
|
|
61
|
+
}, [closeMenu]);
|
|
62
|
+
const handleClickItem = useCallback((action) => {
|
|
59
63
|
if (action)
|
|
60
64
|
action();
|
|
61
|
-
|
|
62
|
-
}
|
|
63
|
-
createRemovePlotMenuItem(title, plot) {
|
|
64
|
-
return (React.createElement(MenuItem, { key: plot.id, onClick: () =>
|
|
65
|
+
closeMenu();
|
|
66
|
+
}, [closeMenu]);
|
|
67
|
+
const createRemovePlotMenuItem = useCallback((title, plot) => {
|
|
68
|
+
return (React.createElement(MenuItem, { key: plot.id, onClick: () => handleClickItem(() => wellLogView.removeTrackPlot(track, plot)) },
|
|
65
69
|
"\u00A0\u00A0\u00A0\u00A0",
|
|
66
70
|
title));
|
|
67
|
-
}
|
|
68
|
-
menuRemovePlotItems() {
|
|
71
|
+
}, [handleClickItem, wellLogView, track]);
|
|
72
|
+
const menuRemovePlotItems = useCallback(() => {
|
|
69
73
|
const nodes = [];
|
|
70
|
-
const wellLogSets =
|
|
74
|
+
const wellLogSets = wellLogView.wellLogSets;
|
|
71
75
|
if (!wellLogSets.length)
|
|
72
76
|
return nodes;
|
|
73
|
-
const track = this.props.track;
|
|
74
77
|
const plots = track.plots;
|
|
75
78
|
for (const plot of plots) {
|
|
76
79
|
const title = getPlotTitle(plot, wellLogSets);
|
|
77
|
-
nodes.push(
|
|
80
|
+
nodes.push(createRemovePlotMenuItem(title, plot));
|
|
78
81
|
}
|
|
79
82
|
return nodes;
|
|
80
|
-
}
|
|
81
|
-
createEditPlotMenuItem(title, plot) {
|
|
82
|
-
return (React.createElement(MenuItem, { key: plot.id, onClick: () =>
|
|
83
|
+
}, [wellLogView.wellLogSets, track, createRemovePlotMenuItem]);
|
|
84
|
+
const createEditPlotMenuItem = useCallback((title, plot) => {
|
|
85
|
+
return (React.createElement(MenuItem, { key: plot.id, onClick: () => handleClickItem(() => wellLogView.editPlot(anchorEl, track, plot)) },
|
|
83
86
|
"\u00A0\u00A0\u00A0\u00A0",
|
|
84
87
|
title));
|
|
85
|
-
}
|
|
86
|
-
menuEditPlotItems() {
|
|
88
|
+
}, [handleClickItem, wellLogView, anchorEl, track]);
|
|
89
|
+
const menuEditPlotItems = useCallback(() => {
|
|
87
90
|
const nodes = [];
|
|
88
|
-
const wellLogSets =
|
|
91
|
+
const wellLogSets = wellLogView.wellLogSets;
|
|
89
92
|
if (!wellLogSets.length)
|
|
90
93
|
return nodes;
|
|
91
|
-
const track = this.props.track;
|
|
92
94
|
const plots = track.plots;
|
|
93
95
|
for (const plot of plots) {
|
|
94
96
|
const title = getPlotTitle(plot, wellLogSets);
|
|
95
|
-
nodes.push(
|
|
97
|
+
nodes.push(createEditPlotMenuItem(title, plot));
|
|
96
98
|
}
|
|
97
99
|
return nodes;
|
|
98
|
-
}
|
|
99
|
-
createMenuItem(title, action) {
|
|
100
|
-
return (React.createElement(MenuItem, { key: title, onClick: () =>
|
|
100
|
+
}, [wellLogView.wellLogSets, track, createEditPlotMenuItem]);
|
|
101
|
+
const createMenuItem = useCallback((title, action) => {
|
|
102
|
+
return (React.createElement(MenuItem, { key: title, onClick: () => handleClickItem(action) },
|
|
101
103
|
"\u00A0\u00A0\u00A0\u00A0",
|
|
102
104
|
title));
|
|
105
|
+
}, [handleClickItem]);
|
|
106
|
+
if (type === "removePlots") {
|
|
107
|
+
return (React.createElement("div", { className: "local-menu" },
|
|
108
|
+
React.createElement(Menu, { id: "simple-menu", anchorEl: anchorEl, keepMounted: true, open: Boolean(anchorEl), onClose: handleCloseMenu, onContextMenu: handleContextMenu }, menuRemovePlotItems())));
|
|
103
109
|
}
|
|
104
|
-
|
|
105
|
-
if (this.props.type === "removePlots") {
|
|
106
|
-
return (React.createElement("div", { className: "local-menu" },
|
|
107
|
-
React.createElement(Menu, { id: "simple-menu", anchorEl: this.state.anchorEl, keepMounted: true, open: Boolean(this.state.anchorEl), onClose: this.handleCloseMenu.bind(this), onContextMenu: this.handleContextMenu.bind(this) }, this.menuRemovePlotItems())));
|
|
108
|
-
}
|
|
109
|
-
if (this.props.type === "editPlots") {
|
|
110
|
-
return (React.createElement("div", { className: "local-menu" },
|
|
111
|
-
React.createElement(Menu, { id: "simple-menu", anchorEl: this.state.anchorEl, keepMounted: true, open: Boolean(this.state.anchorEl), onClose: this.handleCloseMenu.bind(this), onContextMenu: this.handleContextMenu.bind(this) }, this.menuEditPlotItems())));
|
|
112
|
-
}
|
|
113
|
-
if (this.props.type === "title") {
|
|
114
|
-
return (React.createElement("div", { className: "local-menu" },
|
|
115
|
-
React.createElement(Menu, { id: "simple-menu", anchorEl: this.state.anchorEl, open: Boolean(this.state.anchorEl), onClose: this.handleCloseMenu.bind(this), onContextMenu: this.handleContextMenu.bind(this) },
|
|
116
|
-
this.createMenuItem("Add track", this.addTrack),
|
|
117
|
-
this.createMenuItem("Edit track", this.editTrack),
|
|
118
|
-
this.createMenuItem("Remove track", this.removeTrack))));
|
|
119
|
-
}
|
|
120
|
-
// For this.props.type === "legends" or this.props.type === "container"
|
|
121
|
-
const track = this.props.track;
|
|
122
|
-
const plots = track.plots;
|
|
123
|
-
const createMenuItem = (track) => {
|
|
124
|
-
if (track.options.plotFactory) {
|
|
125
|
-
return [this.createMenuItem("Add plot", this.addPlot)];
|
|
126
|
-
}
|
|
127
|
-
else if (!isScaleTrack(track)) {
|
|
128
|
-
return [this.createMenuItem("Edit track", this.editTrack)];
|
|
129
|
-
}
|
|
130
|
-
return [];
|
|
131
|
-
};
|
|
110
|
+
if (type === "editPlots") {
|
|
132
111
|
return (React.createElement("div", { className: "local-menu" },
|
|
133
|
-
React.createElement(Menu, { id: "simple-menu", anchorEl:
|
|
134
|
-
createMenuItem(track),
|
|
135
|
-
plots && plots.length
|
|
136
|
-
? [
|
|
137
|
-
this.createMenuItem("Edit plot", this.editPlots),
|
|
138
|
-
this.createMenuItem("Remove plot", this.removePlots),
|
|
139
|
-
]
|
|
140
|
-
: [])));
|
|
112
|
+
React.createElement(Menu, { id: "simple-menu", anchorEl: anchorEl, keepMounted: true, open: Boolean(anchorEl), onClose: handleCloseMenu, onContextMenu: handleContextMenu }, menuEditPlotItems())));
|
|
141
113
|
}
|
|
142
|
-
|
|
143
|
-
|
|
114
|
+
if (type === "title") {
|
|
115
|
+
return (React.createElement("div", { className: "local-menu" },
|
|
116
|
+
React.createElement(Menu, { id: "simple-menu", anchorEl: anchorEl, open: Boolean(anchorEl), onClose: handleCloseMenu, onContextMenu: handleContextMenu },
|
|
117
|
+
createMenuItem("Add track", addTrack),
|
|
118
|
+
createMenuItem("Edit track", editTrack),
|
|
119
|
+
createMenuItem("Remove track", removeTrack))));
|
|
120
|
+
}
|
|
121
|
+
// For type === "legends" or type === "container"
|
|
122
|
+
const plots = track.plots;
|
|
123
|
+
const createMenuItemForTrack = (track) => {
|
|
124
|
+
if (track.options.plotFactory) {
|
|
125
|
+
return [createMenuItem("Add plot", addPlot)];
|
|
126
|
+
}
|
|
127
|
+
else if (!isScaleTrack(track)) {
|
|
128
|
+
return [createMenuItem("Edit track", editTrack)];
|
|
129
|
+
}
|
|
130
|
+
return [];
|
|
131
|
+
};
|
|
132
|
+
return (React.createElement("div", { className: "local-menu" },
|
|
133
|
+
React.createElement(Menu, { id: "simple-menu", anchorEl: anchorEl, keepMounted: true, open: Boolean(anchorEl), onClose: handleCloseMenu, onContextMenu: handleContextMenu },
|
|
134
|
+
createMenuItemForTrack(track),
|
|
135
|
+
plots && plots.length
|
|
136
|
+
? [
|
|
137
|
+
createMenuItem("Edit plot", editPlots),
|
|
138
|
+
createMenuItem("Remove plot", removePlots),
|
|
139
|
+
]
|
|
140
|
+
: [])));
|
|
141
|
+
};
|
|
142
|
+
export function editPlotsFunctionHelper(parent, wellLogView, track) {
|
|
144
143
|
const plots = track.plots;
|
|
145
144
|
if (plots && plots.length <= 1) {
|
|
146
145
|
if (plots.length === 1)
|
|
@@ -154,7 +153,7 @@ export function editPlots(parent, wellLogView, track) {
|
|
|
154
153
|
parent.appendChild(el);
|
|
155
154
|
createRoot(el).render(React.createElement(SimpleMenu, { type: "editPlots", anchorEl: el, wellLogView: wellLogView, track: track }));
|
|
156
155
|
}
|
|
157
|
-
export function
|
|
156
|
+
export function removePlotsFunctionHelper(parent, wellLogView, track) {
|
|
158
157
|
const plots = track.plots;
|
|
159
158
|
if (plots && plots.length <= 1) {
|
|
160
159
|
if (plots.length === 1)
|
|
@@ -168,4 +167,7 @@ export function removePlots(parent, wellLogView, track) {
|
|
|
168
167
|
parent.appendChild(el);
|
|
169
168
|
createRoot(el).render(React.createElement(SimpleMenu, { type: "removePlots", anchorEl: el, wellLogView: wellLogView, track: track }));
|
|
170
169
|
}
|
|
170
|
+
// Legacy function names for backward compatibility
|
|
171
|
+
export const editPlots = editPlotsFunctionHelper;
|
|
172
|
+
export const removePlots = removePlotsFunctionHelper;
|
|
171
173
|
//# sourceMappingURL=LocalMenus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalMenus.js","sourceRoot":"","sources":["../../src/components/LocalMenus.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"LocalMenus.js","sourceRoot":"","sources":["../../src/components/LocalMenus.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
-
import
|
|
2
|
+
import React from "react";
|
|
3
3
|
export interface ScrollerProps {
|
|
4
4
|
/**
|
|
5
5
|
* callback with new scroll positions
|
|
@@ -7,33 +7,12 @@ export interface ScrollerProps {
|
|
|
7
7
|
onScroll?: (x: number, y: number) => void;
|
|
8
8
|
children?: ReactNode;
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
scroller: HTMLDivElement | null;
|
|
12
|
-
scrollable: HTMLDivElement | null;
|
|
13
|
-
content: HTMLDivElement | null;
|
|
14
|
-
resizeObserver: ResizeObserver;
|
|
15
|
-
constructor(props: ScrollerProps);
|
|
16
|
-
componentDidMount(): void;
|
|
17
|
-
componentWillUnmount(): void;
|
|
10
|
+
export interface ScrollerRef {
|
|
18
11
|
getScrollX(): number;
|
|
19
12
|
getScrollY(): number;
|
|
20
13
|
getScrollPos(vertical: boolean | undefined): number;
|
|
21
|
-
/**
|
|
22
|
-
* callback from HTML element
|
|
23
|
-
*/
|
|
24
|
-
onScroll(): void;
|
|
25
|
-
/**
|
|
26
|
-
* @param x value to set the horizontal beginning of visible part of content (fraction)
|
|
27
|
-
* @param y value to set the vertical beginning of visible part of content (fraction)
|
|
28
|
-
* @returns true if visible part is changed
|
|
29
|
-
*/
|
|
30
14
|
scrollTo(x: number, y: number): boolean;
|
|
31
|
-
/**
|
|
32
|
-
* @param xZoom set X zoom factor of visible part of content
|
|
33
|
-
* @param yZoom set Y zoom factor of visible part of content
|
|
34
|
-
* @returns true if visible part is changed
|
|
35
|
-
*/
|
|
36
15
|
zoom(xZoom: number, yZoom: number): boolean;
|
|
37
|
-
render(): JSX.Element;
|
|
38
16
|
}
|
|
17
|
+
declare const Scroller: React.ForwardRefExoticComponent<ScrollerProps & React.RefAttributes<ScrollerRef>>;
|
|
39
18
|
export default Scroller;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, { useRef, useEffect, useCallback, useImperativeHandle, forwardRef, } from "react";
|
|
2
2
|
function getScrollbarSizes() {
|
|
3
3
|
// Creating invisible container
|
|
4
4
|
const outer = document.createElement("div");
|
|
@@ -13,72 +13,75 @@ function getScrollbarSizes() {
|
|
|
13
13
|
document.body.removeChild(outer);
|
|
14
14
|
return { vertical, horizontal };
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
16
|
+
const Scroller = forwardRef(({ onScroll, children }, ref) => {
|
|
17
|
+
const scrollerRef = useRef(null);
|
|
18
|
+
const scrollableRef = useRef(null);
|
|
19
|
+
const contentRef = useRef(null);
|
|
20
|
+
const resizeObserverRef = useRef(null);
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
if (!resizeObserverRef.current) {
|
|
23
|
+
resizeObserverRef.current = new ResizeObserver((entries) => {
|
|
24
|
+
const entry = entries[0];
|
|
25
|
+
if (entry && entry.target) {
|
|
26
|
+
const Width = entry.target
|
|
27
|
+
.offsetWidth;
|
|
28
|
+
const Height = entry.target
|
|
29
|
+
.offsetHeight;
|
|
30
|
+
if (contentRef.current) {
|
|
31
|
+
const { vertical, horizontal } = getScrollbarSizes();
|
|
32
|
+
contentRef.current.style.width =
|
|
33
|
+
Width - vertical + "px";
|
|
34
|
+
contentRef.current.style.height =
|
|
35
|
+
Height - horizontal + "px";
|
|
36
|
+
}
|
|
31
37
|
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
const scrollerElem = scrollerRef.current;
|
|
41
|
+
if (scrollerElem && resizeObserverRef.current) {
|
|
42
|
+
resizeObserverRef.current.observe(scrollerElem);
|
|
43
|
+
}
|
|
44
|
+
return () => {
|
|
45
|
+
if (scrollerElem && resizeObserverRef.current) {
|
|
46
|
+
resizeObserverRef.current.unobserve(scrollerElem);
|
|
32
47
|
}
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
componentDidMount() {
|
|
37
|
-
if (this.scroller)
|
|
38
|
-
this.resizeObserver.observe(this.scroller);
|
|
39
|
-
}
|
|
40
|
-
componentWillUnmount() {
|
|
41
|
-
if (this.scroller)
|
|
42
|
-
this.resizeObserver.unobserve(this.scroller);
|
|
43
|
-
}
|
|
48
|
+
};
|
|
49
|
+
}, []);
|
|
44
50
|
/* current position access functions */
|
|
45
|
-
getScrollX() {
|
|
46
|
-
const elOuter =
|
|
51
|
+
const getScrollX = useCallback(() => {
|
|
52
|
+
const elOuter = scrollerRef.current;
|
|
47
53
|
if (!elOuter)
|
|
48
54
|
return 0;
|
|
49
55
|
const scrollWidth = elOuter.scrollWidth - elOuter.clientWidth;
|
|
50
56
|
return scrollWidth ? elOuter.scrollLeft / scrollWidth : 0;
|
|
51
|
-
}
|
|
52
|
-
getScrollY() {
|
|
53
|
-
const elOuter =
|
|
57
|
+
}, []);
|
|
58
|
+
const getScrollY = useCallback(() => {
|
|
59
|
+
const elOuter = scrollerRef.current;
|
|
54
60
|
if (!elOuter)
|
|
55
61
|
return 0;
|
|
56
62
|
const scrollHeight = elOuter.scrollHeight - elOuter.clientHeight;
|
|
57
63
|
return scrollHeight ? elOuter.scrollTop / scrollHeight : 0;
|
|
58
|
-
}
|
|
59
|
-
getScrollPos(vertical) {
|
|
60
|
-
return vertical ?
|
|
61
|
-
}
|
|
64
|
+
}, []);
|
|
65
|
+
const getScrollPos = useCallback((vertical) => {
|
|
66
|
+
return vertical ? getScrollY() : getScrollX();
|
|
67
|
+
}, [getScrollX, getScrollY]);
|
|
62
68
|
/**
|
|
63
69
|
* callback from HTML element
|
|
64
70
|
*/
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const elOuter = this.scroller;
|
|
71
|
+
const handleScroll = useCallback(() => {
|
|
72
|
+
const elOuter = scrollerRef.current;
|
|
68
73
|
if (!elOuter)
|
|
69
74
|
return;
|
|
70
75
|
// notify parent
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
(_b = (_a = this.props).onScroll) === null || _b === void 0 ? void 0 : _b.call(_a, this.getScrollX(), this.getScrollY());
|
|
74
|
-
}
|
|
76
|
+
onScroll === null || onScroll === void 0 ? void 0 : onScroll(getScrollX(), getScrollY());
|
|
77
|
+
}, [onScroll, getScrollX, getScrollY]);
|
|
75
78
|
/* functions to externally set zoom and scroll position */
|
|
76
79
|
/**
|
|
77
80
|
* @param x value to set the horizontal beginning of visible part of content (fraction)
|
|
78
81
|
* @param y value to set the vertical beginning of visible part of content (fraction)
|
|
79
82
|
* @returns true if visible part is changed
|
|
80
83
|
*/
|
|
81
|
-
scrollTo(x, y) {
|
|
84
|
+
const scrollTo = useCallback((x, y) => {
|
|
82
85
|
if (x < 0.0)
|
|
83
86
|
x = 0.0;
|
|
84
87
|
else if (x > 1.0)
|
|
@@ -87,7 +90,7 @@ class Scroller extends Component {
|
|
|
87
90
|
y = 0.0;
|
|
88
91
|
else if (y > 1.0)
|
|
89
92
|
y = 1.0;
|
|
90
|
-
const elOuter =
|
|
93
|
+
const elOuter = scrollerRef.current;
|
|
91
94
|
if (!elOuter)
|
|
92
95
|
return false;
|
|
93
96
|
const scrollLeft = Math.round(x * (elOuter.scrollWidth - elOuter.clientWidth));
|
|
@@ -98,17 +101,17 @@ class Scroller extends Component {
|
|
|
98
101
|
return true;
|
|
99
102
|
}
|
|
100
103
|
return false;
|
|
101
|
-
}
|
|
104
|
+
}, []);
|
|
102
105
|
/**
|
|
103
106
|
* @param xZoom set X zoom factor of visible part of content
|
|
104
107
|
* @param yZoom set Y zoom factor of visible part of content
|
|
105
108
|
* @returns true if visible part is changed
|
|
106
109
|
*/
|
|
107
|
-
zoom(xZoom, yZoom) {
|
|
108
|
-
const elOuter =
|
|
110
|
+
const zoom = useCallback((xZoom, yZoom) => {
|
|
111
|
+
const elOuter = scrollerRef.current;
|
|
109
112
|
if (!elOuter)
|
|
110
113
|
return false;
|
|
111
|
-
const elInner =
|
|
114
|
+
const elInner = scrollableRef.current;
|
|
112
115
|
if (!elInner)
|
|
113
116
|
return false;
|
|
114
117
|
const widthInner = Math.round(elOuter.clientWidth * xZoom) + "px";
|
|
@@ -120,12 +123,18 @@ class Scroller extends Component {
|
|
|
120
123
|
return true;
|
|
121
124
|
}
|
|
122
125
|
return false;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
126
|
+
}, []);
|
|
127
|
+
useImperativeHandle(ref, () => ({
|
|
128
|
+
getScrollX,
|
|
129
|
+
getScrollY,
|
|
130
|
+
getScrollPos,
|
|
131
|
+
scrollTo,
|
|
132
|
+
zoom,
|
|
133
|
+
}), [getScrollX, getScrollY, getScrollPos, scrollTo, zoom]);
|
|
134
|
+
return (React.createElement("div", { ref: scrollerRef, style: { overflow: "scroll", width: "100%", height: "100%" }, onScroll: handleScroll },
|
|
135
|
+
React.createElement("div", { ref: scrollableRef },
|
|
136
|
+
React.createElement("div", { ref: contentRef, style: { position: "absolute" } }, children))));
|
|
137
|
+
});
|
|
138
|
+
Scroller.displayName = "Scroller";
|
|
130
139
|
export default Scroller;
|
|
131
140
|
//# sourceMappingURL=Scroller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scroller.js","sourceRoot":"","sources":["../../src/components/Scroller.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"Scroller.js","sourceRoot":"","sources":["../../src/components/Scroller.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WellLogAxesPanel.js","sourceRoot":"","sources":["../../src/components/WellLogAxesPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzC,OAAO,YAAY,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"WellLogAxesPanel.js","sourceRoot":"","sources":["../../src/components/WellLogAxesPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from "react";
|
|
2
2
|
import type { CallbackManager } from "./CallbackManager";
|
|
3
3
|
interface Props {
|
|
4
4
|
callbackManager: CallbackManager | undefined;
|
|
@@ -6,18 +6,5 @@ interface Props {
|
|
|
6
6
|
values?: number[];
|
|
7
7
|
round?: boolean | number;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
value: number;
|
|
11
|
-
}
|
|
12
|
-
export declare class WellLogScaleSelector extends Component<Props, State> {
|
|
13
|
-
constructor(props: Props);
|
|
14
|
-
registerCallbacks(callbackManager: CallbackManager | undefined): void;
|
|
15
|
-
unregisterCallbacks(callbackManager: CallbackManager | undefined): void;
|
|
16
|
-
componentDidMount(): void;
|
|
17
|
-
componentWillUnmount(): void;
|
|
18
|
-
componentDidUpdate(prevProps: Props): void;
|
|
19
|
-
onChange(value: number): void;
|
|
20
|
-
onContentRescale(): void;
|
|
21
|
-
render(): JSX.Element;
|
|
22
|
-
}
|
|
9
|
+
export declare const WellLogScaleSelector: React.FC<Props>;
|
|
23
10
|
export default WellLogScaleSelector;
|