History
2017-03-06
CUF 2.0.8
is released. This is a medium feature release (for Java only) with the following changes:- fixed: a lot of minor bugs (MultiSelectionTableModelAdapter firing only once, JMenu insertion with negative index, EDT exception handling, ..)
- improved: implemented generics for request handling (Request, Response), AspectAdapter and MultiSelectionInList
- changed: switch Intellij to .idea format to make sharing the config simpler (only relevant for CUF core development, not relevant for use)
- changed: NewTableSorter.clearSortingState() is now public so we can force a re-sorting when the data changes during a callback
- added: better list/table/etc. handling:
- the SwingListSelectionState now also supperts a reverse index
- the SwingTableModelFillState and SwingTreeModelFillState now allow to change the threshold via setCompareContent()
- listSelection now supports handing over the index (or the reverse index) in the ref2 attribute
- listFill, tableFill and treeFill now supports handing over the threshold as a integer in the ref2 attribute
- a new MinMaxState
- an opaque attribute to switch a component to opaque when it is disabled
- optional implementation of the TableFilterPlugin, to enable filtering
- extUpdRef attribute to the XML description of value models to notify another value model via signalExternalUpdate() if our own value changed. Useful to update 'grandparents' about changes in a aspect adapter or simular down the road.
- updated: dependencies (Junit, jdom2)
- improved: better serialize support for MultiSelectionInList
- improved: better re-use of glasspane
- improved: made constructor of DialogManager public to allow external usage of the dialog manager
2014-01-02
CUF 2.0.0
is released. This is a API breaking release with the following changes:- changed: switched to Java 7
- changed: switched to Maven build system and delivery
- changed: switch to JDOM 2.0.5, JGoodies Looks 2.5.3, JGoodies Forms 1.7.2
- changed: new package prefix
- from com.sdm.util.ui.fw/com.sdm.util.ui.fw2 to net.sf.cuf.fw/net.sf.cuf.fw2 for the framework stuff
- from com.sdm.util to net.sf.cuf for all other stuff
- changed: the Dispatcher class was removed, use the Dispatch interface and the SwingDispatcher or JavaFXDispatcher class instead
- changed: the start() and stop() Methods in Application where renamed to doStart() and doStop() to solve the conflict with the JavaFX Application class
- added: FilteringListModelAdapter including XML Support
- added: JavaFX Support
- fixed: TableLayout2 support now works also with Java7
- fixed: possible NPE in NewTableSorter
- changed: Switch to Intellij 13 (only relevant for CUF core development, not relevant for use)
2012-09-07
CUF 1.16
is released. This is a licence release with the following changes:- added: Apache License, Version 2.0
- changed: Switch to Intellij 11 (only relevant for CUF core development, not relevant for use)
com.sdm.util
package prefix, CUF 2.0 will switch to net.sf.cuf
2011-04-24
CUF 1.15
is released. This is a medium feature release (for Java only) with the following changes:- changed: switched to Java 6
- changed: switch to JDOM 1.1.1, JGoodies Looks 2.4.0, JGoodies Forms 1.4.0 and therefore JGoodies Commmon 1.1.1
- added: support for single-start applications
- changed: generiefied a lot, most (if not all) stuff should be backwards compatible
- added: CsvView test app
- changed: Dispatcher is now deprecated, and can be replaced with the Dispatch interface and the DefaultDispatcher implementation
- changed: switched to UTF-8 encoding
- changed: Switch to Intellij 10 (only relevant for CUF core development, not relevant for use)
- added: final to parameters to avoid local assignment bugs
- changed: improved javadoc comments for member variables
com.sdm.util
package prefix, CUF 2.0 will switch to net.sf.cuf
2009-06-02
CUF 1.14
is released. This is a medium feature release (for Java only) with the following changes:- improved: performance of the sorting table (thanks, Michael!)
- added: utility for having only one instance of an application
- added: decorator support for JPanel borders
- added: three new tags (minsize, maxsize, prefsize) which are allowed inside all elements derived from JComponent
- added: DialogDescription now provides a general purpose map for parameters
- added: added MSIL support to DataBindingBuilderDelegate and improved some exception messages
- added: allow configurable error reporting for the EDTExceptionUtil
- bugfix: various MultiSelectionInList and SelectionInList bug fixes
- bugfix: menu management for existing menu entry
- changed: new tags require xml2swing-1.8.dtd
- changed: glass pane usage
- changed: switched to Intellij 8 (only relevant for CUF core development, not relevant for use)
- changed: switched to a Mac as the development environment, various changes due to UTF-8 problems
2007-12-20
CUF 1.13
is released (CUF 1.12 was an internal beta). This is a medium feature release (for Java only) with the following changes:- changed: Switch to Intellij 6 (only relevant for CUF core development, not relevant for use)
- changed: switch to JDOM 1.1, JGoodies Forms 1.1.0, JGoodies Looks 2.1.4
- changed: ValueModel is now more tolerant regarding null in the conversion methods like booleanValue()
- added: Equalstate
- added: RegExpConverter allows the write through of invalid data, useful if only the sync status does matter
- added: much better dispose support
- added: enhanced XML setvalue
- added: multiselectioninlist for multiple selection support
- added: NewTableSorter tries harder to maintain the selection
- added: fail fast for aspect adapter with given source class
- added: ValueState supports a meaning for null values instead of "not initialized"
- added: RegExpState to bind the match of a regular expression to a observable state
- added: support for constant objects in the SwingXMLBuilder
- added: TableSelectionModel now also supports "is" and "has" method prefix
- added: MultiSelectionTableModelAdapter
- added: ListFilterConverter filters a list and offers the result as a value model
- added: Collection2ListConverter makes a list out of a collection
- bugfix: AbstractTypeConverter honors mPropagateFailedConversions on getValue
- bugfix: shift-cursor selection was not detected
- bugfix: LOVAdapter did not update selected VM
- bugfix: SelectionInList respects the list size
- bugfix: TableSelectionModel notifies SelectionInList when a value is changed in the table
- bugfix: CloseEvent status was not updated
2007-04-03
CUF 1.11
is released. This is a medium feature release (for Java only) with the following changes:- switch to Subversion
- various bug fixes (MapAccessAdapter, IndexedAdapter, ComboBoxModelAdapter, ListModelAdapter, RadioButtonAdapter, AbstractValueModel, ListTableMapperBase)
- slightly more tolerant handling of SelectionInList.getValue() if the value model is disposed
- better support for validation in the TypeConverter ValueModel's
- states can now be disposed and queried for their listeners
- the AspectAdapter now always uses the MixedAccessAdapter by default
- the "get" and "set" prefix for getter and setter can be configured in an AspectAdapter
- the IntegerStringConverter (and others) can now handle a specific null substitute
- new converters: BigDecimalStringConverter, DoubleStringConverter, LongStringConverter, NumberFormatConverter
- the FormatConverter now supports inverse parsing/formatting
- DialogManager implements now Disposable
- SpinnerModelAdapter now adapts between a Swing SpinnerModel and a CUF ValueModel
- LOVAdapter, including the <lovadapter> tag to adapt between a display list, a keys list, a selected key and a either a JComboBox, a JList or a radio button group
- support for adding/removing multiple menus in a MenuToolbarEvent
- the CUF XML now also supports importing names of "any" components, to easy integration of external GUI Builders (like the excellent JFormDesigner)
- JGoodies forms updated from 1.0.5 to 1.0.7
- JGoodies looks updated from 1.3.1 to 2.0.2
2005-08-23
CUF 1.10
is released. This is a small feature release with the following changes:- various bug fixes
- the new SwingXMLBuilder.getComponentByAnyName() is used throughout the builder to get widgets
- only one ChangeEvent is used for all callbacks of a AbstractValueModel/AbstractState
- the AspectAdapter now uses a strategy pattern to suppert multiple access stragies to get/set the attributes, this allows that any java.util.Map can be used as a container
- the MixedAccesAdapter strategy allows very late (and changing-at-runtime) binding for the aspcets of a AspectAdapter
- the DTD is now referenced via a PUBLIC doctype
- a adapter to bind a value model to a tooltip was added
- the SwingBackgroundAdapter and the SwingBorderAdapter can be decorated in XML with a color or border element
- the SwingEnabledAdapter now supports deep enable/disable
- the ListModelAdapter now also supports a JComboBox
- the <textfield> tag now als suports dateFormat and numberFormat
- the new LOVMapper adapter supports list-of-values
- all finalize methods were removed
2005-05-28
CUF 1.9
is released. This is a maintainance release with the following changes:- various bug fixes
- SwingMapping and SwingXMLBuilder now support getByShortName to get widgets by their (non-uniq) short name
- the Java XML binding now also supports callback action for ValueModel's as well as a direct access of the various ValueModel's of a SelectionInList
- various small Java tweaks that "speed up" Swing apps, see http://wiki.java.net/bin/view/Javadesktop/SecretSwingProperties for details
- Update to JGoodies Looks 1.3.1
- more "C#" feeling for IDialogCallback
- the .NET dispatcher now supports asynchronous calls with the callback in the GUI Thread
- a NAnt build skript for .NET
2005-01-03
The initial version of CUF is 1.8, even though it is the first public version