Changeset 2883:e57dd27deb01 in livinglogic.python.xist

Show
Ignore:
Timestamp:
08/14/07 11:21:27 (12 years ago)
Author:
Walter Doerwald <walter@…>
Branch:
default
Message:

Factor out common code from StyleAttr?.parsed() and StyleAttr?._publishattrvalue()

Files:
1 modified

Legend:

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

    r2882 r2883  
    21092109    serializer = cssserialize.CSSSerializer(cssserialize.Preferences(indent="")) 
    21102110 
     2111    def _transform(self, replacer): 
     2112        style = cssutils.parseString(u"a{%s}" % self).cssRules[0].style 
     2113        css.replaceurl(style, replacer) 
     2114        return self.serializer.do_css_CSSStyleDeclaration(style) 
     2115 
    21112116    def parsed(self, parser, start=None): 
    21122117        if not self.isfancy() and parser.base is not None: 
     
    21142119            def prependbase(u): 
    21152120                return parser.base/u 
    2116             style = cssutils.parseString(u"a{%s}" % self).cssRules[0].style 
    2117             css.replaceurl(style, prependbase) 
    2118             return self.__class__(self.serializer.do_css_CSSStyleDeclaration(style)) 
     2121            return self.__class__(self._transform(prependbase)) 
    21192122        return self 
    21202123 
     
    21242127            def reltobase(u): 
    21252128                return u.relative(publisher.base) 
    2126             style = cssutils.parseString(u"a{%s}" % self).cssRules[0].style 
    2127             css.replaceurl(style, reltobase) 
    2128             new = Frag(self.serializer.do_css_CSSStyleDeclaration(style)) 
    2129             for part in new.publish(publisher): 
     2129            for part in Frag(self._transform(reltobase)).publish(publisher): 
    21302130                yield part 
    21312131        else: