本文整理汇总了TypeScript中@jupyterlab/mainmenu.KernelMenu类的典型用法代码示例。如果您正苦于以下问题:TypeScript KernelMenu类的具体用法?TypeScript KernelMenu怎么用?TypeScript KernelMenu使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了KernelMenu类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: describe
describe('KernelMenu', () => {
let commands: CommandRegistry;
let menu: KernelMenu;
let tracker: InstanceTracker<Wodget>;
let wodget = new Wodget();
before(() => {
commands = new CommandRegistry();
});
beforeEach(() => {
menu = new KernelMenu({ commands });
tracker = new InstanceTracker<Wodget>({ namespace: 'wodget' });
tracker.add(wodget);
});
afterEach(() => {
menu.dispose();
tracker.dispose();
wodget.dispose();
});
describe('#constructor()', () => {
it('should construct a new kernel menu', () => {
expect(menu).to.be.an(KernelMenu);
expect(menu.menu.title.label).to.be('Kernel');
});
});
describe('#kernelUsers', () => {
it('should allow setting of an IKernelUser', () => {
const user: IKernelMenu.IKernelUser<Wodget> = {
tracker,
noun: 'Wodget',
interruptKernel: widget => {
widget.state = 'interrupt';
return Promise.resolve(void 0);
},
restartKernel: widget => {
widget.state = 'restart';
return Promise.resolve(void 0);
},
restartKernelAndClear: widget => {
widget.state = 'restartAndClear';
return Promise.resolve(void 0);
},
changeKernel: widget => {
widget.state = 'change';
return Promise.resolve(void 0);
},
shutdownKernel: widget => {
widget.state = 'shutdown';
return Promise.resolve(void 0);
}
};
menu.kernelUsers.add(user);
delegateExecute(wodget, menu.kernelUsers, 'interruptKernel');
expect(wodget.state).to.be('interrupt');
delegateExecute(wodget, menu.kernelUsers, 'restartKernel');
expect(wodget.state).to.be('restart');
delegateExecute(wodget, menu.kernelUsers, 'restartKernelAndClear');
expect(wodget.state).to.be('restartAndClear');
delegateExecute(wodget, menu.kernelUsers, 'changeKernel');
expect(wodget.state).to.be('change');
delegateExecute(wodget, menu.kernelUsers, 'shutdownKernel');
expect(wodget.state).to.be('shutdown');
});
});
});
开发者ID:dalejung,项目名称:jupyterlab,代码行数:69,代码来源:kernel.spec.ts
示例2: createKernelMenu
export function createKernelMenu(app: JupyterLab, menu: KernelMenu): void {
const commands = menu.menu.commands;
commands.addCommand(CommandIDs.interruptKernel, {
label: 'Interrupt Kernel',
isEnabled: Private.delegateEnabled(
app,
menu.kernelUsers,
'interruptKernel'
),
execute: Private.delegateExecute(app, menu.kernelUsers, 'interruptKernel')
});
commands.addCommand(CommandIDs.restartKernel, {
label: 'Restart Kernel…',
isEnabled: Private.delegateEnabled(app, menu.kernelUsers, 'restartKernel'),
execute: Private.delegateExecute(app, menu.kernelUsers, 'restartKernel')
});
commands.addCommand(CommandIDs.restartKernelAndClear, {
label: () => {
const noun = Private.delegateLabel(app, menu.kernelUsers, 'noun');
const enabled = Private.delegateEnabled(
app,
menu.kernelUsers,
'restartKernelAndClear'
)();
return `Restart Kernel and Clear${enabled ? ` ${noun}` : ''}…`;
},
isEnabled: Private.delegateEnabled(
app,
menu.kernelUsers,
'restartKernelAndClear'
),
execute: Private.delegateExecute(
app,
menu.kernelUsers,
'restartKernelAndClear'
)
});
commands.addCommand(CommandIDs.changeKernel, {
label: 'Change Kernel…',
isEnabled: Private.delegateEnabled(app, menu.kernelUsers, 'changeKernel'),
execute: Private.delegateExecute(app, menu.kernelUsers, 'changeKernel')
});
commands.addCommand(CommandIDs.shutdownKernel, {
label: 'Shutdown Kernel',
isEnabled: Private.delegateEnabled(app, menu.kernelUsers, 'shutdownKernel'),
execute: Private.delegateExecute(app, menu.kernelUsers, 'shutdownKernel')
});
commands.addCommand(CommandIDs.shutdownAllKernels, {
label: 'Shutdown All Kernels…',
isEnabled: () => {
return app.serviceManager.sessions.running().next() !== undefined;
},
execute: () => {
showDialog({
title: 'Shutdown All?',
body: 'Shut down all kernels?',
buttons: [
Dialog.cancelButton(),
Dialog.warnButton({ label: 'SHUTDOWN' })
]
}).then(result => {
if (result.button.accept) {
return app.serviceManager.sessions.shutdownAll();
}
});
}
});
const restartGroup = [
CommandIDs.restartKernel,
CommandIDs.restartKernelAndClear,
CommandIDs.restartAndRunAll
].map(command => {
return { command };
});
menu.addGroup([{ command: CommandIDs.interruptKernel }], 0);
menu.addGroup(restartGroup, 1);
menu.addGroup(
[
{ command: CommandIDs.shutdownKernel },
{ command: CommandIDs.shutdownAllKernels }
],
2
);
menu.addGroup([{ command: CommandIDs.changeKernel }], 3);
}
开发者ID:SylvainCorlay,项目名称:jupyterlab,代码行数:93,代码来源:index.ts
示例3: afterEach
afterEach(() => {
menu.dispose();
tracker.dispose();
wodget.dispose();
});
开发者ID:dalejung,项目名称:jupyterlab,代码行数:5,代码来源:kernel.spec.ts
注:本文中的@jupyterlab/mainmenu.KernelMenu类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论