diff --git a/src/graph_ZCA/components.py b/src/graph_ZCA/components.py --- a/src/graph_ZCA/components.py +++ b/src/graph_ZCA/components.py @@ -4,14 +4,14 @@ from zope.component import adapts, getGl gsm = getGlobalSiteManager() from graph_ZCA.base import BaseAdapter, BaseComponent, BaseFactory -from graph_ZCA.interfaces import ITickLabelAdapter, IAxis, IViewBox, IImage +from graph_ZCA.interfaces import ITickLabel, IAxis, IViewBox, IImage -class TickLabelAdapter(BaseAdapter): +class TickLabelComponent(BaseComponent): """ Generates Ticklabels for an axis """ - implementsOnly(ITickLabelAdapter) + implementsOnly(ITickLabel) adapts(IAxis) def __init__(self, axis): @@ -23,7 +23,12 @@ class TickLabelAdapter(BaseAdapter): def render(self): return map(str, range(self.axis.start, self.axis.end)) -gsm.registerAdapter(TickLabelAdapter) +gsm.registerAdapter(TickLabelComponent) + + +class TickLabel(BaseFactory): + + target_interface = ITickLabel class AxisComponent(BaseComponent): @@ -41,7 +46,7 @@ class AxisComponent(BaseComponent): self.end = end def get_tick_labels(self): - return ITickLabelAdapter(self).render() + return TickLabel(self)().render() def render(self): return '%s: ' % self.__class__.__name__ + self.orientation + ':' + ' '.join(self.get_tick_labels())