I've committed version 2.0 of Tapestry Bootstrap to Github.

https://github.com/trsvax/tapestry-bootstrap

This version supports Twitter Bootstrap version 2.0

http://twitter.github.com/bootstrap/index.html

This is a complete rewrite of the first version and is very early
Alpha.The first version required rewriting some components to create
the HTML structure required by the Bootstrap CSS. After a while this
seemed like a very bad path to head down so I started over.

This version takes a broader scope. The idea is to support any
existing components and allow multiple CSS frameworks to exist at the
same time. To accomplish this there is one mixin called FW (framework)
that is added to every component via a Worker. This mixin just adds an
element around the body of its component. After the page is rendered a
Visitor finds these elements and rewrites the HTML to the supported
framework if needed. The Visitors are pluggable. This allows the tml
to contain something like:

<t:tb.navbar fw.type="navbar-fixed" fw.projectName="Tapestry Bootstrap">
  <t:tb.nav>
    <t:pagelink page="ComboButtons" active="true">ComboButtons</t:pagelink>
    <t:pagelink page="Form">Form</t:pagelink>
    <t:pagelink page="NavBar">NavBar</t:pagelink>
    <t:pagelink page="Table">Table</t:pagelink>
  </t:tb.nav>
  <t:form class="pull-right">
     <t:textfield t:id="search" placeholder="Search"/>
   </t:form>                    
</t:tb.navbar>

instead of

<div class="navbar navbar-fixed">
  <div class="navbar-inner">
    <div class="container">
    <ul class="nav">
      <li class="active">
      <a href="#">Home</a>
      </li>
      <li><a href="#">Link</a></li>
      <li><a href="#">Link</a></li>
     </ul>
    </div>
  </div>
</div>

because the Visitor adds all the extra elements required by the framework.

To use the existing Grid component just include the type:

<t:grid t:id="addresses" fw.type="table-striped table-bordered
table-condensed"/>

In this case the Visitor converts the HTML output by Grid into the
structure needed by Bootstrap.

I've got 2 projects currently using the framework so I'll be flushing
out the other components soon.

To run the samples

mvn jetty:run

Thanks
Barry

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to