##// END OF EJS Templates
This feature was discussed in #6123, but it doesn't look like anything was ever incorporated into the IPython Notebook....
This feature was discussed in #6123, but it doesn't look like anything was ever incorporated into the IPython Notebook. Here's a brief overview of the changes: - Display of messages from other clients can be toggled on and off from within a notebook, either using the ``<M-m>e`` keyboard shortcut in the web UI, or through the option in the "Kernel" menu. - notebook.js controls whether messages are displayed through a callback that is invoked from kernel.js when no callbacks are available for a message. - The UI displays ``execute_input`` messages originating from an other clients in new cells at the end of the notebook. Output messages (``execute_result`` et al.) will only be displayed if a cell exists with a matching message ID. Pending design questions: - Should each ``execute_input`` message cause a new cell to be created? - Should new cells be placed at the end of the notebook, or elsewhere? If the latter, what criteria should be followed?

File last commit:

r18533:b46a0ee8
r19164:17ac8ca3
Show More
widget_image.py
47 lines | 1.7 KiB | text/x-python | PythonLexer
Jonathan Frederic
Renamed *Widget to *,...
r17598 """Image class.
Jonathan Frederic
Add ImageWidget
r14449
Maximilian Albert
Fix copy & paste error in docstring.
r16376 Represents an image in the frontend using a widget.
Jonathan Frederic
Add ImageWidget
r14449 """
#-----------------------------------------------------------------------------
# Copyright (c) 2013, the IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
import base64
Sylvain Corlay
registering core widgets
r18531 from .widget import DOMWidget, register
Jonathan Frederic
Use CUnicode for width and height in ImageWidget
r14669 from IPython.utils.traitlets import Unicode, CUnicode, Bytes
Jonathan Frederic
Renamed *Widget to *,...
r17598 from IPython.utils.warn import DeprecatedClass
Jonathan Frederic
Add ImageWidget
r14449
#-----------------------------------------------------------------------------
# Classes
#-----------------------------------------------------------------------------
Sylvain Corlay
jupyter -> IPython
r18533 @register('IPython.Image')
Jonathan Frederic
Renamed *Widget to *,...
r17598 class Image(DOMWidget):
Jonathan Frederic
Added some doc strings on the widgets....
r17602 """Displays an image as a widget.
The `value` of this widget accepts a byte string. The byte string is the raw
image data that you want the browser to display. You can explicitly define
the format of the byte string using the `format` trait (which defaults to
"png")."""
Jonathan Frederic
s/view_name/_view_name
r14701 _view_name = Unicode('ImageView', sync=True)
Jonathan Frederic
Add ImageWidget
r14449
# Define the custom state properties to sync with the front-end
Jonathan Frederic
sync=True isntead of a keys list
r14588 format = Unicode('png', sync=True)
Jonathan Frederic
Use CUnicode for width and height in ImageWidget
r14669 width = CUnicode(sync=True)
height = CUnicode(sync=True)
Jonathan Frederic
sync=True isntead of a keys list
r14588 _b64value = Unicode(sync=True)
Jonathan Frederic
Add ImageWidget
r14449
value = Bytes()
def _value_changed(self, name, old, new):
Maximilian Albert
Fix copy & paste error in docstring.
r16376 self._b64value = base64.b64encode(new)
Jonathan Frederic
Renamed *Widget to *,...
r17598
Jonathan Frederic
Added some doc strings on the widgets....
r17602
# Remove in IPython 4.0
Jonathan Frederic
Renamed *Widget to *,...
r17598 ImageWidget = DeprecatedClass(Image, 'ImageWidget')