##// END OF EJS Templates
Shut down kernels in parallel...
Shut down kernels in parallel When stopping the notebook server, it currently sends a shutdown request to each kernel and then waits for the process to finish. This can be slow if you have several kernels running. This makes it issues all the shutdown requests before waiting on the processes, so shutdown happens in parallel. KernelManager (and MultiKernelManager) gain three new public API methods to allow this: * request_shutdown (promoted from a private method) * wait_shutdown (refactored out of shutdown_kernel) * cleanup (refactored out of shutdown_kernel)

File last commit:

r16226:574fdef3
r16510:633371e5
Show More
toolbar.js
111 lines | 3.3 KiB | application/javascript | JavascriptLexer
Brian Granger
First draft of toolbar....
r5993 //----------------------------------------------------------------------------
Matthias BUSSONNIER
Allow toolbar construction in js...
r7832 // Copyright (C) 2008 The IPython Development Team
Brian Granger
First draft of toolbar....
r5993 //
// Distributed under the terms of the BSD License. The full license is in
// the file COPYING, distributed as part of this software.
//----------------------------------------------------------------------------
//============================================================================
// ToolBar
//============================================================================
Matthias BUSSONNIER
document base of toolbar
r8769 /**
* @module IPython
* @namespace IPython
* @submodule ToolBar
*/
Brian Granger
First draft of toolbar....
r5993
var IPython = (function (IPython) {
Matthias BUSSONNIER
"use strict" in most (if not all) our javascript...
r12103 "use strict";
Brian Granger
First draft of toolbar....
r5993
Matthias BUSSONNIER
document base of toolbar
r8769 /**
* A generic toolbar on which one can add button
* @class ToolBar
* @constructor
* @param {Dom object} selector
*/
Brian Granger
First draft of toolbar....
r5993 var ToolBar = function (selector) {
this.selector = selector;
if (this.selector !== undefined) {
this.element = $(selector);
this.style();
}
};
Matthias BUSSONNIER
document base of toolbar
r8769 /**
* add a group of button into the current toolbar.
*
*
* @example
*
Matthias BUSSONNIER
Add a per cell toolbar....
r9055 * IPython.toolbar.add_buttons_group([
Matthias BUSSONNIER
document base of toolbar
r8769 * {
* label:'my button',
MinRK
bootstrap toolbar
r10889 * icon:'icon-hdd',
Matthias BUSSONNIER
Method to show hide linenumber of cell...
r9542 * callback:function(){alert('hoho')},
Matthias BUSSONNIER
document base of toolbar
r8769 * id : 'my_button_id', // this is optional
* },
* {
* label:'my second button',
MinRK
bootstrap toolbar
r10889 * icon:'icon-play',
Matthias BUSSONNIER
document base of toolbar
r8769 * callback:function(){alert('be carefull I cut')}
* }
* ],
* "my_button_group_id"
* )
*
* @method add_buttons_group
* @param list {List}
* List of button of the group, with the following paramter for each :
* @param list.label {string} text to show on button hover
MinRK
bootstrap toolbar
r10889 * @param list.icon {string} icon to choose from [Font Awesome](http://fortawesome.github.io/Font-Awesome)
Matthias BUSSONNIER
document base of toolbar
r8769 * @param list.callback {function} function to be called on button click
* @param [list.id] {String} id to give to the button
* @param [group_id] {String} optionnal id to give to the group
*
*/
Matthias BUSSONNIER
reorder methods and fix typo
r8212 ToolBar.prototype.add_buttons_group = function (list, group_id) {
MinRK
bootstrap toolbar
r10889 var btn_group = $('<div/>').addClass("btn-group");
MinRK
never use `for (var i in array)`...
r16226 if( group_id !== undefined ) {
MinRK
bootstrap toolbar
r10889 btn_group.attr('id',group_id);
Matthias BUSSONNIER
jslint 1
r8209 }
MinRK
never use `for (var i in array)`...
r16226 var el;
for(var i=0; i < list.length; i++) {
el = list[i];
MinRK
bootstrap toolbar
r10889 var button = $('<button/>')
.addClass('btn')
MinRK
never use `for (var i in array)`...
r16226 .attr("title", el.label)
MinRK
bootstrap toolbar
r10889 .append(
MinRK
never use `for (var i in array)`...
r16226 $("<i/>").addClass(el.icon)
MinRK
bootstrap toolbar
r10889 );
MinRK
never use `for (var i in array)`...
r16226 var id = el.id;
if( id !== undefined )
Matthias BUSSONNIER
Allow toolbar construction in js...
r7832 button.attr('id',id);
MinRK
never use `for (var i in array)`...
r16226 var fun = el.callback;
Matthias BUSSONNIER
Allow toolbar construction in js...
r7832 button.click(fun);
MinRK
bootstrap toolbar
r10889 btn_group.append(button);
Matthias BUSSONNIER
Allow toolbar construction in js...
r7832 }
MinRK
bootstrap toolbar
r10889 $(this.selector).append(btn_group);
Matthias BUSSONNIER
jslint 1
r8209 };
Brian Granger
First draft of toolbar....
r5993
ToolBar.prototype.style = function () {
MinRK
bootstrap toolbar
r10889 this.element.addClass('border-box-sizing')
.addClass('toolbar');
Brian Granger
First draft of toolbar....
r5993 };
Matthias BUSSONNIER
document base of toolbar
r8769 /**
* Show and hide toolbar
* @method toggle
*/
Brian Granger
Further work on the toolbar UI....
r5994 ToolBar.prototype.toggle = function () {
this.element.toggle();
MinRK
never use `for (var i in array)`...
r16226 if (IPython.layout_manager !== undefined) {
Matthias BUSSONNIER
reorder methods and fix typo
r8212 IPython.layout_manager.do_resize();
}
Brian Granger
First draft of toolbar....
r5993 };
IPython.ToolBar = ToolBar;
return IPython;
}(IPython));