Skip to content

Commit faa5cc8

Browse files
committed
Add dropdown demo
1 parent 2e03739 commit faa5cc8

2 files changed

Lines changed: 95 additions & 11 deletions

File tree

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
<!doctype html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>&lt;vscode-button-group&gt; Demo</title>
7+
<link
8+
rel="stylesheet"
9+
href="/node_modules/@vscode/codicons/dist/codicon.css"
10+
id="vscode-codicon-stylesheet"
11+
>
12+
<script
13+
type="module"
14+
src="/node_modules/@vscode-elements/webview-playground/dist/index.js"
15+
></script>
16+
<script type="module" src="/dist/main.js"></script>
17+
<style>
18+
.dropdown-menu {
19+
display: inline-block;
20+
position: relative;
21+
}
22+
23+
.dropdown-menu vscode-context-menu {
24+
left: 100%;
25+
margin-left: -26px;
26+
margin-top: 1px;
27+
position: absolute;
28+
top: 100%;
29+
}
30+
</style>
31+
</head>
32+
33+
<body class="vscode-light">
34+
<main>
35+
<h2>Basic example</h2>
36+
37+
<vscode-demo>
38+
<div class="dropdown-menu">
39+
<vscode-button-group>
40+
<vscode-button secondary id="button-1" icon="check">Hello World</vscode-button>
41+
<vscode-button
42+
secondary
43+
icon="chevron-down"
44+
id="toggle-menu-button"
45+
></vscode-button>
46+
</vscode-button-group>
47+
<vscode-context-menu
48+
id="context-menu"
49+
class="context-menu"
50+
></vscode-context-menu>
51+
</div>
52+
<script type="module">
53+
document.addEventListener('DOMContentLoaded', () => {
54+
const menu = document.querySelector('#context-menu');
55+
const button = document.querySelector('#toggle-menu-button');
56+
57+
menu.data = [
58+
{
59+
label: 'Command palette...',
60+
keybinding: 'Ctrl+Shift+A',
61+
value: 'menuitem1',
62+
},
63+
{
64+
separator: true,
65+
},
66+
{
67+
label: 'Settings',
68+
keybinding: 'Ctrl+Comma',
69+
value: 'menuitem2',
70+
},
71+
{
72+
label: 'Extensions',
73+
keybinding: 'Ctrl+Shift+X',
74+
value: 'menuitem3',
75+
},
76+
];
77+
78+
button.addEventListener('click', () => {
79+
console.log(menu.show);
80+
menu.show = !menu.show;
81+
});
82+
83+
menu.addEventListener('vsc-select', (event) => {
84+
console.log(event);
85+
});
86+
});
87+
88+
button.addEventListener('click', () => {
89+
menu.show = !menu.show;
90+
});
91+
</script>
92+
</vscode-demo>
93+
</main>
94+
</body>
95+
</html>

dev/vscode-button-group/vscode-button-group.html

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,17 +54,6 @@
5454
<h2>Basic example</h2>
5555

5656
<vscode-demo>
57-
<p>
58-
<vscode-button-group>
59-
<vscode-button secondary id="button-1">Hello World</vscode-button>
60-
<vscode-button
61-
secondary
62-
icon="chevron-down"
63-
id="button-2"
64-
></vscode-button>
65-
</vscode-button-group>
66-
</p>
67-
6857
<p>
6958
<vscode-button-group>
7059
<vscode-button secondary>Left</vscode-button>

0 commit comments

Comments
 (0)