##// END OF EJS Templates
Properly dispose of widget model. Delete comm's ref to...
Properly dispose of widget model. Delete comm's ref to the widget model so the GC will collect it when it is no longer reference elsewhere.

File last commit:

r13832:6df9ab58
r14386:463ad221
Show More
rawcell.js
90 lines | 3.0 KiB | application/javascript | JavascriptLexer
MinRK
add raw cell toolbar preset
r13671 //----------------------------------------------------------------------------
// Copyright (C) 2012 The IPython Development Team
//
// Distributed under the terms of the BSD License. The full license is in
// the file COPYING, distributed as part of this software.
//----------------------------------------------------------------------------
//============================================================================
// CellToolbar Example
//============================================================================
(function(IPython) {
"use strict";
var CellToolbar = IPython.CellToolbar;
var raw_cell_preset = [];
MinRK
add dialog to raw cell toolbar
r13675 var utils = IPython.utils;
MinRK
add raw cell toolbar preset
r13671
var select_type = CellToolbar.utils.select_ui_generator([
["None", "-"],
["LaTeX", "text/latex"],
MinRK
use reST in raw cell toolbar...
r13780 ["reST", "text/restructuredtext"],
MinRK
add raw cell toolbar preset
r13671 ["HTML", "text/html"],
MinRK
use reST in raw cell toolbar...
r13780 ["Markdown", "text/markdown"],
Thomas Kluyver
Condense raw_mimetype and mime_type traitlets into output_mimetype
r13832 ["Python", "text/x-python"],
MinRK
add dialog to raw cell toolbar
r13675 ["Custom", "dialog"],
MinRK
add raw cell toolbar preset
r13671
],
// setter
function(cell, value) {
MinRK
add dialog to raw cell toolbar
r13675 if (value === "-") {
delete cell.metadata.raw_mimetype;
MinRK
add raw cell toolbar preset
r13671 } else if (value === 'dialog'){
MinRK
add dialog to raw cell toolbar
r13675 var dialog = $('<div/>').append(
$("<p/>")
.html("Set the MIME type of the raw cell:")
).append(
$("<br/>")
).append(
$('<input/>').attr('type','text').attr('size','25')
.val(cell.metadata.raw_mimetype || "-")
);
IPython.dialog.modal({
title: "Raw Cell MIME Type",
body: dialog,
buttons : {
"Cancel": {},
"OK": {
class: "btn-primary",
click: function () {
console.log(cell);
cell.metadata.raw_mimetype = $(this).find('input').val();
console.log(cell.metadata);
}
}
},
open : function (event, ui) {
var that = $(this);
// Upon ENTER, click the OK button.
that.find('input[type="text"]').keydown(function (event, ui) {
if (event.which === utils.keycodes.ENTER) {
that.find('.btn-primary').first().click();
return false;
}
});
that.find('input[type="text"]').focus().select();
}
});
MinRK
add raw cell toolbar preset
r13671 } else {
MinRK
add dialog to raw cell toolbar
r13675 cell.metadata.raw_mimetype = value;
MinRK
add raw cell toolbar preset
r13671 }
},
//getter
function(cell) {
MinRK
add dialog to raw cell toolbar
r13675 return cell.metadata.raw_mimetype || "";
MinRK
add raw cell toolbar preset
r13671 },
// name
"Raw NBConvert Format",
// cell_types
["raw"]
);
CellToolbar.register_callback('raw_cell.select', select_type);
raw_cell_preset.push('raw_cell.select');
CellToolbar.register_preset('Raw Cell Format', raw_cell_preset);
console.log('Raw Cell Format toolbar preset loaded.');
Thomas Kluyver
Condense raw_mimetype and mime_type traitlets into output_mimetype
r13832 }(IPython));