1 """Decorators to enhance the docstrings of classes
2 """
3
5 """Class decorator to append an image of the default view for
6 an entity to an entity class. The image can be generated by using
7 the testing framework to create images of all default views in an
8 application ::
9
10 @documented_entity()
11 class Movie(Entity):
12 '''A movie as played in the theater'''
13 title = Field(Unicode(50))
14
15 The resulting docstring of the Movie entity will be ::
16
17 '''A movie as played in the theater
18
19 image ../_static/entityviews/new_view_movie.png
20 '''
21 """
22
23 def document_entity(model):
24 model.__doc__ = (model.__doc__ or '') + """
25
26 .. image:: ../_static/entityviews/new_view_%s.png
27 """%(model.__name__.lower())
28 return model
29
30 return document_entity
31
32
34 """Class decorator to append an image of the default editor of
35 a field type to the docstring of the type"""
36
37 def document_type(field_type):
38 field_type.__doc__ = (field_type.__doc__ or '') + """
39
40 .. image:: ../_static/editors/%s_editable.png
41 """
42 return field_type
43
44 return document_type
45