ó
0¾I]c           @   sl  d  Z  d d l m Z d d l m Z d d l m Z m Z d d l m	 Z	 d d l
 m Z d d l m Z m Z m Z d d	 l m Z d
 e e e	 f d „  ƒ  YZ e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z e d e f d „  ƒ  Yƒ Z d S(   s;   String class.

Represents a unicode string using a widget.
i   (   t   DescriptionWidget(   t   ValueWidget(   t   CallbackDispatchert   register(   t
   CoreWidget(   t
   TypedTupleiÿÿÿÿ(   t   Unicodet   Boolt   Int(   t   warnt   _Stringc           B   sk   e  Z d  Z e d d ƒ j d e ƒ Z e d d d ƒj d e ƒ Z d d „ Z	 e d ƒ j d e ƒ Z
 RS(	   s:   Base class used to create widgets that represent a string.t   helps   String valuet   syncu   â€‹s7   Placeholder text to display when nothing has been typedc         K   s3   | d  k	 r | | d <n  t t |  ƒ j |   d  S(   Nt   value(   t   Nonet   superR
   t   __init__(   t   selfR   t   kwargs(    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR      s    t   StringModelN(   t   __name__t
   __module__t   __doc__R   t   tagt   TrueR   t   placeholderR   R   t   _model_name(    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR
      s
   t   HTMLc           B   s>   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z RS(   s#   Renders the string `value` as HTML.t   HTMLViewR   t	   HTMLModel(   R   R   R   R   R   R   t
   _view_nameR   (    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR   %   s   t   HTMLMathc           B   s>   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z RS(   s;   Renders the string `value` as HTML, and render mathematics.t   HTMLMathViewR   t   HTMLMathModel(   R   R   R   R   R   R   R   R   (    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR   +   s   t   Labelc           B   s>   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z RS(   sƒ   Label widget.

    It also renders math inside the string `value` as Latex (requires $ $ or
    $$ $$ and similar latex tags).
    t	   LabelViewR   t
   LabelModel(   R   R   R   R   R   R   R   R   (    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR"   2   s   t   Textareac           B   sž   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z e d	 d e d d ƒj d e ƒ Z
 e e d d ƒj d e ƒ Z e e d d ƒj d e ƒ Z RS(
   s   Multiline text area widget.t   TextareaViewR   t   TextareaModelt
   allow_noneR   s   The number of rows to display.s   Enable or disable user changessl   Update the value as the user types. If False, update on submission, e.g., pressing Enter or navigating away.N(   R   R   R   R   R   R   R   R   R   R   t   rowsR   t   Falset   disabledt   continuous_update(    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR%   =   s   $t   Textc           B   s˜   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z e e	 d d ƒj d e ƒ Z
 e e d d ƒj d e ƒ Z d „  Z d „  Z e	 d	 „ Z RS(
   s   Single line textbox widget.t   TextViewR   t	   TextModelR   s   Enable or disable user changessl   Update the value as the user types. If False, update on submission, e.g., pressing Enter or navigating away.c         O   s9   t  t |  ƒ j | | Ž  t ƒ  |  _ |  j |  j ƒ d  S(   N(   R   R-   R   R   t   _submission_callbackst   on_msgt   _handle_string_msg(   R   t   argsR   (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR   N   s    c         C   s,   | j  d d ƒ d k r( |  j |  ƒ n  d S(   s†   Handle a msg from the front-end.

        Parameters
        ----------
        content: dict
            Content of the msg.
        t   eventt    t   submitN(   t   getR0   (   R   t   _t   contentt   buffers(    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR2   S   s    c         C   s6   d d l  } | j d t ƒ |  j j | d | ƒd S(   sE  (Un)Register a callback to handle text submission.

        Triggered when the user clicks enter.

        Parameters
        ----------
        callback: callable
            Will be called with exactly one argument: the Widget instance
        remove: bool (optional)
            Whether to unregister the callback
        iÿÿÿÿNs™   on_submit is deprecated. Instead, set the .continuous_update attribute to False and observe the value changing with: mywidget.observe(callback, 'value').t   remove(   t   warningsR	   t   DeprecationWarningR0   t   register_callback(   R   t   callbackR;   R<   (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyt	   on_submit^   s    (   R   R   R   R   R   R   R   R   R   R*   R+   R,   R   R2   R@   (    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyR-   F   s   		t   Passwordc           B   se   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z e e	 d d ƒj d e ƒ Z
 d „  Z RS(   s   Single line textbox widget.t   PasswordViewR   t   PasswordModelR   s   Enable or disable user changesc         c   s>   t  t |  ƒ j ƒ  } x" | D] } | d k r | Vq q Wd  S(   NR   (   R   RA   t
   _repr_keys(   R   t
   super_keyst   key(    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyRD   v   s    (   R   R   R   R   R   R   R   R   R   R*   R+   RD   (    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyRA   o   s
   t   Comboboxc           B   s€   e  Z d  Z e d ƒ j d e ƒ Z e d ƒ j d e ƒ Z e d e ƒ  d d ƒ j d e ƒ Z	 e
 e d d ƒj d e ƒ Z RS(   sC   Single line textbox widget with a dropdown and autocompletion.
    t   ComboboxModelR   t   ComboboxViewt   traitR   s!   Dropdown options for the comboboxsD   If set, ensure value is in options. Implies continuous_update=False.(   R   R   R   R   R   R   R   R   R   t   optionsR   R*   t   ensure_option(    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyRG   ~   s   		N(   R   t   widget_descriptionR    t   valuewidgetR   t   widgetR   R   t   widget_coreR   t   trait_typesR   t	   traitletsR   R   R   R<   R	   R
   R   R   R"   R%   R-   RA   RG   (    (    (    s?   lib/python2.7/site-packages/ipywidgets/widgets/widget_string.pyt   <module>   s,   
(