Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The animation methods slideUp(), slideDown(), fadeIn() and fadeOut() have been removed from the Div tag. They should be replaced by calling Animations.xxxx with the node to animate.

DataTable

  • Columns are now resizable with the mouse. Changes made by the user are sent to the server, so it is possible to persist those changes. See the documentation for details.
  • The DataTable component has been merged with MultiRowDataTable, so that DataTable now supports rendering multiple rows per list value. The original DataTable has been moved to DataTableOld in legacy. The MultiRowRowRenderer has also been removed as 99.9% was the same as RowRenderer anyway.
  • The RowRenderer now sets columns that are defined from metadata to SORT_ASCENDING if the metadata specifies unknown sort. To prevent set the metadata to UNSORTABLE. This change means that tables are by default sortable.
  • Column width length calculation has been fixed - see the page for details. This mostly fixes the issue where column sizes changed every time we used the pager.
  • The DataTable now defaults to a width of 100% by its own "setWidth" method, not by the style sheet. This allows the table to be used in < 100% things too by just calling setWidth(null) or anything else.
  • You can change the size of columns by dragging their header edge, and there are listeners so that you can save the new column sizes in persistent storage for a user if you want. See the datatable page for details.

...

The new Tree2 component is a rewrite of the now deprecated Tree component. It uses mostly the same interface but is rewritten with cleaner code and renders without using tables.

LookupInput and LookupInput2

This The LookupInput component moved to legacy.

...

The generated html code for the control controls has been changed so that style fixes could be applied. This In addition, to reduce the maintenance of both LookupInput components, both components now also share a common stylesheet as they render the exact same layout. This breaks the existing legacy stylesheets. ! For fixes look at _lookupInput.scss.

The value renderers used by this component have changed. In 1.0 the value renderers were not just responsible for rendering a value: they also placed the control's buttons and did a lot for the layout for the control. This was a bad plan, because it tightly couples those renderers to the control and anyone overridding those also need to know how the control renders. This made it impossible to change the rendering of the control. The new renderers are solely responsible for rendering the value in some reasonable way. All of the main layout of the control is done by the control itself. Consequently these renderers no longer need all the extra "hidden" parameters passed to INodeContentRenderer, and they now implement IRenderInto.In addition, to reduce the maintenance of both LookupInput components, both components as they render the exact same layou now also share a common stylesheet

The LookupComponent2 has some new constructors which allows the component to be used on a List<T> of data.

Look and feel

The following things have changed regarding themes, styles and look-and-feel.

...

The DataPager's look has been fixed so that it properly shows the overflow indicator, and that it uses CSS only for its presentation:

New code

The new method MetaManager#query() and the new class ListQueryHandler make it possible to run QCriteria queries on collections.

Fixes