<?xml version="1.0" encoding="UTF-8"?>
<response>
  <status>success</status>
  <result>
    <project>
      <id>375533</id>
      <name>wicket-tree</name>
      <created_at>2009-08-14T00:56:03Z</created_at>
      <updated_at>2009-11-13T11:00:23Z</updated_at>
      <description>A clean slate development of tree components for Wicket. 

See our live examples on http://wicket-tree.appspot.com/ 

Current solutionWe identified the following basic issues concerned with the currently available tree components in wicket and wicket-extensions: 

integration of TreeModel (which is not Swing's highlight) cumbersome change notification using Swing's TreeModelListener no nested markup for trees supported no  markup for tabular trees supported markup limitation for node content (height problem) duplicated code for handling table IColumn and tree IColumn complicated code for partial update rendering 

Proposed redesignThe wicket-tree components try to address these problems: 

simple interface ITreeProvider similar to IDataProvider: support for multiple roots (and no root at all) get a node's children model factory for each node that's all fully generified no change notification required, always-up-to-date rendering like other repeaters nested markup for NestedTree  markup for TableTree arbitrary markup for node content allowed utilizes DataGridView for TableTree: reuse your column implementations reuse toolbars (almost) use pagination use sorting partial updates supported for NestedTree using standard AJAX features 

To achieve a lightweight solution some features from the original components were rejected: 

IRenderable optimizations not supported if really useful should be added to DataGridView TableTree would automatically benefit no caching of tree structure in component structure always see up-to-date data caching is better done in ITreeProvider if really needed no selection handling handling state of nodes besides expanse/collapse is irrelevant to a tree implementation better implemented in client code (see examples) no partial updates for TableTree Wicket's AJAX doesn't support inserting/removing elements, these features should be added to Wicket core instead of adding it to a single (tree) component DataTable doesn't support partial updates either</description>
      <homepage_url>http://code.google.com/p/wicket-tree/</homepage_url>
      <download_url></download_url>
      <url_name>wicket-tree</url_name>
      <user_count>0</user_count>
      <average_rating></average_rating>
      <rating_count>0</rating_count>
      <analysis_id></analysis_id>
      <licenses>
        <license>
          <name>apache_2</name>
          <nice_name>Apache License 2.0</nice_name>
        </license>
      </licenses>
    </project>
  </result>
</response>
