Changeset 3161:d60bcf2647f2 in livinglogic.python.xist

Show
Ignore:
Timestamp:
01/21/08 19:13:12 (12 years ago)
Author:
Walter Doerwald <walter@…>
Branch:
default
Message:

Use IPython generic function result_display() for output instead of ipapi.set_hook().

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/ll/xist/presenters.py

    r3128 r3161  
    750750 
    751751try: 
    752     from IPython import ipapi 
    753     api = ipapi.get() 
    754 except (ImportError, AttributeError): 
    755     api = None 
    756  
    757 if api is not None: 
    758     def displayhook(self, obj): 
    759         if isinstance(obj, xsc.Node) and defaultpresenter is not None: 
    760             obj = defaultpresenter(obj) 
    761         raise ipapi.TryNext(obj) 
    762     api.set_hook("result_display", displayhook) 
     752    from IPython import generics, ipapi 
     753    import ipipe 
     754except ImportError: 
     755    pass 
     756else: 
     757    if hasattr(ipipe, "display_tableobject"): 
     758        @generics.result_display.when_type(xsc.Node) 
     759        def displayhook(obj): 
     760            if defaultpresenter is not None: 
     761                return ipipe.display_tableobject(defaultpresenter(obj)) 
     762            raise ipapi.TryNext 
     763    else: 
     764        @generics.result_display.when_type(xsc.Node) 
     765        def displayhook(obj): 
     766            if defaultpresenter is not None: 
     767                return ipipe.displayhook(None, defaultpresenter(obj)) 
     768            raise ipapi.TryNext