MoinMoin has many places where dynamic data is displayed in the form of lists and other simple views. To enable easier caching and uniform layout (skinning), it's desirable to rewrite those features to use simple widgets like a ListWidget. This also allows to easily switch between lists and (multi-column) tables, and it generally decouples business logic from user interface.
Based on these simple widgets, other things like SearchResultWidget and PageListWidget can be envisioned, leading to more code reuse.
Places where this is applicable:
- many macros and actions
searches (../ExtendedSearch)
- "create new pages" display (list of templates)
- file attachments