Ignore that first one, it makes no sense, really not sure what I was thinking there...
On Thu, Jun 18, 2009 at 10:25 AM, Kevin Wright < [email protected]> wrote: > How about this one then: > > bind(nodeseq, "prefix", > ("suffix", node) -> Text("this text replaced a prefix:suffix element") > ); > > On problem is it mucks up the Pair[String, () => NodeSeq] that bind > expects, not too pretty either. > > One other solution I considered was an alternative overloaded version of > bind, something like: > bind(nodeseq, "prefix"){ Match("suffix") => Text("this text replaced a > prefix:suffix element"), > node @ Match("suffix") => ... do something with the node, bindhelpers > not necessary > } > > where Match is an extractor, possibly accepting XPath expressions > > > > On Thu, Jun 18, 2009 at 12:29 AM, David Pollak < > [email protected]> wrote: > >> Crud... adding xpathisms to bind... where will it end? :-) >> >> >> >> >> On Wed, Jun 17, 2009 at 3:41 PM, Kevin Wright < >> [email protected]> wrote: >> >>> One possibility I already considered is something like: >>> bind(nodeseq, "prefix", >>> "suffix" -> Text("matched an element"), >>> "@suffix" -> Text("matched an attribute"), >>> "@suffix=value" -> Text("matched an attribute with specified >>> value")); >>> >>> the bindings here would respectively match the elements: >>> >>> <prefix:suffix>content</prefix:suffix> >>> <span prefix:suffix="placeholder">content</span> >>> <span prefix:suffix="value">content</span> >>> >>> Use of the span elements above was an arbitrary choice >>> >>> What's missing is an intuitive way to access the node that has been >>> bound, especially if you only want to change the contents >>> >>> >>> On Wed, Jun 17, 2009 at 10:19 PM, David Pollak < >>> [email protected]> wrote: >>> >>>> >>>> >>>> On Wed, Jun 17, 2009 at 2:07 PM, Kris Nuttycombe < >>>> [email protected]> wrote: >>>> >>>>> >>>>> We'd still need some attribute to disambiguate in the case of multiple >>>>> textarea tags, wouldn't we? >>>> >>>> >>>> I don't think so. The only NodeSeq being passed to the function is the >>>> NodeSeq inside the tag that's getting bound to. >>>> >>>> >>>>> >>>>> Kris >>>>> >>>>> On Wed, Jun 17, 2009 at 2:51 PM, David >>>>> Pollak<[email protected]> wrote: >>>>> > I can see a set of methods that look like: >>>>> > textarea(f: String => Unit)(n: NodeSeq) that will slurp the values >>>>> and >>>>> > attributes out of the NodeSeq... so you'd bind like: >>>>> > "biography" -> textarea(s => setBio(s)) _ >>>>> > >>>>> > On Wed, Jun 17, 2009 at 10:22 AM, Matt Williams <[email protected]> >>>>> wrote: >>>>> >> >>>>> >> I wholeheartedly agree with the philosophy of separating the display >>>>> >> from the program logic, and am currently getting to grips with the >>>>> >> generators, but am finding that now I end up with a degree of markup >>>>> >> within my code. >>>>> >> >>>>> >> Can you think of any caveats to infering the node type passed, and >>>>> >> dynamically using the relevant generators to construct the returned >>>>> >> node. >>>>> >> >>>>> >> I am thinking something along the lines of: >>>>> >> >>>>> >> <person:biography> >>>>> >> <textarea style="myStyle" cols="20" rows="5"> >>>>> >> This is a sample of some biography text >>>>> >> </textarea> >>>>> >> </person:biography> >>>>> >> >>>>> >> Where it would automatically infer that it is a textarea, pass >>>>> through >>>>> >> the relevant attributes, and insert whatever function, values, etc I >>>>> >> have specified in my snippet. >>>>> >> >>>>> >> What are your thoughts on this? >>>>> >> >>>>> >> Brgds, >>>>> >> >>>>> >> Matt >>>>> >> >>>>> >> >>>>> >> >>>>> > >>>>> > >>>>> > >>>>> > -- >>>>> > Lift, the simply functional web framework http://liftweb.net >>>>> > Beginning Scala http://www.apress.com/book/view/1430219890 >>>>> > Follow me: http://twitter.com/dpp >>>>> > Git some: http://github.com/dpp >>>>> > >>>>> > > >>>>> > >>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> Lift, the simply functional web framework http://liftweb.net >>>> Beginning Scala http://www.apress.com/book/view/1430219890 >>>> Follow me: http://twitter.com/dpp >>>> Git some: http://github.com/dpp >>>> >>>> >>>> >>> >>> >>> >> >> >> -- >> Lift, the simply functional web framework http://liftweb.net >> Beginning Scala http://www.apress.com/book/view/1430219890 >> Follow me: http://twitter.com/dpp >> Git some: http://github.com/dpp >> >> >> >> > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---
