Traits UI Changelog
===================

What's new in Traits UI 5.0.0
-----------------------------

This release features experimental support for Python 3 with the Qt toolkit!

This is based in large part on the work of Yves Delley and Pradyun Gedam, but
also owes a lot to Ioannis Tziakos for implementing container-based continuous
integration and Prabhu Ramachandran and Corran Webster for tracking down
last-minute bugs. Python 3 support is probably not yet ready for production
use, but feedback and bug reports are welcome, and all future pull requests
will be expected to work with Python 3.4 and later.  Python 3 support requires
Traits 4.5 or greater, and Pyface 5.0 or greater.

In addition, this release includes fixes to support wxPython 3.0 and deprecates
wxPython 2.6.  Thanks to Robin Dunn for providing these improvements.

This release also introduces a DataFrameEditor which provides a tabular
view of a Pandas DataFrame, similar to the existing ArrayViewEditor.

There are also a number of bug fixes and minor improvements detailed below.

Finally, this release changes the default GUI toolkit from Wx to Qt. This
changes the behaviour of the library in the case where both WxPython and
PyQt/PySide are installed and the user or code doesn't specify the toolkit to
use explicitly.

New Features
~~~~~~~~~~~~

* Experimental Python 3 support (#230)
* A DataFrameEditor for Pandas DataFrames, similar to the ArrayViewEditor
  (#196)

Enhancements
~~~~~~~~~~~~

* Add a Qt version of the ProgressEditor (#217)
* Links to demos in the documentation (#159)
* Add minimal support for the dock_styles option to the Qt tabbed List
  Editor. (#143)

Fixes
~~~~~

* Fix failure to disconnect selection listeners for ListStrEditor in Qt (#223)
* Fix layout of TextEditors in some situations (#216)
* Fix removal of _popEventHandlers not owned by TraitsUI in Wx (#215)
* Remove some old (TraitsUI 3.0-era) documentation (#214)
* Help button now works on Qt (#160)


Release 4.5.1
-------------

Fixes
~~~~~

* Fix pypi installation problem (#206)


Release 4.5.0
-------------

Fixes
~~~~~

* Application-modal Traits UI dialogs are correctly styled as
  application-modal under Qt. On Macs, they will now appear as independent
  windows rather than drop-down sheets. (#164)
* Qt CodeEditor now honors 'show_line_numbers' and the 'readonly' style (#137)
* Deprecated `implements` declaration removed, use `provides` instead (#152)
* Fix TableEditor so that Qt.QSplitter honors 'orientation' trait (#171)
* Show row labels in Qt TableEditor when requested (#176)
* Fix TupleEditor so that multiple change events are not fired (#179)
* Numpy dependency is now optional. `ArrayEditor` will not be available
   if numpy cannot be imported (#181)
* Add development versioning (#200)


Release 4.4.0
-------------

The biggest change in this release is support for the new adaptation mechanism
in Traits 4.4.0.  Other than that, there are a number of other minor changes,
improvements and bugfixes.

Corran Webster (corranwebster on GitHub) is now maintainer of TraitsUI.

Change summary since 4.3.0

New Features
~~~~~~~~~~~~

* Changes for new Traits adaptation mechanism support (#113)

Enhancements
~~~~~~~~~~~~

* Add Travis-CI support.

* Remove the use of the deprecated PySimpleApp under Wx and several other
   improvements. (#107)

* Improvements to Qt TabularEditor, TableEditor and TreeEditor drag and drop
   support.  Should be roughly on par with Wx support.  No API changes.
   (#124, #126, #129, #135)

* Improvements to PyMimeData coercion to better handle lists of items. (#127)

Fixes
~~~~~

* Fixes item selection issue #133 in ListStrEditor under Wx 2.9 (#137)

* Fixes to avoid asking for value of a Delegated Event (#123 and #136)

* Fix drag image location for Qt TreeEditor (#132)

* Qt TreeEditor supports bg and fg colors and column labels correctly. (#131)

* Fix ListEditor under PySide (#125)

* remove event handlers before window destruction in Wx.  Required for
  Wx 2.9. (#108)

There are currently some other unlisted changes going back some time
before this file was created.


Traits 3.5.0 (Oct 15, 2010)
---------------------------

Enhancements
~~~~~~~~~~~~

* adding support for drop-down menu in Button traits, but only for qt backend

* adding 'show_notebook_menu' option to ListEditor so that the user can
  right-click and show or hide the context menu (Qt)

* added selection range traits to make it possible for users to replace
  selected text


Fixes
~~~~~
* fixed null color editor to work with tuples

* bug when opening a view with the ToolbarButton



Traits 3.4.0 (May 26, 2010)
---------------------------

Enhancements
~~~~~~~~~~~~
* adding new example to make testing rgb color editor easier


Fixes
~~~~~

* fixed NumericColumn to not expect object to have model_selection attribute,
  and removed more dead theming code

* fixed API bugs with the NumericColumn where its function signatures
  differed from its base class, but the calling code expected them to all
  be the same

* fixed bug which was related to type name errors caused when running Sphinx

* when using File(exists=True), be sure to validate the type of the value
  first before using os.path.isfile()



Traits 3.3.0 (Feb 24, 2010)
---------------------------

Enhancements
~~~~~~~~~~~~

The major enhancement this release is that the entire Traits package has been
changed to use relative imports so that it can be installed as a sub-package
inside another larger library or package.  This was not previously possible,
since the various modules inside Traits would import each other directly
through "traits.[module]".  Many thanks to Darren Dale for the
patch.


Fixes
~~~~~

There have been numerous minor bugfixes since the last release.  The most notable
ones are:

 * Many fixes involve making Traits UI more robust if wxPython is not installed
   on a system.  In the past, we have been able to use Qt if it was also
   installed, but removing Wx would lead to a variety of little bugs in various
   places.  We've squashed a number of these.  We've also added better checks
   to make sure we're selecting the right toolkit at import and at runtime.

 * A nasty cyclic reference was discovered and eliminated in DelegatesTo traits.

 * The Undefined and Uninitialized Traits were made into true singletons.

 * Much of the inconsistent formatting across the entire Traits source has
   been eliminated and normalized (tabs/spaces, line endings).


Traits 3.2.0 (July 15, 2009)
----------------------------

Enhancements
~~~~~~~~~~~~

 * Implemented editable_labels attribute in the TabularEditor for enabling editing of the labels (i.e. the first column)

 * Saving/restoring window positions works with multiple displays of different sizes

 * New ProgressEditor

 * Changed default colors for TableEditor

 * Added support for HTMLEditor for QT backend using QtWebKit

 * Improved support for opening links in external browser from HTMLEditor

 * Added support for TabularEditor for QT backend

 * Added support for marking up the CodeEditor, including adding squiggles and dimming lines

 * Added SearchEditor

 * Improved unicode support

 * Changed behavior of RangeEditor text box to not auto-set

 * Added support in RangeEditor for specifying the method to evaluate new values.

 * Add DefaultOverride editor factory courtesy Stéfan van der Walt

 * Removed sys.exit() call from SaveHandler.exit()


Fixes
~~~~~
