13
13
1 . [ Context Menu] ( #context-menu )
14
14
1 . [ Custom Log Console] ( #custom-log-console )
15
15
1 . [ Datagrid] ( #datagrid )
16
- 1 . [ Dual Compatibility Shout Button] ( #dual-compatibility-shout-button )
16
+ 1 . [ Dual Compatibility] ( #dual-compatibility )
17
+ 1 . [ Top Area Text Widget] ( #top-area-text-widget )
18
+ 1 . [ Shout Button] ( #shout-button )
19
+ 1 . [ Clap Button] ( #clap-button-message )
17
20
1 . [ Collaborative Document] ( #collaborative-document )
18
21
1 . _ [ Hello World] ( #hello-world ) _
19
22
1 . [ Kernel Messaging] ( #kernel-messaging )
30
33
1 . [ Signals] ( #signals )
31
34
1 . [ State] ( #state )
32
35
1 . [ Toolbar Item] ( #toolbar-item )
33
- 1 . [ Top Area Text Widget] ( #top-area-text-widget )
34
36
1 . [ Widgets] ( #widgets )
35
37
1 . [ Prerequisites] ( #prerequisites )
36
38
1 . [ Develop and Use the Examples] ( #develop-and-use-the-examples )
@@ -102,7 +104,10 @@ Start with the [Hello World](hello-world) and then jump to the topic you are int
102
104
- [ Context Menu] ( context-menu )
103
105
- [ Custom Log Console] ( custom-log-console )
104
106
- [ Datagrid] ( datagrid )
105
- - [ Dual Compatibility Shout Button] ( shout-button-message )
107
+ - Dual Compatibility
108
+ - [ Top Area Text Widget] ( toparea-text-widget )
109
+ - [ Shout Button] ( shout-button-message )
110
+ - [ Clap Button] ( clap-button-message )
106
111
- [ Collaborative Document] ( documents )
107
112
- [ Hello World] ( hello-world )
108
113
- [ Kernel Messaging] ( kernel-messaging )
@@ -119,7 +124,6 @@ Start with the [Hello World](hello-world) and then jump to the topic you are int
119
124
- [ Signals] ( signals )
120
125
- [ State] ( state )
121
126
- [ Toolbar item] ( toolbar-button )
122
- - [ Top Area Text Widget] ( toparea-text-widget )
123
127
- [ Widgets] ( widgets )
124
128
125
129
You can expect from each example:
@@ -181,7 +185,26 @@ Display a Datagrid as a Lumino Widget.
181
185
182
186
[ ![ Datagrid] ( datagrid/preview.png )] ( datagrid )
183
187
184
- ### [ Dual Compatibility Shout Button] ( shout-button-message )
188
+ ### Dual Compatibility
189
+
190
+ The dual compatibility examples demonstrates how to design an extension that can be
191
+ integrated similtaneously in JupyterLab and Jupyter Notebook v7+.
192
+
193
+ They are listed from the simplest to the most advanced case:
194
+
195
+ - [ Top Area Text Widget] ( #top-area-text-widget ) : Example working right away in both frontends.
196
+ - [ Shout Button] ( #shout-button ) : Example with a part only available in JupyterLab
197
+ - [ Clap Button] ( #clap-button-message ) : Example with elements added differently depending on
198
+ the frontends used.
199
+
200
+ #### [ Top Area Text Widget] ( toparea-text-widget )
201
+
202
+ A very simple example that adds a basic text widget to the top area. See [ related video.] ( https://www.youtube.com/watch?v=mqotG1MkHa4 ) .
203
+ This example is part of the [ Extension Dual Compatibility Guide] ( https://jupyterlab.readthedocs.io/en/latest/extension_dual_compatibility.html ) .
204
+
205
+ [ ![ Top Area Text Widget] ( toparea-text-widget/preview.jpg )] ( toparea-text-widget )
206
+
207
+ #### [ Shout Button] ( shout-button-message )
185
208
186
209
This example shows dual compatibility: Make an extension that is compatible
187
210
with both JupyterLab and Jupyter Notebook by using optional features. Adds
@@ -191,6 +214,17 @@ Read more about this example on that page.
191
214
192
215
[ ![ Dual compatibility shout button] ( shout-button-message/preview.jpg )] ( shout-button-message )
193
216
217
+ #### [ Clap Button] ( clap-button-message )
218
+
219
+ This example shows an alternate method for achieving dual compatibility: Make an
220
+ extension that is compatible with both JupyterLab and Jupyter Notebook by exporting
221
+ multiple plugins and using "required" features to select different behaviors. Adds a clap button to
222
+ the top area (in JupyterLab) or the right sidebar (Jupyter Notebook). This example is part
223
+ of the [ Extension Dual Compatibility Guide] ( https://jupyterlab.readthedocs.io/en/latest/extension_dual_compatibility.html ) .
224
+ Read more about this example on that page.
225
+
226
+ [ ![ Dual Compatibility Clap Button] ( clap-button-message/preview.jpg )] ( clap-button-message )
227
+
194
228
### [ Collaborative Document] ( documents )
195
229
196
230
Create new documents and make them collaborative.
@@ -287,13 +321,6 @@ Add a new button to the notebook toolbar.
287
321
288
322
[ ![ Toolbar button] ( toolbar-button/preview.gif )] ( toolbar-button )
289
323
290
- ### [ Top Area Text Widget] ( toparea-text-widget )
291
-
292
- A very simple example that adds a basic text widget to the top area. See [ related video.] ( https://www.youtube.com/watch?v=mqotG1MkHa4 ) .
293
- This example is part of the [ Extension Dual Compatibility Guide] ( https://jupyterlab.readthedocs.io/en/latest/extension_dual_compatibility.html ) .
294
-
295
- [ ![ Top Area Text Widget] ( toparea-text-widget/preview.jpg )] ( toparea-text-widget )
296
-
297
324
### [ Widgets] ( widgets )
298
325
299
326
Add a new Widget element to the main window.
0 commit comments