本文整理汇总了TypeScript中@jupyterlab/apputils.Toolbar类的典型用法代码示例。如果您正苦于以下问题:TypeScript Toolbar类的具体用法?TypeScript Toolbar怎么用?TypeScript Toolbar使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Toolbar类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: createNew
/**
* Create a new extension object.
*/
createNew(nb: NotebookPanel, context: DocumentRegistry.IContext<INotebookModel>): IDisposable {
// Create extension here
// Add buttons to toolbar
let buttons: ToolbarButton[] = [];
let insertionPoint = -1;
find(nb.toolbar.children(), (tbb, index) => {
if (tbb.hasClass('jp-Notebook-toolbarCellType')) {
insertionPoint = index;
return true;
}
return false;
});
let i = 1;
for (let id of [CommandIDs.diffNotebookCheckpoint, CommandIDs.diffNotebookGit]) {
let button = Toolbar.createFromCommand(this.commands, id);
if (button === null) {
throw new Error('Cannot create button, command not registered!');
}
if (insertionPoint >= 0) {
nb.toolbar.insertItem(insertionPoint + i++, this.commands.label(id), button);
} else {
nb.toolbar.addItem(this.commands.label(id), button);
}
buttons.push(button);
}
return new DisposableDelegate(() => {
// Cleanup extension here
for (let btn of buttons) {
btn.dispose();
}
});
}
示例2: it
it('should handle a starting session', async () => {
await session.shutdown();
session = await createClientSession();
const item = Toolbar.createKernelStatusItem(session);
expect(item.node.title).to.equal('Kernel Starting');
expect(item.hasClass('jp-FilledCircleIcon')).to.equal(true);
}).timeout(20000); // Allow for slower CI
示例3: main
function main(): void {
const manager = new SessionManager();
const session = new ClientSession({ manager, name: 'Example' });
const mimeService = new CodeMirrorMimeTypeService();
// Initialize the command registry with the bindings.
const commands = new CommandRegistry();
const useCapture = true;
// Setup the keydown listener for the document.
document.addEventListener(
'keydown',
event => {
commands.processKeydownEvent(event);
},
useCapture
);
// Create the cell widget with a default rendermime instance.
const rendermime = new RenderMimeRegistry({ initialFactories });
const cellWidget = new CodeCell({
rendermime,
model: new CodeCellModel({})
}).initializeState();
// Handle the mimeType for the current kernel.
session.kernelChanged.connect(() => {
void session.kernel.ready.then(() => {
const lang = session.kernel.info.language_info;
const mimeType = mimeService.getMimeTypeByLanguage(lang);
cellWidget.model.mimeType = mimeType;
});
});
// Start the default kernel.
session.kernelPreference = { autoStartDefault: true };
void session.initialize();
// Set up a completer.
const editor = cellWidget.editor;
const model = new CompleterModel();
const completer = new Completer({ editor, model });
const connector = new KernelConnector({ session });
const handler = new CompletionHandler({ completer, connector });
// Set the handler's editor.
handler.editor = editor;
// Hide the widget when it first loads.
completer.hide();
// Create a toolbar for the cell.
const toolbar = new Toolbar();
toolbar.addItem('spacer', Toolbar.createSpacerItem());
toolbar.addItem('interrupt', Toolbar.createInterruptButton(session));
toolbar.addItem('restart', Toolbar.createRestartButton(session));
toolbar.addItem('name', Toolbar.createKernelNameItem(session));
toolbar.addItem('status', Toolbar.createKernelStatusItem(session));
// Lay out the widgets.
const panel = new BoxPanel();
panel.id = 'main';
panel.direction = 'top-to-bottom';
panel.spacing = 0;
panel.addWidget(completer);
panel.addWidget(toolbar);
panel.addWidget(cellWidget);
BoxPanel.setStretch(toolbar, 0);
BoxPanel.setStretch(cellWidget, 1);
// Attach the panel to the DOM.
Widget.attach(panel, document.body);
// Handle widget state.
window.addEventListener('resize', () => {
panel.update();
});
cellWidget.activate();
// Add the commands.
commands.addCommand('invoke:completer', {
execute: () => {
handler.invoke();
}
});
commands.addCommand('run:cell', {
execute: () => CodeCell.execute(cellWidget, session)
});
commands.addKeyBinding({
selector: '.jp-InputArea-editor.jp-mod-completer-enabled',
keys: ['Tab'],
command: 'invoke:completer'
});
commands.addKeyBinding({
selector: '.jp-InputArea-editor',
keys: ['Shift Enter'],
command: 'run:cell'
});
//.........这里部分代码省略.........
示例4: it
it('should insert an item into the toolbar before `c`', () => {
widget.addItem('a', new Widget());
widget.addItem('b', new Widget());
widget.insertItem(1, 'c', new Widget());
widget.insertBefore('c', 'd', new Widget());
expect(toArray(widget.names())).to.deep.equal(['a', 'd', 'c', 'b']);
});