lift/framework — pull request #1568 by Shadowfiend (2014-05-27 04:30:57+00:00)
Title: Bounded Binding: Remove old bind strategy

#1548 reopened with respect to `lift_30`. This is now ready for review.

The PR blows away `bind` and most things that came with it. It preserves a few functions
that were in `BindHelpers` that were related to more general HTML manipulation, which
now live in an `HtmlHelpers` trait instead. It also rearranges the `ToCssBindPromoter`
implicits so that they are implicit classes and in a single centralized place (a
`CssBindImplicits` trait). These are mixed into `HtmlHelpers` and through there into
`Helpers`, so importing `Helpers._` will continue to import the appropriate implicit
conversions.

The second thing this does is rewrite few points where we were still leaning on
the old binding strategy, particularly `PaginatorSnippet`, the `Menu` snippet, mapper
view support stuff, `LiftScreen`, and lift-proto's `Crudify` and `ProtoUser`. The
snippets themselves may not be optimal now; however, I made the rewriting function
very similarly to how it functioned before (using CSS classes instead of the element
names that the binding style was using), leaving decisions on whether the snippets
should be further reworked for another time.

Done/pending work:
- [x] Remove `BindHelpers` and `BindHelpersSpec`
- [x] Move still-used generic stuff to `HtmlHelpers`
- [x] Preserve `BindHelpersSpec`s for `HtmlHelpers` stuff in `HtmlHelpersSpec`
- [x] Port snippets still using `bind` to CSS selector transforms
- [x] Put implicits for `ToCssBindPromoter` in a common place
- [x] Ensure untested stuff in `HtmlHelpers` is tested
- [x] Make `LiftScreen` compile without `bind`
- [x] Make `lift-proto` compile without `bind`
- [x] Make `lift-mapper` compile without `bind`
- [x] Make sure all specs are passing