<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright 2004 The Apache Software Foundation
  
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
  
       http://www.apache.org/licenses/LICENSE-2.0
  
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<!-- $Id$ -->
<!DOCTYPE page-specification PUBLIC 
  "-//Apache Software Foundation//Tapestry Specification 3.0//EN" 
  "http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">

<page-specification class="org.apache.tapestry.vlib.pages.BorrowedBooks">

  <property-specification name="error" type="java.lang.String"/>
  <property-specification name="message" type="java.lang.String"/>
  <property-specification name="currentBook" type="org.apache.tapestry.vlib.ejb.Book"/>
  <property-specification name="borrowedQuery" type="org.apache.tapestry.vlib.ejb.IBookQuery" persistent="yes"/>

  <property-specification name="sortColumn" type="org.apache.tapestry.vlib.ejb.SortColumn" persistent="yes">
  	@org.apache.tapestry.vlib.ejb.SortColumn@TITLE
  </property-specification>
  <property-specification name="descending" type="boolean" persistent="yes"/>
  
  <component id="sortTitle" type="ColumnSorter">
    <binding name="selected" expression="sortColumn"/>
    <binding name="sortColumn" expression="@org.apache.tapestry.vlib.ejb.SortColumn@TITLE"/>
    <binding name="descending" expression="descending"/>
    <binding name="listener" expression="listeners.requery"/>
  </component>   
    
  <component id="sortAuthor" copy-of="sortTitle">
    <binding name="sortColumn" expression="@org.apache.tapestry.vlib.ejb.SortColumn@AUTHOR"/>
  </component>
  
  <component id="sortPublisher" copy-of="sortTitle">
    <binding name="sortColumn" expression="@org.apache.tapestry.vlib.ejb.SortColumn@PUBLISHER"/>	
  </component>
  
  <component id="sortOwner" copy-of="sortTitle">
    <binding name="sortColumn" expression="@org.apache.tapestry.vlib.ejb.SortColumn@OWNER"/>
  </component>
  
  <component id="returnRollover" type="Rollover">
    <binding name="image" expression="assets.return"/>
    <binding name="focus" expression="assets.return_h"/>
  </component>
  
  <context-asset name="return" path="images/return.png"/>
  <context-asset name="return_h" path="images/return_h.png"/>
     
</page-specification>
