Version 3.5.4 is a maintenance release that fixes a few problems. See the version history for details.
July 27th, 2010 New SourceList and Tree bean, autoscroll
Version 3.5 adds two new beans to the collection: the SourceList and the Tree bean. Both beans can be filled by method without the need of a FoundSet.
Just like the FoundSetSourceList, the SourceList bean mimics Apples iTunes style tree list. This flavour of the bean however can be fully created by a method by providing categories and items.
The tree bean offers many display options for a normal tree as shown below:
For every tree node (or leaf) you can set:
normal and selected background and foreground color
normal and selected font
separate leaf (no children), node and open icon
tooltip
3.5 also improves Drag & Drop operations on any component by adding autoscroll. Once the user reaches the end of the visible part of the component it will automatically start scrolling. It also fixes a glitch when the user changes the modifier key during a drag operation.
Also, anti-aliasing in SourceList beans on the Mac have been improved.
The update is free for all registered users of Table bean 3.0.
February 12th, 2010 Table-Bean 3.1: adds FoundSetSourceList bean
With version 3.1 we have added a new member to the Table bean family: the FoundSetSourceList bean. The new bean is best described by a screenshot:
screenshot taken from Servoy, not iTunes!
The FoundSetSourceList bean works much like Servoy's own DBTreeViewBean. It allows you to set
dataproviders for text, icon and counter value
a n:m relation name
the tree's root (categories) foundset
all colors used
a method that is called on click or double click
a right click listener that triggers a method that can provide a popup menu
the selected record
Version 3.1 also fixes a problem with context menus (right click) in Servoy 5.1. Due to the changes of Servoy by introducing the window plugin in favor of the popupmenu plugin we had to rewrite our implementation of context menus. With 3.1, all possible ways of creating popup menus are supported.
We have added an example to the sample solution that shows how to use the bean. The update is free for all registered users of Table bean 3.0.
December 17th, 2009 Table-Bean 3.0 released
Today we announce the availability of version 3.0 of our Table bean. This release is a major rewrite of the rendering and editing mechanisms of the bean. This allows us to offer far more flexibility than before.
As shown in the screenshot below, a single cell can contain almost anything that was only possible on a per column base before:
To enable this new functionality, we have introduced a CellFormat object. A CellFormat offers many formatting properties such as
text alignment, color and font
background color
cell border
editable property
CellFormats also allow to control the renderer and editor of a cell:
normal text
text areas
dates
numbers
checkbox
combobox
value list
CellFormats can be applied to rows, columns or single cells. To ease handling, CellFormats can be named and reused. Here is a small code example on how to use a CellFormat (a more complex example can be found in the sample solution):
Among the many other new features of the Table bean are the following:
lazy loading foundsets: instead of loading all records from a foundset into memory, a foundsetGrid can be made "lazy loading". That means, that only 200 records at a time are loaded. Whenever the user scrolls down, another 200 are loaded etc. One important implication of that is that sorting has to be done by the database, so a lazy loading foundset cannot be sorted on unstored calculations. Please not that lazy loading foundsets do not work in Servoy 5.0.0, but any other version.
support for display and editing formats for date and number cells: just like a Servoy field, the table bean now accepts formats in a displayFormat|editingFormat syntax.
incorrect entries in number and date fields are displayed in red
value list fields are no longer read only: if you set a value list on a field, not combobox will be shown. If the user starts editing such a field, then a combobox editor will be presented.
support for methods instead of calculations for background color, foreground color and font in a foundsetGrid (please note that in Servoy 5 only methods are supported and calculations will no longer work)
support for Servoy border style strings: border styles can be copied from a form property and assigned to the bean (e.g. 'LineBorder,1,#000000')
Please not that Table bean 3.0 is (our first ever) paid update, so it requires a new license key. Update licenses can be obtained from our shop. Please provide the same email address you used with the original license if possible.
July 9th, 2008 Table-Bean 2.0 released
We are pleased to announce version 2 of our popular Table-Bean. Among the most important improvements are the following:
Multiline text columns (text areas)
Multiline header text
Color editor
Date picker for date columns
Setting header height (also allows to completely hide the column header)
Compatible with Servoy 4 RC4 (and hopefully later)
The following screenshot shows mutiline cells, header and a color editor column (click to enlarge):
If a user clicks on a color editor cell, the standard color picker is shown. If a user clicks on a date column with the date picker option, a date picker just like Servoy's own is shown.
For a complete list of changes see the version history at the bottom of the Table-Bean page. The new version can be downloaded from the download page. The update is free for all registered users.
May 1st, 2008 Table-Bean 1.6 released
With the latest versions of the Table-Bean and the DialogPro plugin it is now possible to create a table with the Table-Bean and use that table in a DialogPro dialog. This even works without ever placing a Table-Bean table on any form.
To be able to do this, you simply call
var vDatasetGrid = plugins.drmaison.createDatasetGrid() or
var vFoundsetGrid = plugins.drmaison.createFoundsetGrid()
The result of both methods can be used just like the bean. Instead of elements.dataset.bgcolor = '#efefef' you then call vDatasetGrid.bgcolor = '#efefef'. To use the table in DialogPro, you simply call vDialog.addComponent(vDatasetGrid).
Also new to the Table-Bean are cell formatting methods:
setCellBgColor()
setCellFgColor()
setCellFont()
setCellBorder()
These methods allow to set formatting options to individual cells. Here is a screenshot that shows a DatasetGrid in a DialogPro dialog and a cell with custom font as well as one with custom border:
Both updates are free for registered users. Please see the version history at each product's page for details. The new versions can be downloaded from the download page.
February 13th, 2008 Table-Bean 1.5.1 released
Today we have released a small update to the Table-Bean that fixes one rare bug when adding buttons and adds addDataset() to the DatasetGrid.
January 30th, 2008 Table-Bean updated to 1.5
A new version of the Table-Bean is available today. It adds significant improvements to drag and drop, new features that allow even more flexible formatting of tables and several other enhancements and bug fixes.
Drag and drop functionality has been greatly improved in these areas:
Dragging of several rows now behaves just like the Windows explorer or Macintosh finder
When dragging over a table, the rows are properly selected
A new getDropColumn() method allows to determine the exact cell a user drops onto and allow or reject drops on a per cell basis; the corresponding getDragColumn() has also been implemented
In the FoundsetGrid it is now possible to format single cells by providing calculations, just like Servoy's own table view allows to set the background color:
a rowFGColorCalculation property let's developers control the font color
a rowFontCalculation property can be set to control the font
these two calculations as well as the already present rowBGColorCalculation now also receive the dataprovider name (the column) as argument; that makes it possible to control background, foreground and font on a per cell basis depending on the content of a field, as shown in this example (a creation date older than two years is formatted in a different color and font):
Version 1.5 also adds these new methods and properties:
columnOrder property to get and set the column order. This makes it possible to save and restore the column order a user has arranged.
a moveColumn() method can be used to programatically move columns after the table has been created
using setOnActionForColumn() a method can be fired if the user clicks on a cell of that column
tables will auto scroll if the selected index is not currently visible
sortColumn() allows to sort a table by method
getSortColumns() and getSortOrder() can be called to retrieve the current sort
setAlignmentForColumn() now also works with combobox and number columns
convertDataIndexToView() and convertViewIndexToData() allow to convert between visible and data index in sorted tables
The update is free to registered users and can be obtained from the download section. For a complete list of enhancements and fixes see the version history.
November 28th, 2007 Table-Bean updated to 1.4
Version 1.4 of the Table-Bean is released. It adds the following features:
added sortable property: if set to false the table cannot be sorted
added textIndent property to control the spacing between the left and right cell border and the text. Defaults to 2 pixels.
added setMediaOptionsForColumn(int column, String options, [int width]) to set scaling options for button or media columns
the selected row(s) are now preserved after sorting
setSelectedIndex now accepts -1 to clear the selection (deselect all selected rows)
several bug fixes
The update is free to registered users and can be obtained from the download section. For a complete list of enhancements and fixes see the version history.
October 22nd, 2007 Table-Bean updated to 1.3
Only two weeks after its initial release we announce version 1.2 of the Table-Bean. Two great additions have been added: First, support for Drag & Drop has been added! See for yourself:
The Drag & Drop features added allow you to
fire a method if the user starts to drag
fire a method if the user drags something over a bean and decide if dropping is allowed or not per Table-Bean
fire a method when the user moves the mouse over a table's row that lets you decide if dropping is allowed on a per row basis
fire a method once the user drops what he has dragged
receive the element name from the element where the dragging started and the drop occured
receive the dropAction (copy or move)
The other addition is support for the context menu (right click):
The context menu functionality can be used in two ways:
you can register a method that is called whenever the user right clicks; that method has to return a menuItem[] array create with Servoy's popupmenu plugin (just like any other popupmenu). This allows you to provide different popupmenus depending on the row the user clicks on.
you can provide a menuItem[] array directly; then the popupmenu will be the same for the whole table
We have also added a method to allow to set the text orientation in standard columns (not combo- or checkbox) and fixed a few issues.
The update is free to registered users and can be obtained from the download section. For a complete list of enhancements and fixes see the version history.
October 5th, 2007 New Table bean released
We are proud to announce our first bean for Servoy: the Table-Bean. The Table-Bean is a powerful pair of two beans that allow Servoy developers to display a Servoy foundset or the result of a query as array or JSDataSet in a table bean. That means that you do not need an extra form for every tabular data that you want to display, because you can reuse the bean.
The bean comes in two flavours, FoundsetGrid and DatasetGrid. The difference is that he foundsetGrid is "connected" to the actual foundset that was provided. Changes in the foundsetGrid are automatically updated in the underlaying table. So the foundsetGrid allows live editing of actual table data just like data on a Servoy form, while the datasetGrid does the same in a dataset that can be processed by a method if changed.
Possible uses of the bean include
display the result of complex queries in a sortable table
display aggregated data in a table
allow data entry in a way that does not match a table's structure (for example sales estimates over 12 months)
display editable data of simple structure (for example value list tables) to save forms
reusable dialogs that show tabular data and allow multiple selection of rows
The beans offer some functionalities not even found in Servoy's table view forms. Here is a short overview
multiple selection of rows (users can select several rows)
multiple column sort
onDoubleClick event
onRecordSelection event
onDataChange event
checkbox columns
combobox columns
number and date formats for columns
setting background color, foreground color and font for selected rows
setting selection background, foreground and font
The Table-Bean is available from our shop. A demo version can be downloaded from the download section.