##// END OF EJS Templates
space around :
Matthias BUSSONNIER -
Show More
@@ -1,182 +1,182
1 1 //----------------------------------------------------------------------------
2 2 // Copyright (C) 2011 The IPython Development Team
3 3 //
4 4 // Distributed under the terms of the BSD License. The full license is in
5 5 // the file COPYING, distributed as part of this software.
6 6 //----------------------------------------------------------------------------
7 7
8 8 //============================================================================
9 9 // ToolBar
10 10 //============================================================================
11 11
12 12 var IPython = (function (IPython) {
13 13
14 14 var MainToolBar = function (selector) {
15 15 this.selector = selector;
16 16 if (this.selector !== undefined) {
17 17 IPython.ToolBar.apply(this, arguments);
18 18 // move the rest ouside
19 19 this.construct();
20 20 this.add_drop_down_list();
21 21 this.bind_events();
22 22 }
23 23 };
24 24
25 25 MainToolBar.prototype = new IPython.ToolBar();
26 26
27 MainToolBar.prototype.add_drop_down_list = function() {
27 MainToolBar.prototype.add_drop_down_list = function () {
28 28 var select = $(this.selector)
29 29 .append($('<select/>')
30 30 .attr('id','cell_type')
31 31 .addClass('ui-widget ui-widget-content')
32 32 .append($('<option/>').attr('value','code').text('Code'))
33 33 .append($('<option/>').attr('value','markdown').text('Markdown'))
34 34 .append($('<option/>').attr('value','raw').text('Raw Text'))
35 35 .append($('<option/>').attr('value','heading1').text('Heading 1'))
36 36 .append($('<option/>').attr('value','heading2').text('Heading 2'))
37 37 .append($('<option/>').attr('value','heading3').text('Heading 3'))
38 38 .append($('<option/>').attr('value','heading4').text('Heading 4'))
39 39 .append($('<option/>').attr('value','heading5').text('Heading 5'))
40 40 .append($('<option/>').attr('value','heading6').text('Heading 6'))
41 41 .append($('<option/>').attr('value','heading7').text('Heading 7'))
42 42 .append($('<option/>').attr('value','heading8').text('Heading 8'))
43 43 );
44 44 };
45 45
46 MainToolBar.prototype.construct = function() {
46 MainToolBar.prototype.construct = function () {
47 47 this.add_buttons_group([
48 48 {
49 id:'save_b',
50 label:'Save',
51 icon:'ui-icon-disk',
52 callback:function(){
49 id : 'save_b',
50 label : 'Save',
51 icon : 'ui-icon-disk',
52 callback : function () {
53 53 IPython.notebook.save_notebook();
54 54 }
55 55 }
56 56 ]);
57 57 this.add_buttons_group([
58 58 {
59 id:'cut_b',
60 label:'Cut Cell',
61 icon:'ui-icon-scissors',
62 callback:function(){
59 id : 'cut_b',
60 label : 'Cut Cell',
61 icon : 'ui-icon-scissors',
62 callback : function () {
63 63 IPython.notebook.cut_cell();
64 64 }
65 65 },
66 66 {
67 id:'copy_b',
68 label:'Copy Cell',
69 icon:'ui-icon-copy',
70 callback:function(){
67 id : 'copy_b',
68 label : 'Copy Cell',
69 icon : 'ui-icon-copy',
70 callback : function () {
71 71 IPython.notebook.copy_cell();
72 72 }
73 73 },
74 74 {
75 id:'paste_b',
76 label:'Paste Cell',
77 icon:'ui-icon-clipboard',
78 callback:function(){
75 id : 'paste_b',
76 label : 'Paste Cell',
77 icon : 'ui-icon-clipboard',
78 callback : function () {
79 79 IPython.notebook.paste_cell();
80 80 }
81 81 }
82 82 ],'cut_copy_paste');
83 83
84 84 this.add_buttons_group([
85 85 {
86 id:'move_up_b',
87 label:'Move Cell Up',
88 icon:'ui-icon-arrowthick-1-n',
89 callback:function(){
86 id : 'move_up_b',
87 label : 'Move Cell Up',
88 icon : 'ui-icon-arrowthick-1-n',
89 callback : function () {
90 90 IPython.notebook.move_cell_up();
91 91 }
92 92 },
93 93 {
94 id:'move_down_b',
95 label:'Move Cell Down',
96 icon:'ui-icon-arrowthick-1-s',
97 callback:function(){
94 id : 'move_down_b',
95 label : 'Move Cell Down',
96 icon : 'ui-icon-arrowthick-1-s',
97 callback : function () {
98 98 IPython.notebook.move_cell_down();
99 99 }
100 100 }
101 101 ],'move_up_down');
102 102
103 103 this.add_buttons_group([
104 104 {
105 id:'insert_above_b',
106 label:'Insert Cell Above',
107 icon:'ui-icon-arrowthickstop-1-n',
108 callback:function(){
105 id : 'insert_above_b',
106 label : 'Insert Cell Above',
107 icon : 'ui-icon-arrowthickstop-1-n',
108 callback : function () {
109 109 IPython.notebook.insert_cell_above('code');
110 110 }
111 111 },
112 112 {
113 id:'insert_below_b',
114 label:'Insert Cell Below',
115 icon:'ui-icon-arrowthickstop-1-s',
116 callback:function(){
113 id : 'insert_below_b',
114 label : 'Insert Cell Below',
115 icon : 'ui-icon-arrowthickstop-1-s',
116 callback : function () {
117 117 IPython.notebook.insert_cell_below('code');
118 118 }
119 119 }
120 120 ],'insert_above_below');
121 121
122 122 this.add_buttons_group([
123 123 {
124 id:'run_b',
125 label:'Run Cell',
126 icon:'ui-icon-play',
127 callback:function(){
124 id : 'run_b',
125 label : 'Run Cell',
126 icon : 'ui-icon-play',
127 callback : function () {
128 128 IPython.notebook.execute_selected_cell();
129 129 }
130 130 },
131 131 {
132 id:'interrupt_b',
133 label:'Interrupt',
134 icon:'ui-icon-stop',
135 callback:function(){
132 id : 'interrupt_b',
133 label : 'Interrupt',
134 icon : 'ui-icon-stop',
135 callback : function () {
136 136 IPython.notebook.kernel.interrupt();
137 137 }
138 138 }
139 139 ],'run_int');
140 140
141 141
142 142 };
143 143
144 144 MainToolBar.prototype.bind_events = function () {
145 145 var that = this;
146 146
147 147 this.element.find('#cell_type').change(function () {
148 148 var cell_type = $(this).val();
149 149 if (cell_type === 'code') {
150 150 IPython.notebook.to_code();
151 151 } else if (cell_type === 'markdown') {
152 152 IPython.notebook.to_markdown();
153 153 } else if (cell_type === 'raw') {
154 154 IPython.notebook.to_raw();
155 155 } else if (cell_type === 'heading1') {
156 156 IPython.notebook.to_heading(undefined, 1);
157 157 } else if (cell_type === 'heading2') {
158 158 IPython.notebook.to_heading(undefined, 2);
159 159 } else if (cell_type === 'heading3') {
160 160 IPython.notebook.to_heading(undefined, 3);
161 161 } else if (cell_type === 'heading4') {
162 162 IPython.notebook.to_heading(undefined, 4);
163 163 } else if (cell_type === 'heading5') {
164 164 IPython.notebook.to_heading(undefined, 5);
165 165 } else if (cell_type === 'heading6') {
166 166 IPython.notebook.to_heading(undefined, 6);
167 167 }
168 168 });
169 169 $([IPython.events]).on('selected_cell_type_changed.Notebook', function (event, data) {
170 170 if (data.cell_type === 'heading') {
171 171 that.element.find('#cell_type').val(data.cell_type+data.level);
172 172 } else {
173 173 that.element.find('#cell_type').val(data.cell_type);
174 174 }
175 175 });
176 176 };
177 177
178 178 IPython.MainToolBar = MainToolBar;
179 179
180 180 return IPython;
181 181
182 182 }(IPython));
General Comments 0
You need to be logged in to leave comments. Login now