本文整理匯總了TypeScript中@jupyterlab/docregistry.DocumentRegistry類的典型用法代碼示例。如果您正苦於以下問題:TypeScript DocumentRegistry類的具體用法?TypeScript DocumentRegistry怎麽用?TypeScript DocumentRegistry使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了DocumentRegistry類的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: it
it('should be removed from the registry when disposed', () => {
registry = new DocumentRegistry({ initialFileTypes: [] });
let fileType = { name: 'notebook', extensions: ['.ipynb'] };
let disposable = registry.addFileType(fileType);
disposable.dispose();
expect(toArray(registry.fileTypes()).length).to.be(0);
});
示例2: 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;
}
示例3: beforeEach
beforeEach(() => {
registry = new DocumentRegistry();
registry.addFileType({
name: 'foobar',
extensions: ['.foo.bar']
});
});
示例4: it
it('should override an existing extension default', () => {
registry.addModelFactory(new TextModelFactory());
registry.addWidgetFactory(createFactory());
let factory = createFactory();
registry.addWidgetFactory(factory);
expect(registry.defaultWidgetFactory('.foo.bar')).to.be(factory);
});
示例5: 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
);
});