aboutsummaryrefslogtreecommitdiff
path: root/src/components/Window/WindowSurface
diff options
context:
space:
mode:
authorEug-VS <eug-vs@keemail.me>2020-01-09 09:33:37 +0300
committerEug-VS <eug-vs@keemail.me>2020-01-09 10:29:52 +0300
commit90f3eaa26b31d5f966bc3b8ece016b783f00ae2b (patch)
tree4bde9b8121704047a3d1dc00842f99d7026f6852 /src/components/Window/WindowSurface
parent142ef97911abaec96c5bc0779b322374437a56b5 (diff)
downloadchrono-cube-ui-90f3eaa26b31d5f966bc3b8ece016b783f00ae2b.tar.gz
Implement Window component
Divide Window into three types: - primary: larger left window - secondary: smaller right window - mono: both primary and secondary merged together For now, Window sizes are hard-coded values in viewport widht and height measurements. If a name prop specified, Window is displayed with a top bar.
Diffstat (limited to 'src/components/Window/WindowSurface')
-rw-r--r--src/components/Window/WindowSurface/WindowSurface.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/components/Window/WindowSurface/WindowSurface.js b/src/components/Window/WindowSurface/WindowSurface.js
new file mode 100644
index 0000000..d1d1510
--- /dev/null
+++ b/src/components/Window/WindowSurface/WindowSurface.js
@@ -0,0 +1,31 @@
+import React from 'react';
+
+import { Paper, makeStyles } from "@material-ui/core";
+
+
+const useStyles = makeStyles(theme => ({
+ surface: {
+ position: 'absolute',
+ display: 'flex',
+ flexDirection: 'column',
+ background: theme.palette.background.elevation,
+ }
+}));
+
+
+const WindowSurface = ({ size, position, children }) => {
+ const classes = useStyles();
+
+ return (
+ <Paper
+ elevation={3}
+ style={{...size, ...position}}
+ className={classes.surface}
+ >
+ {children}
+ </Paper>
+ )
+};
+
+
+export default WindowSurface; \ No newline at end of file