@@ -298,6 +298,47 @@ export class WidgetManager extends ManagerBase {
298
298
'save-clear-widgets' ,
299
299
'widgets'
300
300
) ;
301
+
302
+ this . extraMimeWidgetsAction = {
303
+ handler : async ( ) => {
304
+ const models = this . get_models_sync ( ) ;
305
+ for ( var result of findViewsAndOutputs ( Jupyter . notebook , models ) ) {
306
+ var bundle = await result . view . generateMimeBundleExtra ( ) ;
307
+ console . log ( result . view , bundle ) ;
308
+ _ . extend ( result . output . data , bundle ) ;
309
+ }
310
+ Jupyter . menubar . actions . get ( 'jupyter-notebook:save-notebook' ) . handler ( {
311
+ notebook : Jupyter . notebook
312
+ } ) ;
313
+ } ,
314
+ help : 'Add extra mime bundles to output cells'
315
+ } ;
316
+ Jupyter . menubar . actions . register (
317
+ this . saveWidgetsAction ,
318
+ 'mime-extra-widgets' ,
319
+ 'widgets'
320
+ ) ;
321
+
322
+ this . clearMimeWidgetsAction = {
323
+ handler : async ( ) => {
324
+ const models = this . get_models_sync ( ) ;
325
+ for ( var result of findViewsAndOutputs ( Jupyter . notebook , models ) ) {
326
+ result . output . data = _ . pick ( result . output . data , [
327
+ MIME_TYPE ,
328
+ 'text/plain'
329
+ ] ) ;
330
+ }
331
+ Jupyter . menubar . actions . get ( 'jupyter-notebook:save-notebook' ) . handler ( {
332
+ notebook : Jupyter . notebook
333
+ } ) ;
334
+ } ,
335
+ help : 'Remove extra mime bundles from output cells'
336
+ } ;
337
+ Jupyter . menubar . actions . register (
338
+ this . saveWidgetsAction ,
339
+ 'mime-clear-widgets' ,
340
+ 'widgets'
341
+ ) ;
301
342
}
302
343
303
344
/**
@@ -324,6 +365,8 @@ export class WidgetManager extends ManagerBase {
324
365
325
366
var divider = document . createElement ( 'ul' ) ;
326
367
divider . classList . add ( 'divider' ) ;
368
+ var divider2 = document . createElement ( 'ul' ) ;
369
+ divider2 . classList . add ( 'divider' ) ;
327
370
328
371
widgetsSubmenu . appendChild (
329
372
this . _createMenuItem ( 'Save Notebook Widget State' , this . saveWidgetsAction )
@@ -341,6 +384,19 @@ export class WidgetManager extends ManagerBase {
341
384
widgetsSubmenu . appendChild (
342
385
this . _createMenuItem ( 'Embed Widgets' , embedWidgets . action )
343
386
) ;
387
+ widgetsSubmenu . appendChild ( divider2 ) ;
388
+ widgetsSubmenu . appendChild (
389
+ this . _createMenuItem (
390
+ 'Add extra to output cell mime bundle' ,
391
+ this . extraMimeWidgetsAction
392
+ )
393
+ ) ;
394
+ widgetsSubmenu . appendChild (
395
+ this . _createMenuItem (
396
+ 'Clear extras mime bundle' ,
397
+ this . clearMimeWidgetsAction
398
+ )
399
+ ) ;
344
400
}
345
401
346
402
/**
0 commit comments