本文整理汇总了TypeScript中@jupyterlab/notebook.INotebookTracker类的典型用法代码示例。如果您正苦于以下问题:TypeScript INotebookTracker类的具体用法?TypeScript INotebookTracker怎么用?TypeScript INotebookTracker使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了INotebookTracker类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: activateWidgetExtension
/**
* Activate the widget extension.
*/
function activateWidgetExtension(app: JupyterFrontEnd, tracker: INotebookTracker, rendermime: IRenderMimeRegistry, settingRegistry: ISettingRegistry, menu: IMainMenu | null): base.IJupyterWidgetRegistry {
const {commands} = app;
settingRegistry.load(plugin.id).then((settings: ISettingRegistry.ISettings) => {
settings.changed.connect(updateSettings);
updateSettings(settings);
}).catch((reason: Error) => {
console.error(reason.message);
});
// Add a placeholder widget renderer.
rendermime.addFactory(
{
safe: false,
mimeTypes: [WIDGET_VIEW_MIMETYPE],
createRenderer: options => new WidgetRenderer(options)
},
0
);
tracker.forEach(panel => {
registerWidgetManager(
panel.context,
panel.content.rendermime,
chain(
widgetRenderers(panel.content),
outputViews(app, panel.context.path)
)
);
});
tracker.widgetAdded.connect((sender, panel) => {
registerWidgetManager(
panel.context,
panel.content.rendermime,
chain(
widgetRenderers(panel.content),
outputViews(app, panel.context.path)
)
);
});
// Add a command for creating a new Markdown file.
commands.addCommand('@jupyter-widgets/jupyterlab-manager:saveWidgetState', {
label: 'Save Widget State Automatically',
execute: args => {
return settingRegistry
.set(plugin.id, 'saveState', !SETTINGS.saveState)
.catch((reason: Error) => {
console.error(`Failed to set ${plugin.id}: ${reason.message}`);
});
},
isToggled: () => SETTINGS.saveState
});
if (menu) {
menu.settingsMenu.addGroup([
{command: '@jupyter-widgets/jupyterlab-manager:saveWidgetState'}
]);
}
WIDGET_REGISTRY.push({
name: '@jupyter-widgets/base',
version: base.JUPYTER_WIDGETS_VERSION,
exports: {
WidgetModel: base.WidgetModel,
WidgetView: base.WidgetView,
DOMWidgetView: base.DOMWidgetView,
DOMWidgetModel: base.DOMWidgetModel,
LayoutModel: base.LayoutModel,
LayoutView: base.LayoutView,
StyleModel: base.StyleModel,
StyleView: base.StyleView
}
});
WIDGET_REGISTRY.push({
name: '@jupyter-widgets/controls',
version: JUPYTER_CONTROLS_VERSION,
exports: () => {
return new Promise((resolve, reject) => {
(require as any).ensure(['@jupyter-widgets/controls'], (require: NodeRequire) => {
resolve(require('@jupyter-widgets/controls'));
},
(err: any) => {
reject(err);
},
'@jupyter-widgets/controls'
);
});
}
});
WIDGET_REGISTRY.push({
name: '@jupyter-widgets/output',
version: OUTPUT_WIDGET_VERSION,
//.........这里部分代码省略.........
示例2: return
isActive: () => {
const current = app.shell.currentWidget;
return (
current &&
(notebookTracker.has(current) || consoleTracker.has(current))
);
}
示例3:
app.shell.currentChanged.connect((sender, args) => {
let widget = args.newValue;
if (!widget || !notebooks.has(widget)) {
return;
}
let source = handlers[widget.id];
if (source) {
manager.source = source;
}
});
示例4: if
app.shell.currentChanged.connect((shell, change) => {
const { oldValue, newValue } = change;
// Check if we need to disconnect the console listener
// or the notebook active cell listener
if (oldValue && consoleTracker.has(oldValue)) {
(oldValue as ConsolePanel).console.promptCellCreated.disconnect(
onPromptCreated
);
} else if (oldValue && notebookTracker.has(oldValue)) {
(oldValue as NotebookPanel).content.activeCellChanged.disconnect(
onActiveCellChanged
);
}
// Wire up the new editor to the model if it exists
if (newValue && consoleTracker.has(newValue)) {
(newValue as ConsolePanel).console.promptCellCreated.connect(
onPromptCreated
);
const prompt = (newValue as ConsolePanel).console.promptCell;
item.model!.editor = prompt && prompt.editor;
} else if (newValue && notebookTracker.has(newValue)) {
(newValue as NotebookPanel).content.activeCellChanged.connect(
onActiveCellChanged
);
const cell = (newValue as NotebookPanel).content.activeCell;
item.model!.editor = cell && cell.editor;
} else if (newValue && editorTracker.has(newValue)) {
item.model!.editor = (newValue as IDocumentWidget<
FileEditor
>).content.editor;
} else {
item.model!.editor = null;
}
});