本文整理汇总了TypeScript中@jupyterlab/docregistry.DocumentRegistry.getWidgetFactory方法的典型用法代码示例。如果您正苦于以下问题:TypeScript DocumentRegistry.getWidgetFactory方法的具体用法?TypeScript DocumentRegistry.getWidgetFactory怎么用?TypeScript DocumentRegistry.getWidgetFactory使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@jupyterlab/docregistry.DocumentRegistry
的用法示例。
在下文中一共展示了DocumentRegistry.getWidgetFactory方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: it
it('should add the widget factory to the registry', () => {
const factory = createFactory();
registry.addWidgetFactory(factory);
expect(registry.getWidgetFactory(factory.name)).to.equal(factory);
expect(registry.getWidgetFactory(factory.name.toUpperCase())).to.equal(
factory
);
});
示例2: it
it('should get a widget factory by name', () => {
registry.addModelFactory(new TextModelFactory());
let factory = createFactory();
registry.addWidgetFactory(factory);
let mdFactory = new WidgetFactory({
name: 'markdown',
fileExtensions: ['.md'],
});
registry.addWidgetFactory(mdFactory);
expect(registry.getWidgetFactory(factory.name)).to.be(factory);
expect(registry.getWidgetFactory('markdown')).to.be(mdFactory);
expect(registry.getWidgetFactory('baz')).to.be(void 0);
});
示例3: it
it('should get a widget factory by name', () => {
registry.addModelFactory(new Base64ModelFactory());
let factory = createFactory();
registry.addWidgetFactory(factory);
let mdFactory = new WidgetFactory({
name: 'markdown',
fileTypes: ['markdown']
});
registry.addWidgetFactory(mdFactory);
expect(registry.getWidgetFactory(factory.name)).to.be(factory);
expect(registry.getWidgetFactory('markdown')).to.be(mdFactory);
expect(registry.getWidgetFactory('baz')).to.be(void 0);
});
示例4: createContextMenu
/**
* Create a context menu for the file browser listing.
*
* #### Notes
* This function generates temporary commands with an incremented name. These
* commands are disposed when the menu itself is disposed.
*/
function createContextMenu(
model: Contents.IModel | undefined,
commands: CommandRegistry,
registry: DocumentRegistry
): Menu {
const menu = new Menu({ commands });
// If the user did not click on any file, we still want to show
// paste as a possibility.
if (!model) {
menu.addItem({ command: CommandIDs.paste });
return menu;
}
menu.addItem({ command: CommandIDs.open });
const path = model.path;
if (model.type !== 'directory') {
const factories = registry.preferredWidgetFactories(path).map(f => f.name);
const notebookFactory = registry.getWidgetFactory('notebook').name;
if (
model.type === 'notebook' &&
factories.indexOf(notebookFactory) === -1
) {
factories.unshift(notebookFactory);
}
if (path && factories.length > 1) {
const command = 'docmanager:open';
const openWith = new Menu({ commands });
openWith.title.label = 'Open With';
factories.forEach(factory => {
openWith.addItem({ args: { factory, path }, command });
});
menu.addItem({ type: 'submenu', submenu: openWith });
}
menu.addItem({ command: CommandIDs.openBrowserTab });
}
menu.addItem({ command: CommandIDs.rename });
menu.addItem({ command: CommandIDs.del });
menu.addItem({ command: CommandIDs.cut });
if (model.type !== 'directory') {
menu.addItem({ command: CommandIDs.copy });
}
menu.addItem({ command: CommandIDs.paste });
if (model.type !== 'directory') {
menu.addItem({ command: CommandIDs.duplicate });
menu.addItem({ command: CommandIDs.download });
menu.addItem({ command: CommandIDs.shutdown });
}
menu.addItem({ command: CommandIDs.share });
menu.addItem({ command: CommandIDs.copyPath });
menu.addItem({ command: CommandIDs.copyDownloadLink });
return menu;
}