Skip to content

Commit ec86e8a

Browse files
committed
Added resizable/scrollable demo
1 parent 29c6d77 commit ec86e8a

File tree

3 files changed

+71
-0
lines changed

3 files changed

+71
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
.scrollable-resizable {
2+
.left-pane {
3+
.spaces-resize-handle {
4+
background-color: red;
5+
opacity: 0.5;
6+
}
7+
}
8+
}
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
import * as React from 'react';
2+
import * as Space from 'react-spaces';
3+
import './ResizableScrollable.scss';
4+
5+
class TestComponent extends React.Component<{}> {
6+
constructor(props: {}) {
7+
super(props);
8+
console.log("created");
9+
}
10+
11+
public render() {
12+
console.log("rendered");
13+
return (
14+
<>
15+
Lorem ipsum dolor sit, amet consectetur adipisicing elit. Hic, quo. Repudiandae hic
16+
placeat id beatae sint. Veritatis odio facere excepturi ducimus dicta ab ullam qui
17+
illo labore voluptate, vel provident sed quod perspiciatis odit expedita rem
18+
raesentium vitae libero laudantium corporis nulla quam ad? Illo, eos quas quaerat
19+
nde ducimus quos consequatur blanditiis odit excepturi dolorum repellendus animi
20+
reprehenderit esse facere et maiores cumque! Eaque ratione, nostrum cum cumque,
21+
doloremque ab voluptates reiciendis amet obcaecati aut dolores nobis cupiditate, ullam
22+
nesciunt nisi explicabo nihil repellendus quidem eos expedita. Eligendi facilis ducimus
23+
distinctio voluptatum quas officiis accusantium consequuntur necessitatibus culpa cumque.
24+
</>
25+
)
26+
}
27+
}
28+
29+
export const ResizableScrollable = () => {
30+
const [ resizable, setResizable ] = React.useState(false);
31+
32+
return (
33+
<Space.Fill className="scrollable-resizable">
34+
<Space.Custom resizable={resizable} className="left-pane" anchorSize={200} anchor={Space.AnchorType.Left} style={{ fontSize: 30 }}>
35+
<Space.Fill scrollable={true}>
36+
<button onClick={() => setResizable(!resizable)}>Change resizable</button>
37+
<TestComponent />
38+
</Space.Fill>
39+
</Space.Custom>
40+
<Space.Fill style={{ fontSize: 30 }}>
41+
Lorem ipsum dolor sit, amet consectetur adipisicing elit. Hic, quo. Repudiandae hic
42+
placeat id beatae sint. Veritatis odio facere excepturi ducimus dicta ab ullam qui
43+
illo labore voluptate, vel provident sed quod perspiciatis odit expedita rem
44+
raesentium vitae libero laudantium corporis nulla quam ad? Illo, eos quas quaerat
45+
nde ducimus quos consequatur blanditiis odit excepturi dolorum repellendus animi
46+
reprehenderit esse facere et maiores cumque! Eaque ratione, nostrum cum cumque,
47+
doloremque ab voluptates reiciendis amet obcaecati aut dolores nobis cupiditate, ullam
48+
nesciunt nisi explicabo nihil repellendus quidem eos expedita. Eligendi facilis ducimus
49+
distinctio voluptatum quas officiis accusantium consequuntur necessitatibus culpa cumque.
50+
</Space.Fill>
51+
</Space.Fill>
52+
)
53+
}

demo/src/ui-demo/UI.tsx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import 'antd/dist/antd.css';
44
import './UI.scss';
55
import { CodeEditor } from './CodeEditor';
66
import { Resizable } from './Resizable';
7+
import { ResizableScrollable } from './ResizableScrollable';
78
import { ScrollableDemo } from './Scrollable';
89
import { LayersDemo } from './Layers';
910
import { WindowsDemo } from './Windows';
@@ -49,6 +50,14 @@ const DemoSelection = (props: {
4950
</span>
5051
</a>
5152
</li>
53+
<li className={props.selectedDemo === "resizablescrollable" ? "active" : undefined}>
54+
<a onClick={() => props.setSelectedDemo("resizablescrollable")}>
55+
Resizable / Scrollable
56+
<span>
57+
Resizable and scrollable spaces
58+
</span>
59+
</a>
60+
</li>
5261
<li className={props.selectedDemo === "scrollable" ? "active" : undefined}>
5362
<a onClick={() => props.setSelectedDemo("scrollable")}>
5463
Sidebar / header layout
@@ -127,6 +136,7 @@ const Main = (props: { selectedDemo: string, showSpaces: boolean }) => {
127136
return (
128137
<Space.Fill>
129138
{ props.selectedDemo === "resizable" ? <Resizable /> : null }
139+
{ props.selectedDemo === "resizablescrollable" ? <ResizableScrollable /> : null }
130140
{ props.selectedDemo === "scrollable" ? <ScrollableDemo /> : null }
131141
{ props.selectedDemo === "layers" ? <LayersDemo /> : null }
132142
{ props.selectedDemo === "windows" ? <WindowsDemo /> : null }

0 commit comments

Comments
 (0)