ó
ĊZc           @   s   d  e  f d     YZ d S(   t   Prefsc           B   sJ   e  Z d    Z d   Z d   Z d d  Z d   Z d   Z d   Z	 RS(   c         C   s   i  |  _  i  |  _ d  S(   N(   t   prefst	   callbacks(   t   self(    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   __init__   s    	c         C   s4   | |  j  k r# |  j  | |  n | |  j | <d S(   s-   Set the value of `key` preference to `value`.N(   R   R   (   R   t   keyt   value(    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   set   s    c         C   s7   | |  j  k r g  |  j  | <n  |  j  | j |  d S(   sq   Add an entry to a list preference

        Add `value` to the list of entries for the `key` preference.

        N(   R   t   append(   R   R   R   (    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   add   s    c         C   s   |  j  j | |  S(   s#   Get the value of the key preference(   R   t   get(   R   R   t   default(    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyR
      s    c         C   s   | |  j  | <d S(   s   Add `key` preference with `callback` function

        Whenever `key` is set the callback is called with the
        given `value` as parameter.

        N(   R   (   R   R   t   callback(    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   add_callback   s    c         C   s   |  j  | |  d  S(   N(   R   (   R   R   R   (    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   __setitem__%   s    c         C   s   |  j  |  S(   N(   R
   (   R   R   (    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   __getitem__(   s    N(
   t   __name__t
   __module__R   R   R	   t   NoneR
   R   R   R   (    (    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyR       s   			
			N(   t   objectR    (    (    (    s.   lib/python2.7/site-packages/rope/base/prefs.pyt   <module>   t    