##// END OF EJS Templates
Reorganize the L panel buttons.
Brian E. Granger -
Show More
@@ -1,313 +1,315 b''
1
1
2 /**
2 /**
3 * Primary styles
3 * Primary styles
4 *
4 *
5 * Author: IPython Development Team
5 * Author: IPython Development Team
6 */
6 */
7
7
8
8
9 body {
9 body {
10 background-color: white;
10 background-color: white;
11 /* This makes sure that the body covers the entire window and needs to
11 /* This makes sure that the body covers the entire window and needs to
12 be in a different element than the display: box in wrapper below */
12 be in a different element than the display: box in wrapper below */
13 position: absolute;
13 position: absolute;
14 left: 0px;
14 left: 0px;
15 right: 0px;
15 right: 0px;
16 top: 0px;
16 top: 0px;
17 bottom: 0px;
17 bottom: 0px;
18 overflow: hidden;
18 overflow: hidden;
19 }
19 }
20
20
21 span#save_widget {
21 span#save_widget {
22 position: absolute;
22 position: absolute;
23 left: 0px;
23 left: 0px;
24 padding: 5px 0px;
24 padding: 5px 0px;
25 margin: 0px 0px 0px 0px;
25 margin: 0px 0px 0px 0px;
26 }
26 }
27
27
28 input#notebook_name {
28 input#notebook_name {
29 height: 1em;
29 height: 1em;
30 line-height: 1em;
30 line-height: 1em;
31 padding: 5px;
31 padding: 5px;
32 }
32 }
33
33
34 span#kernel_status {
34 span#kernel_status {
35 position: absolute;
35 position: absolute;
36 padding: 8px 5px 5px 5px;
36 padding: 8px 5px 5px 5px;
37 right: 10px;
37 right: 10px;
38 font-weight: bold;
38 font-weight: bold;
39 }
39 }
40
40
41 .status_idle {
41 .status_idle {
42 color: gray;
42 color: gray;
43 }
43 }
44
44
45 .status_busy {
45 .status_busy {
46 color: red;
46 color: red;
47 }
47 }
48
48
49 .status_restarting {
49 .status_restarting {
50 color: black;
50 color: black;
51 }
51 }
52
52
53 div#left_panel {
53 div#left_panel {
54 overflow-y: auto;
54 overflow-y: auto;
55 top: 0px;
55 top: 0px;
56 left: 0px;
56 left: 0px;
57 margin: 0px;
57 margin: 0px;
58 padding: 0px;
58 padding: 0px;
59 position: absolute;
59 position: absolute;
60 }
60 }
61
61
62 h3.section_header {
62 h3.section_header {
63 padding: 5px;
63 padding: 5px;
64 }
64 }
65
65
66 div.section_content {
66 div.section_content {
67 padding: 5px;
67 padding: 5px;
68 }
68 }
69
69
70 span.section_row_buttons button {
70 span.section_row_buttons button {
71 width: 70px;
71 width: 70px;
72 }
72 }
73
73
74 span.section_row_buttons a {
74 span.section_row_buttons a {
75 width: 70px;
75 width: 70px;
76 }
76 }
77
77
78 .section_row {
78 .section_row {
79 margin: 5px 0px;
79 margin: 5px 0px;
80 }
80 }
81
81
82 .section_row_buttons {
82 .section_row_buttons {
83 float: right;
83 float: right;
84 }
84 }
85
85
86 #kernel_persist {
86 #kernel_persist {
87 float: right;
87 float: right;
88 }
88 }
89
89
90 .help_string {
90 .help_string {
91 float: right;
91 float: right;
92 width: 170px;
92 width: 170px;
93 padding: 0px 5px;
93 padding: 0px 5px;
94 text-align: center;
94 text-align: center;
95 font-size: 85%;
95 }
96 }
96
97
97 .help_string_label {
98 .help_string_label {
98 float: right;
99 float: right;
100 font-size: 85%;
99 }
101 }
100
102
101 #autoindent_span {
103 #autoindent_span {
102 float: right;
104 float: right;
103 }
105 }
104
106
105 .checkbox_label {
107 .checkbox_label {
106 font-size: 85%;
108 font-size: 85%;
107 float: right;
109 float: right;
108 padding: 0.3em;
110 padding: 0.3em;
109 }
111 }
110
112
111 .section_row_header {
113 .section_row_header {
112 float: left;
114 float: left;
113 font-size: 85%;
115 font-size: 85%;
114 padding: 0.4em 0em;
116 padding: 0.4em 0em;
115 font-weight: bold;
117 font-weight: bold;
116 }
118 }
117
119
118 span.button_label {
120 span.button_label {
119 padding: 0.2em 1em;
121 padding: 0.2em 1em;
120 font-size: 77%;
122 font-size: 77%;
121 float: right;
123 float: right;
122 }
124 }
123
125
124 /* This is needed because FF was adding a 2px margin top and bottom. */
126 /* This is needed because FF was adding a 2px margin top and bottom. */
125 .section_row .ui-button {
127 .section_row .ui-button {
126 margin-top: 0px;
128 margin-top: 0px;
127 margin-bottom: 0px;
129 margin-bottom: 0px;
128 }
130 }
129
131
130 #download_format {
132 #download_format {
131 float: right;
133 float: right;
132 font-size: 85%;
134 font-size: 85%;
133 width: 62px;
135 width: 62px;
134 margin: 1px 5px;
136 margin: 1px 5px;
135 }
137 }
136
138
137 div#left_panel_splitter {
139 div#left_panel_splitter {
138 width: 8px;
140 width: 8px;
139 top: 0px;
141 top: 0px;
140 left: 202px;
142 left: 202px;
141 margin: 0px;
143 margin: 0px;
142 padding: 0px;
144 padding: 0px;
143 position: absolute;
145 position: absolute;
144 }
146 }
145
147
146 div#notebook_panel {
148 div#notebook_panel {
147 /* The L margin will be set in the Javascript code*/
149 /* The L margin will be set in the Javascript code*/
148 margin: 0px 0px 0px 0px;
150 margin: 0px 0px 0px 0px;
149 padding: 0px;
151 padding: 0px;
150 }
152 }
151
153
152 div#notebook {
154 div#notebook {
153 overflow-y: scroll;
155 overflow-y: scroll;
154 overflow-x: auto;
156 overflow-x: auto;
155 width: 100%;
157 width: 100%;
156 /* This spaces the cell away from the edge of the notebook area */
158 /* This spaces the cell away from the edge of the notebook area */
157 padding: 15px 15px 15px 15px;
159 padding: 15px 15px 15px 15px;
158 margin: 0px
160 margin: 0px
159 background-color: white;
161 background-color: white;
160 }
162 }
161
163
162 div#pager_splitter {
164 div#pager_splitter {
163 height: 8px;
165 height: 8px;
164 }
166 }
165
167
166 div#pager {
168 div#pager {
167 padding: 15px;
169 padding: 15px;
168 overflow: auto;
170 overflow: auto;
169 }
171 }
170
172
171 div.cell {
173 div.cell {
172 width: 100%;
174 width: 100%;
173 padding: 5px;
175 padding: 5px;
174 /* This acts as a spacer between cells, that is outside the border */
176 /* This acts as a spacer between cells, that is outside the border */
175 margin: 5px 0px 5px 0px;
177 margin: 5px 0px 5px 0px;
176 }
178 }
177
179
178 div.code_cell {
180 div.code_cell {
179 background-color: white;
181 background-color: white;
180 }
182 }
181
183
182 div.prompt {
184 div.prompt {
183 /* No width is used so the prompt area can expand as the prompt number
185 /* No width is used so the prompt area can expand as the prompt number
184 increases in width */
186 increases in width */
185 /* This 0.4em is tuned to match the padding on the CodeMirror editor. */
187 /* This 0.4em is tuned to match the padding on the CodeMirror editor. */
186 padding: 0.4em;
188 padding: 0.4em;
187 margin: 0px;
189 margin: 0px;
188 font-family: monospace;
190 font-family: monospace;
189 }
191 }
190
192
191 div.input {
193 div.input {
192 page-break-inside: avoid;
194 page-break-inside: avoid;
193 }
195 }
194
196
195 div.input_area {
197 div.input_area {
196 color: black;
198 color: black;
197 }
199 }
198
200
199 div.input_prompt {
201 div.input_prompt {
200 color: navy;
202 color: navy;
201 }
203 }
202
204
203 div.output {
205 div.output {
204 /* This is a spacer between the input and output of each cell */
206 /* This is a spacer between the input and output of each cell */
205 margin-top: 5px;
207 margin-top: 5px;
206 }
208 }
207
209
208 div.output_prompt {
210 div.output_prompt {
209 color: darkred;
211 color: darkred;
210 }
212 }
211
213
212 /* This class is applied to all types of output (pyout, pyerr, stream, display_data) */
214 /* This class is applied to all types of output (pyout, pyerr, stream, display_data) */
213 div.output_area {
215 div.output_area {
214 padding: 0px 0.4em;
216 padding: 0px 0.4em;
215 page-break-inside: avoid;
217 page-break-inside: avoid;
216 }
218 }
217
219
218 /* This is the output area after the Out[] prompt of type pyout */
220 /* This is the output area after the Out[] prompt of type pyout */
219 div.pyout_area {
221 div.pyout_area {
220 padding: 0.4em;
222 padding: 0.4em;
221 }
223 }
222
224
223 /* The rest of the output_* classes are for special styling of the different
225 /* The rest of the output_* classes are for special styling of the different
224 output types */
226 output types */
225
227
226 div.output_pyout {
228 div.output_pyout {
227 padding: 0px;
229 padding: 0px;
228 }
230 }
229
231
230 div.output_stream {
232 div.output_stream {
231 text-align: left;
233 text-align: left;
232 color: black;
234 color: black;
233 font-family: monospace;
235 font-family: monospace;
234 }
236 }
235
237
236 div.output_latex {
238 div.output_latex {
237 text-align: left;
239 text-align: left;
238 color: black;
240 color: black;
239 }
241 }
240
242
241 div.output_html {
243 div.output_html {
242 }
244 }
243
245
244 div.output_png {
246 div.output_png {
245 }
247 }
246
248
247 div.output_jpeg {
249 div.output_jpeg {
248 }
250 }
249
251
250 div.text_cell {
252 div.text_cell {
251 background-color: white;
253 background-color: white;
252 }
254 }
253
255
254 div.text_cell_input {
256 div.text_cell_input {
255 color: black;
257 color: black;
256 }
258 }
257
259
258 div.text_cell_render {
260 div.text_cell_render {
259 font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
261 font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
260 outline: none;
262 outline: none;
261 resize: none;
263 resize: none;
262 width: inherit;
264 width: inherit;
263 border-style: none;
265 border-style: none;
264 padding: 5px;
266 padding: 5px;
265 color: black;
267 color: black;
266 }
268 }
267
269
268 .CodeMirror {
270 .CodeMirror {
269 line-height: 1.231; /* Changed from 1em to our global default */
271 line-height: 1.231; /* Changed from 1em to our global default */
270 }
272 }
271
273
272 .CodeMirror-scroll {
274 .CodeMirror-scroll {
273 height: auto; /* Changed to auto to autogrow */
275 height: auto; /* Changed to auto to autogrow */
274 /* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
276 /* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
275 /* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
277 /* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
276 overflow-y: hidden;
278 overflow-y: hidden;
277 overflow-x: auto; /* Changed from auto to remove scrollbar */
279 overflow-x: auto; /* Changed from auto to remove scrollbar */
278 }
280 }
279
281
280 /* CSS font colors for translated ANSI colors. */
282 /* CSS font colors for translated ANSI colors. */
281
283
282
284
283 .ansiblack {color: black;}
285 .ansiblack {color: black;}
284 .ansired {color: darkred;}
286 .ansired {color: darkred;}
285 .ansigreen {color: darkgreen;}
287 .ansigreen {color: darkgreen;}
286 .ansiyellow {color: brown;}
288 .ansiyellow {color: brown;}
287 .ansiblue {color: darkblue;}
289 .ansiblue {color: darkblue;}
288 .ansipurple {color: darkviolet;}
290 .ansipurple {color: darkviolet;}
289 .ansicyan {color: steelblue;}
291 .ansicyan {color: steelblue;}
290 .ansigrey {color: grey;}
292 .ansigrey {color: grey;}
291 .ansibold {font-weight: bold;}
293 .ansibold {font-weight: bold;}
292
294
293 .completions {
295 .completions {
294 position: absolute;
296 position: absolute;
295 z-index: 10;
297 z-index: 10;
296 overflow: auto;
298 overflow: auto;
297 border: 1px solid black;
299 border: 1px solid black;
298 }
300 }
299
301
300 .completions select {
302 .completions select {
301 background: white;
303 background: white;
302 outline: none;
304 outline: none;
303 border: none;
305 border: none;
304 padding: 0px;
306 padding: 0px;
305 margin: 0px;
307 margin: 0px;
306 font-family: monospace;
308 font-family: monospace;
307 }
309 }
308
310
309 @media print {
311 @media print {
310 body { overflow: visible !important; }
312 body { overflow: visible !important; }
311 .ui-widget-content { border: 0px; }
313 .ui-widget-content { border: 0px; }
312 }
314 }
313
315
@@ -1,245 +1,246 b''
1 //----------------------------------------------------------------------------
1 //----------------------------------------------------------------------------
2 // Copyright (C) 2008-2011 The IPython Development Team
2 // Copyright (C) 2008-2011 The IPython Development Team
3 //
3 //
4 // Distributed under the terms of the BSD License. The full license is in
4 // Distributed under the terms of the BSD License. The full license is in
5 // the file COPYING, distributed as part of this software.
5 // the file COPYING, distributed as part of this software.
6 //----------------------------------------------------------------------------
6 //----------------------------------------------------------------------------
7
7
8 //============================================================================
8 //============================================================================
9 // PanelSection
9 // PanelSection
10 //============================================================================
10 //============================================================================
11
11
12 var IPython = (function (IPython) {
12 var IPython = (function (IPython) {
13
13
14 var utils = IPython.utils;
14 var utils = IPython.utils;
15
15
16 // Base PanelSection class
16 // Base PanelSection class
17
17
18 var PanelSection = function (selector) {
18 var PanelSection = function (selector) {
19 this.selector = selector;
19 this.selector = selector;
20 if (this.selector !== undefined) {
20 if (this.selector !== undefined) {
21 this.element = $(selector);
21 this.element = $(selector);
22 this.header = this.element.find('h3.section_header');
22 this.header = this.element.find('h3.section_header');
23 this.content = this.element.find('div.section_content');
23 this.content = this.element.find('div.section_content');
24 this.style();
24 this.style();
25 this.bind_events();
25 this.bind_events();
26 }
26 }
27 this.expanded = true;
27 this.expanded = true;
28 };
28 };
29
29
30
30
31 PanelSection.prototype.style = function () {
31 PanelSection.prototype.style = function () {
32 this.header.addClass('ui-widget ui-state-default');
32 this.header.addClass('ui-widget ui-state-default');
33 this.content.addClass('ui-widget section_content');
33 this.content.addClass('ui-widget section_content');
34 };
34 };
35
35
36
36
37 PanelSection.prototype.bind_events = function () {
37 PanelSection.prototype.bind_events = function () {
38 var that = this;
38 var that = this;
39 this.header.click(function () {
39 this.header.click(function () {
40 that.toggle();
40 that.toggle();
41 });
41 });
42 this.header.hover(function () {
42 this.header.hover(function () {
43 that.header.toggleClass('ui-state-hover');
43 that.header.toggleClass('ui-state-hover');
44 });
44 });
45 };
45 };
46
46
47
47
48 PanelSection.prototype.expand = function () {
48 PanelSection.prototype.expand = function () {
49 if (!this.expanded) {
49 if (!this.expanded) {
50 this.content.slideDown('fast');
50 this.content.slideDown('fast');
51 this.expanded = true;
51 this.expanded = true;
52 };
52 };
53 };
53 };
54
54
55
55
56 PanelSection.prototype.collapse = function () {
56 PanelSection.prototype.collapse = function () {
57 if (this.expanded) {
57 if (this.expanded) {
58 this.content.slideUp('fast');
58 this.content.slideUp('fast');
59 this.expanded = false;
59 this.expanded = false;
60 };
60 };
61 };
61 };
62
62
63
63
64 PanelSection.prototype.toggle = function () {
64 PanelSection.prototype.toggle = function () {
65 if (this.expanded === true) {
65 if (this.expanded === true) {
66 this.collapse();
66 this.collapse();
67 } else {
67 } else {
68 this.expand();
68 this.expand();
69 };
69 };
70 };
70 };
71
71
72
72
73 PanelSection.prototype.create_children = function () {};
73 PanelSection.prototype.create_children = function () {};
74
74
75
75
76 // NotebookSection
76 // NotebookSection
77
77
78 var NotebookSection = function () {
78 var NotebookSection = function () {
79 PanelSection.apply(this, arguments);
79 PanelSection.apply(this, arguments);
80 };
80 };
81
81
82
82
83 NotebookSection.prototype = new PanelSection();
83 NotebookSection.prototype = new PanelSection();
84
84
85
85
86 NotebookSection.prototype.style = function () {
86 NotebookSection.prototype.style = function () {
87 PanelSection.prototype.style.apply(this);
87 PanelSection.prototype.style.apply(this);
88 this.content.addClass('ui-helper-clearfix');
88 this.content.addClass('ui-helper-clearfix');
89 this.content.find('div.section_row').addClass('ui-helper-clearfix');
89 this.content.find('div.section_row').addClass('ui-helper-clearfix');
90 this.content.find('#new_open').buttonset();
90 this.content.find('#new_open').buttonset();
91 this.content.find('#download_notebook').button();
91 this.content.find('#download_notebook').button();
92 this.content.find('#upload_notebook').button();
92 this.content.find('#upload_notebook').button();
93 this.content.find('#download_format').addClass('ui-widget ui-widget-content');
93 this.content.find('#download_format').addClass('ui-widget ui-widget-content');
94 this.content.find('#download_format option').addClass('ui-widget ui-widget-content');
94 this.content.find('#download_format option').addClass('ui-widget ui-widget-content');
95 };
95 };
96
96
97
97
98 NotebookSection.prototype.bind_events = function () {
98 NotebookSection.prototype.bind_events = function () {
99 PanelSection.prototype.bind_events.apply(this);
99 PanelSection.prototype.bind_events.apply(this);
100 var that = this;
100 var that = this;
101 this.content.find('#new_notebook').click(function () {
101 this.content.find('#new_notebook').click(function () {
102 window.open('/new');
102 window.open('/new');
103 });
103 });
104 this.content.find('#open_notebook').click(function () {
104 this.content.find('#open_notebook').click(function () {
105 window.open('/');
105 window.open('/');
106 });
106 });
107 this.content.find('#download_notebook').click(function () {
107 this.content.find('#download_notebook').click(function () {
108 var format = that.content.find('#download_format').val();
108 var format = that.content.find('#download_format').val();
109 var notebook_id = IPython.save_widget.get_notebook_id();
109 var notebook_id = IPython.save_widget.get_notebook_id();
110 var url = '/notebooks/' + notebook_id + '?format=' + format;
110 var url = '/notebooks/' + notebook_id + '?format=' + format;
111 window.open(url,'_newtab');
111 window.open(url,'_newtab');
112 });
112 });
113 };
113 };
114
114
115 // CellSection
115 // CellSection
116
116
117 var CellSection = function () {
117 var CellSection = function () {
118 PanelSection.apply(this, arguments);
118 PanelSection.apply(this, arguments);
119 };
119 };
120
120
121
121
122 CellSection.prototype = new PanelSection();
122 CellSection.prototype = new PanelSection();
123
123
124
124
125 CellSection.prototype.style = function () {
125 CellSection.prototype.style = function () {
126 PanelSection.prototype.style.apply(this);
126 PanelSection.prototype.style.apply(this);
127 this.content.addClass('ui-helper-clearfix');
127 this.content.addClass('ui-helper-clearfix');
128 this.content.find('div.section_row').addClass('ui-helper-clearfix');
128 this.content.find('div.section_row').addClass('ui-helper-clearfix');
129 this.content.find('#delete_cell').button();
129 this.content.find('#delete_cell').button();
130 this.content.find('#insert').buttonset();
130 this.content.find('#insert').buttonset();
131 this.content.find('#move').buttonset();
131 this.content.find('#move').buttonset();
132 this.content.find('#cell_type').buttonset();
132 this.content.find('#cell_type').buttonset();
133 this.content.find('#cell_output').buttonset();
133 this.content.find('#cell_output').buttonset();
134 this.content.find('#run_cells').buttonset();
134 this.content.find('#run_cells').buttonset();
135 };
135 };
136
136
137
137
138 CellSection.prototype.bind_events = function () {
138 CellSection.prototype.bind_events = function () {
139 PanelSection.prototype.bind_events.apply(this);
139 PanelSection.prototype.bind_events.apply(this);
140 this.content.find('#toggle_output').click(function () {
140 this.content.find('#toggle_output').click(function () {
141 IPython.notebook.toggle_output();
141 IPython.notebook.toggle_output();
142 });
142 });
143 this.content.find('#clear_all_output').click(function () {
143 this.content.find('#clear_all_output').click(function () {
144 IPython.notebook.clear_all_output();
144 IPython.notebook.clear_all_output();
145 });
145 });
146 this.content.find('#delete_cell').click(function () {
146 this.content.find('#delete_cell').click(function () {
147 IPython.notebook.delete_cell();
147 IPython.notebook.delete_cell();
148 });
148 });
149 this.content.find('#insert_cell_above').click(function () {
149 this.content.find('#insert_cell_above').click(function () {
150 IPython.notebook.insert_code_cell_before();
150 IPython.notebook.insert_code_cell_before();
151 });
151 });
152 this.content.find('#insert_cell_below').click(function () {
152 this.content.find('#insert_cell_below').click(function () {
153 IPython.notebook.insert_code_cell_after();
153 IPython.notebook.insert_code_cell_after();
154 });
154 });
155 this.content.find('#move_cell_up').click(function () {
155 this.content.find('#move_cell_up').click(function () {
156 IPython.notebook.move_cell_up();
156 IPython.notebook.move_cell_up();
157 });
157 });
158 this.content.find('#move_cell_down').click(function () {
158 this.content.find('#move_cell_down').click(function () {
159 IPython.notebook.move_cell_down();
159 IPython.notebook.move_cell_down();
160 });
160 });
161 this.content.find('#to_code').click(function () {
161 this.content.find('#to_code').click(function () {
162 IPython.notebook.to_code();
162 IPython.notebook.to_code();
163 });
163 });
164 this.content.find('#to_markdown').click(function () {
164 this.content.find('#to_markdown').click(function () {
165 IPython.notebook.to_markdown();
165 IPython.notebook.to_markdown();
166 });
166 });
167 this.content.find('#run_selected_cell').click(function () {
167 this.content.find('#run_selected_cell').click(function () {
168 IPython.notebook.execute_selected_cell();
168 IPython.notebook.execute_selected_cell();
169 });
169 });
170 this.content.find('#run_all_cells').click(function () {
170 this.content.find('#run_all_cells').click(function () {
171 IPython.notebook.execute_all_cells();
171 IPython.notebook.execute_all_cells();
172 });
172 });
173 this.content.find('#autoindent').change(function () {
173 this.content.find('#autoindent').change(function () {
174 var state = $('#autoindent').prop('checked');
174 var state = $('#autoindent').prop('checked');
175 IPython.notebook.set_autoindent(state);
175 IPython.notebook.set_autoindent(state);
176 });
176 });
177 };
177 };
178
178
179
179
180 // KernelSection
180 // KernelSection
181
181
182 var KernelSection = function () {
182 var KernelSection = function () {
183 PanelSection.apply(this, arguments);
183 PanelSection.apply(this, arguments);
184 };
184 };
185
185
186
186
187 KernelSection.prototype = new PanelSection();
187 KernelSection.prototype = new PanelSection();
188
188
189
189
190 KernelSection.prototype.style = function () {
190 KernelSection.prototype.style = function () {
191 PanelSection.prototype.style.apply(this);
191 PanelSection.prototype.style.apply(this);
192 this.content.addClass('ui-helper-clearfix');
192 this.content.addClass('ui-helper-clearfix');
193 this.content.find('div.section_row').addClass('ui-helper-clearfix');
193 this.content.find('div.section_row').addClass('ui-helper-clearfix');
194 this.content.find('#int_restart').buttonset();
194 this.content.find('#int_restart').buttonset();
195 };
195 };
196
196
197
197
198 KernelSection.prototype.bind_events = function () {
198 KernelSection.prototype.bind_events = function () {
199 PanelSection.prototype.bind_events.apply(this);
199 PanelSection.prototype.bind_events.apply(this);
200 this.content.find('#restart_kernel').click(function () {
200 this.content.find('#restart_kernel').click(function () {
201 IPython.notebook.restart_kernel();
201 IPython.notebook.restart_kernel();
202 });
202 });
203 this.content.find('#int_kernel').click(function () {
203 this.content.find('#int_kernel').click(function () {
204 IPython.notebook.kernel.interrupt();
204 IPython.notebook.kernel.interrupt();
205 });
205 });
206 };
206 };
207
207
208
208
209 // HelpSection
209 // HelpSection
210
210
211 var HelpSection = function () {
211 var HelpSection = function () {
212 PanelSection.apply(this, arguments);
212 PanelSection.apply(this, arguments);
213 };
213 };
214
214
215
215
216 HelpSection.prototype = new PanelSection();
216 HelpSection.prototype = new PanelSection();
217
217
218
218
219 HelpSection.prototype.style = function () {
219 HelpSection.prototype.style = function () {
220 PanelSection.prototype.style.apply(this);
220 PanelSection.prototype.style.apply(this);
221 PanelSection.prototype.style.apply(this);
221 PanelSection.prototype.style.apply(this);
222 this.content.addClass('ui-helper-clearfix');
222 this.content.addClass('ui-helper-clearfix');
223 this.content.find('div.section_row').addClass('ui-helper-clearfix');
223 this.content.find('div.section_row').addClass('ui-helper-clearfix');
224 this.content.find('#help_buttons0').buttonset();
224 this.content.find('#help_buttons0').buttonset();
225 this.content.find('#help_buttons1').buttonset();
225 this.content.find('#help_buttons1').buttonset();
226 this.content.find('#help_buttons2').buttonset();
226 };
227 };
227
228
228
229
229 HelpSection.prototype.bind_events = function () {
230 HelpSection.prototype.bind_events = function () {
230 PanelSection.prototype.bind_events.apply(this);
231 PanelSection.prototype.bind_events.apply(this);
231 };
232 };
232
233
233
234
234 // Set module variables
235 // Set module variables
235
236
236 IPython.PanelSection = PanelSection;
237 IPython.PanelSection = PanelSection;
237 IPython.NotebookSection = NotebookSection;
238 IPython.NotebookSection = NotebookSection;
238 IPython.CellSection = CellSection;
239 IPython.CellSection = CellSection;
239 IPython.KernelSection = KernelSection;
240 IPython.KernelSection = KernelSection;
240 IPython.HelpSection = HelpSection;
241 IPython.HelpSection = HelpSection;
241
242
242 return IPython;
243 return IPython;
243
244
244 }(IPython));
245 }(IPython));
245
246
@@ -1,227 +1,234 b''
1 <!DOCTYPE HTML>
1 <!DOCTYPE HTML>
2 <html>
2 <html>
3
3
4 <head>
4 <head>
5 <meta charset="utf-8">
5 <meta charset="utf-8">
6
6
7 <title>IPython Notebook</title>
7 <title>IPython Notebook</title>
8
8
9 <link rel="stylesheet" href="static/jquery/css/themes/aristo/jquery-wijmo.css" type="text/css" />
9 <link rel="stylesheet" href="static/jquery/css/themes/aristo/jquery-wijmo.css" type="text/css" />
10 <!-- <link rel="stylesheet" href="static/jquery/css/themes/rocket/jquery-wijmo.css" type="text/css" /> -->
10 <!-- <link rel="stylesheet" href="static/jquery/css/themes/rocket/jquery-wijmo.css" type="text/css" /> -->
11 <!-- <link rel="stylesheet" href="static/jquery/css/themes/smoothness/jquery-ui-1.8.14.custom.css" type="text/css" />-->
11 <!-- <link rel="stylesheet" href="static/jquery/css/themes/smoothness/jquery-ui-1.8.14.custom.css" type="text/css" />-->
12
12
13 <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML" charset="utf-8"></script>
13 <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML" charset="utf-8"></script>
14 <!-- <script type='text/javascript' src='static/mathjax/MathJax.js?config=TeX-AMS_HTML' charset='utf-8'></script> -->
14 <!-- <script type='text/javascript' src='static/mathjax/MathJax.js?config=TeX-AMS_HTML' charset='utf-8'></script> -->
15 <script type="text/javascript">
15 <script type="text/javascript">
16 if (typeof MathJax == 'undefined') {
16 if (typeof MathJax == 'undefined') {
17 console.log("Trying to load local copy of MathJax");
17 console.log("Trying to load local copy of MathJax");
18 document.write(unescape("%3Cscript type='text/javascript' src='static/mathjax/MathJax.js%3Fconfig=TeX-AMS_HTML' charset='utf-8'%3E%3C/script%3E"));
18 document.write(unescape("%3Cscript type='text/javascript' src='static/mathjax/MathJax.js%3Fconfig=TeX-AMS_HTML' charset='utf-8'%3E%3C/script%3E"));
19 }
19 }
20 </script>
20 </script>
21
21
22 <link rel="stylesheet" href="static/codemirror-2.12/lib/codemirror.css">
22 <link rel="stylesheet" href="static/codemirror-2.12/lib/codemirror.css">
23 <link rel="stylesheet" href="static/codemirror-2.12/mode/rst/rst.css">
23 <link rel="stylesheet" href="static/codemirror-2.12/mode/rst/rst.css">
24 <link rel="stylesheet" href="static/codemirror-2.12/theme/ipython.css">
24 <link rel="stylesheet" href="static/codemirror-2.12/theme/ipython.css">
25 <link rel="stylesheet" href="static/codemirror-2.12/theme/default.css">
25 <link rel="stylesheet" href="static/codemirror-2.12/theme/default.css">
26
26
27 <link rel="stylesheet" href="static/css/boilerplate.css" type="text/css" />
27 <link rel="stylesheet" href="static/css/boilerplate.css" type="text/css" />
28 <link rel="stylesheet" href="static/css/layout.css" type="text/css" />
28 <link rel="stylesheet" href="static/css/layout.css" type="text/css" />
29 <link rel="stylesheet" href="static/css/base.css" type="text/css" />
29 <link rel="stylesheet" href="static/css/base.css" type="text/css" />
30 <link rel="stylesheet" href="static/css/notebook.css" type="text/css" />
30 <link rel="stylesheet" href="static/css/notebook.css" type="text/css" />
31 <link rel="stylesheet" href="static/css/renderedhtml.css" type="text/css" />
31 <link rel="stylesheet" href="static/css/renderedhtml.css" type="text/css" />
32
32
33
33
34 </head>
34 </head>
35
35
36 <body>
36 <body>
37
37
38 <div id="header">
38 <div id="header">
39 <span id="ipython_notebook"><h1>IPython Notebook</h1></span>
39 <span id="ipython_notebook"><h1>IPython Notebook</h1></span>
40 <span id="save_widget">
40 <span id="save_widget">
41 <input type="text" id="notebook_name" size="20"></textarea>
41 <input type="text" id="notebook_name" size="20"></textarea>
42 <span id="notebook_id" style="display:none">{{notebook_id}}</span>
42 <span id="notebook_id" style="display:none">{{notebook_id}}</span>
43 <button id="save_notebook">Save</button>
43 <button id="save_notebook">Save</button>
44 </span>
44 </span>
45 <span id="kernel_status">Idle</span>
45 <span id="kernel_status">Idle</span>
46 </div>
46 </div>
47
47
48 <div id="main_app">
48 <div id="main_app">
49
49
50 <div id="left_panel">
50 <div id="left_panel">
51
51
52 <div id="notebook_section">
52 <div id="notebook_section">
53 <h3 class="section_header">Notebook</h3>
53 <h3 class="section_header">Notebook</h3>
54 <div class="section_content">
54 <div class="section_content">
55 <div class="section_row">
55 <div class="section_row">
56 <span id="new_open" class="section_row_buttons">
56 <span id="new_open" class="section_row_buttons">
57 <button id="new_notebook">New</button>
57 <button id="new_notebook">New</button>
58 <button id="open_notebook">Open</button>
58 <button id="open_notebook">Open</button>
59 </span>
59 </span>
60 <span class="section_row_header">Actions</span>
60 <span class="section_row_header">Actions</span>
61 </div>
61 </div>
62 <div class="section_row">
62 <div class="section_row">
63 <span>
63 <span>
64 <select id="download_format">
64 <select id="download_format">
65 <option value="json">ipynb</option>
65 <option value="json">ipynb</option>
66 <option value="py">py</option>
66 <option value="py">py</option>
67 </select>
67 </select>
68 </span>
68 </span>
69 <span class="section_row_buttons">
69 <span class="section_row_buttons">
70 <button id="download_notebook">Download</button>
71 </span>
72 </div>
73 <div class="section_row">
74 <span class="section_row_buttons">
70 <span id="print_widget">
75 <span id="print_widget">
71 <button id="print_notebook">Print</button>
76 <button id="print_notebook">Print</button>
72 </span>
77 </span>
73
74 <button id="download_notebook">Download</button>
75 </span>
78 </span>
76 </div>
79 </div>
77 </div>
80 </div>
78 </div>
81 </div>
79
82
80 <div id="cell_section">
83 <div id="cell_section">
81 <h3 class="section_header">Cell</h3>
84 <h3 class="section_header">Cell</h3>
82 <div class="section_content">
85 <div class="section_content">
83 <div class="section_row">
86 <div class="section_row">
84 <span class="section_row_buttons">
87 <span class="section_row_buttons">
85 <button id="delete_cell">Delete</button>
88 <button id="delete_cell">Delete</button>
86 </span>
89 </span>
87 <span class="section_row_header">Actions</span>
90 <span class="section_row_header">Actions</span>
88 </div>
91 </div>
89 <div class="section_row">
92 <div class="section_row">
90 <span id="cell_type" class="section_row_buttons">
93 <span id="cell_type" class="section_row_buttons">
91 <button id="to_code">Code</button>
94 <button id="to_code">Code</button>
92 <!-- <button id="to_html">HTML</button>-->
95 <!-- <button id="to_html">HTML</button>-->
93 <button id="to_markdown">Markdown</button>
96 <button id="to_markdown">Markdown</button>
94 </span>
97 </span>
95 <span class="button_label">Format</span>
98 <span class="button_label">Format</span>
96 </div>
99 </div>
97 <div class="section_row">
100 <div class="section_row">
98 <span id="cell_output" class="section_row_buttons">
101 <span id="cell_output" class="section_row_buttons">
99 <button id="toggle_output">Toggle</button>
102 <button id="toggle_output">Toggle</button>
100 <button id="clear_all_output">ClearAll</button>
103 <button id="clear_all_output">ClearAll</button>
101 </span>
104 </span>
102 <span class="button_label">Output</span>
105 <span class="button_label">Output</span>
103 </div>
106 </div>
104 <div class="section_row">
107 <div class="section_row">
105 <span id="insert" class="section_row_buttons">
108 <span id="insert" class="section_row_buttons">
106 <button id="insert_cell_above">Above</button>
109 <button id="insert_cell_above">Above</button>
107 <button id="insert_cell_below">Below</button>
110 <button id="insert_cell_below">Below</button>
108 </span>
111 </span>
109 <span class="button_label">Insert</span>
112 <span class="button_label">Insert</span>
110 </div>
113 </div>
111 <div class="section_row">
114 <div class="section_row">
112 <span id="move" class="section_row_buttons">
115 <span id="move" class="section_row_buttons">
113 <button id="move_cell_up">Up</button>
116 <button id="move_cell_up">Up</button>
114 <button id="move_cell_down">Down</button>
117 <button id="move_cell_down">Down</button>
115 </span>
118 </span>
116 <span class="button_label">Move</span>
119 <span class="button_label">Move</span>
117 </div>
120 </div>
118 <div class="section_row">
121 <div class="section_row">
119 <span id="run_cells" class="section_row_buttons">
122 <span id="run_cells" class="section_row_buttons">
120 <button id="run_selected_cell">Selected</button>
123 <button id="run_selected_cell">Selected</button>
121 <button id="run_all_cells">All</button>
124 <button id="run_all_cells">All</button>
122 </span>
125 </span>
123 <span class="button_label">Run</span>
126 <span class="button_label">Run</span>
124 </div>
127 </div>
125 <div class="section_row">
128 <div class="section_row">
126 <span id="autoindent_span">
129 <span id="autoindent_span">
127 <input type="checkbox" id="autoindent" checked="true"></input>
130 <input type="checkbox" id="autoindent" checked="true"></input>
128 </span>
131 </span>
129 <span class="checkbox_label">Autoindent:</span>
132 <span class="checkbox_label">Autoindent:</span>
130 </div>
133 </div>
131 </div>
134 </div>
132 </div>
135 </div>
133
136
134 <div id="kernel_section">
137 <div id="kernel_section">
135 <h3 class="section_header">Kernel</h3>
138 <h3 class="section_header">Kernel</h3>
136 <div class="section_content">
139 <div class="section_content">
137 <div class="section_row">
140 <div class="section_row">
138 <span id="int_restart" class="section_row_buttons">
141 <span id="int_restart" class="section_row_buttons">
139 <button id="int_kernel">Interrupt</button>
142 <button id="int_kernel">Interrupt</button>
140 <button id="restart_kernel">Restart</button>
143 <button id="restart_kernel">Restart</button>
141 </span>
144 </span>
142 <span class="section_row_header">Actions</span>
145 <span class="section_row_header">Actions</span>
143 </div>
146 </div>
144 <div class="section_row">
147 <div class="section_row">
145 <span id="kernel_persist">
148 <span id="kernel_persist">
146 <input type="checkbox" id="kill_kernel"></input>
149 <input type="checkbox" id="kill_kernel"></input>
147 </span>
150 </span>
148 <span class="checkbox_label">Kill kernel upon exit:</span>
151 <span class="checkbox_label">Kill kernel upon exit:</span>
149 </div>
152 </div>
150 </div>
153 </div>
151 </div>
154 </div>
152
155
153 <div id="help_section">
156 <div id="help_section">
154 <h3 class="section_header">Help</h3>
157 <h3 class="section_header">Help</h3>
155 <div class="section_content">
158 <div class="section_content">
156 <div class="section_row">
159 <div class="section_row">
157 <span id="help_buttons0" class="section_row_buttons">
160 <span id="help_buttons0" class="section_row_buttons">
158 <a id="python_help" href="http://docs.python.org" target="_blank">Python</a>
161 <a id="python_help" href="http://docs.python.org" target="_blank">Python</a>
159 <a id="ipython_help" href="http://ipython.org/documentation.html" target="_blank">IPython</a>
162 <a id="ipython_help" href="http://ipython.org/documentation.html" target="_blank">IPython</a>
160 <a id="numpy_help" href="http://docs.scipy.org/doc/numpy/reference/" target="_blank">NumPy</a>
161 </span>
163 </span>
162 <span class="section_row_header">Links</span>
164 <span class="section_row_header">Links</span>
163 </div>
165 </div>
164 <div class="section_row">
166 <div class="section_row">
165 <span id="help_buttons1" class="section_row_buttons">
167 <span id="help_buttons1" class="section_row_buttons">
166 <a id="matplotlib_help" href="http://matplotlib.sourceforge.net/" target="_blank">MPL</a>
168 <a id="numpy_help" href="http://docs.scipy.org/doc/numpy/reference/" target="_blank">NumPy</a>
167 <a id="scipy_help" href="http://docs.scipy.org/doc/scipy/reference/" target="_blank">SciPy</a>
169 <a id="scipy_help" href="http://docs.scipy.org/doc/scipy/reference/" target="_blank">SciPy</a>
170 </span>
171 </div>
172 <div class="section_row">
173 <span id="help_buttons2" class="section_row_buttons">
174 <a id="matplotlib_help" href="http://matplotlib.sourceforge.net/" target="_blank">MPL</a>
168 <a id="sympy_help" href="http://docs.sympy.org/dev/index.html" target="_blank">SymPy</a>
175 <a id="sympy_help" href="http://docs.sympy.org/dev/index.html" target="_blank">SymPy</a>
169 </span>
176 </span>
170 </div>
177 </div>
171 <div class="section_row">
178 <div class="section_row">
172 <span class="help_string">run selected cell</span>
179 <span class="help_string">run selected cell</span>
173 <span class="help_string_label">Shift-Enter |</span>
180 <span class="help_string_label">Shift-Enter |</span>
174 </div>
181 </div>
175 <div class="section_row">
182 <div class="section_row">
176 <span class="help_string">run in terminal mode</span>
183 <span class="help_string">run in terminal mode</span>
177 <span class="help_string_label">Ctrl-Enter |</span>
184 <span class="help_string_label">Ctrl-Enter |</span>
178 </div>
185 </div>
179 </div>
186 </div>
180 </div>
187 </div>
181
188
182 </div>
189 </div>
183 <div id="left_panel_splitter"></div>
190 <div id="left_panel_splitter"></div>
184 <div id="notebook_panel">
191 <div id="notebook_panel">
185 <div id="notebook"></div>
192 <div id="notebook"></div>
186 <div id="pager_splitter"></div>
193 <div id="pager_splitter"></div>
187 <div id="pager"></div>
194 <div id="pager"></div>
188 </div>
195 </div>
189
196
190 </div>
197 </div>
191
198
192 <script src="static/jquery/js/jquery-1.6.2.min.js" type="text/javascript" charset="utf-8"></script>
199 <script src="static/jquery/js/jquery-1.6.2.min.js" type="text/javascript" charset="utf-8"></script>
193 <script src="static/jquery/js/jquery-ui-1.8.14.custom.min.js" type="text/javascript" charset="utf-8"></script>
200 <script src="static/jquery/js/jquery-ui-1.8.14.custom.min.js" type="text/javascript" charset="utf-8"></script>
194 <script src="static/jquery/js/jquery.autogrow.js" type="text/javascript" charset="utf-8"></script>
201 <script src="static/jquery/js/jquery.autogrow.js" type="text/javascript" charset="utf-8"></script>
195
202
196 <script src="static/codemirror-2.12/lib/codemirror.js" charset="utf-8"></script>
203 <script src="static/codemirror-2.12/lib/codemirror.js" charset="utf-8"></script>
197 <script src="static/codemirror-2.12/mode/python/python.js" charset="utf-8"></script>
204 <script src="static/codemirror-2.12/mode/python/python.js" charset="utf-8"></script>
198 <script src="static/codemirror-2.12/mode/htmlmixed/htmlmixed.js" charset="utf-8"></script>
205 <script src="static/codemirror-2.12/mode/htmlmixed/htmlmixed.js" charset="utf-8"></script>
199 <script src="static/codemirror-2.12/mode/xml/xml.js" charset="utf-8"></script>
206 <script src="static/codemirror-2.12/mode/xml/xml.js" charset="utf-8"></script>
200 <script src="static/codemirror-2.12/mode/javascript/javascript.js" charset="utf-8"></script>
207 <script src="static/codemirror-2.12/mode/javascript/javascript.js" charset="utf-8"></script>
201 <script src="static/codemirror-2.12/mode/css/css.js" charset="utf-8"></script>
208 <script src="static/codemirror-2.12/mode/css/css.js" charset="utf-8"></script>
202 <script src="static/codemirror-2.12/mode/rst/rst.js" charset="utf-8"></script>
209 <script src="static/codemirror-2.12/mode/rst/rst.js" charset="utf-8"></script>
203
210
204 <script src="static/pagedown/Markdown.Converter.js" charset="utf-8"></script>
211 <script src="static/pagedown/Markdown.Converter.js" charset="utf-8"></script>
205
212
206 <script src="static/js/namespace.js" type="text/javascript" charset="utf-8"></script>
213 <script src="static/js/namespace.js" type="text/javascript" charset="utf-8"></script>
207 <script src="static/js/utils.js" type="text/javascript" charset="utf-8"></script>
214 <script src="static/js/utils.js" type="text/javascript" charset="utf-8"></script>
208 <script src="static/js/cell.js" type="text/javascript" charset="utf-8"></script>
215 <script src="static/js/cell.js" type="text/javascript" charset="utf-8"></script>
209 <script src="static/js/codecell.js" type="text/javascript" charset="utf-8"></script>
216 <script src="static/js/codecell.js" type="text/javascript" charset="utf-8"></script>
210 <script src="static/js/textcell.js" type="text/javascript" charset="utf-8"></script>
217 <script src="static/js/textcell.js" type="text/javascript" charset="utf-8"></script>
211 <script src="static/js/kernel.js" type="text/javascript" charset="utf-8"></script>
218 <script src="static/js/kernel.js" type="text/javascript" charset="utf-8"></script>
212 <script src="static/js/kernelstatus.js" type="text/javascript" charset="utf-8"></script>
219 <script src="static/js/kernelstatus.js" type="text/javascript" charset="utf-8"></script>
213 <script src="static/js/layout.js" type="text/javascript" charset="utf-8"></script>
220 <script src="static/js/layout.js" type="text/javascript" charset="utf-8"></script>
214 <script src="static/js/savewidget.js" type="text/javascript" charset="utf-8"></script>
221 <script src="static/js/savewidget.js" type="text/javascript" charset="utf-8"></script>
215 <script src="static/js/pager.js" type="text/javascript" charset="utf-8"></script>
222 <script src="static/js/pager.js" type="text/javascript" charset="utf-8"></script>
216 <script src="static/js/panelsection.js" type="text/javascript" charset="utf-8"></script>
223 <script src="static/js/panelsection.js" type="text/javascript" charset="utf-8"></script>
217 <script src="static/js/printwidget.js" type="text/javascript" charset="utf-8"></script>
224 <script src="static/js/printwidget.js" type="text/javascript" charset="utf-8"></script>
218 <script src="static/js/leftpanel.js" type="text/javascript" charset="utf-8"></script>
225 <script src="static/js/leftpanel.js" type="text/javascript" charset="utf-8"></script>
219 <script src="static/js/notebook.js" type="text/javascript" charset="utf-8"></script>
226 <script src="static/js/notebook.js" type="text/javascript" charset="utf-8"></script>
220 <script src="static/js/notebook_main.js" type="text/javascript" charset="utf-8"></script>
227 <script src="static/js/notebook_main.js" type="text/javascript" charset="utf-8"></script>
221
228
222
229
223 </body>
230 </body>
224
231
225 </html>
232 </html>
226
233
227
234
General Comments 0
You need to be logged in to leave comments. Login now