summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Ward <ian@excess.org>2013-12-29 22:03:53 -0500
committerIan Ward <ian@excess.org>2013-12-29 22:03:53 -0500
commitf79abca8752ae4bc4e9e3378aac00ef03140b253 (patch)
tree4082852114bd798933146431912ade81c664976f
parente7fbc30012131a7255b23995534406f0e39f5e77 (diff)
downloadurwid-f79abca8752ae4bc4e9e3378aac00ef03140b253.tar.gz
fix up changelog.rst
-rw-r--r--docs/changelog.rst1175
-rw-r--r--docs/index.rst2
2 files changed, 646 insertions, 531 deletions
diff --git a/docs/changelog.rst b/docs/changelog.rst
index 77dfc83..0c45319 100644
--- a/docs/changelog.rst
+++ b/docs/changelog.rst
@@ -3,913 +3,1028 @@ Changelog
---------
Urwid 1.1.2
+===========
- * Fix encoding exceptions when unicode used on non-UTF-8 terminal
+ * Fix encoding exceptions when unicode used on non-UTF-8 terminal
- * Fix for suspend and resume applications with ^Z
+ * Fix for suspend and resume applications with ^Z
- * Fix for tmux and screen missing colors on right bug
+ * Fix for tmux and screen missing colors on right bug
- * Fix Pile zero-weighted items and mouse_event when empty
+ * Fix Pile zero-weighted items and mouse_event when empty
- * Fix Terminal select() not retrying when interrupted by signal
+ * Fix Terminal select() not retrying when interrupted by signal
- * Fix for Padding.align and width change not invalidating
+ * Fix for Padding.align and width change not invalidating
Urwid 1.1.1
+===========
- * Fix for Pile not changing focus on mouse events
+2012-11-15
- * Fix for Overlay.get_cursor_coords()
+ * Fix for Pile not changing focus on mouse events
+
+ * Fix for Overlay.get_cursor_coords()
Urwid 1.1.0
+===========
+
+2012-10-23
- * New common container API: focus, focus_position, contents,
- options(), get_focus_path(), set_focus_path(), __getitem__,
- __iter__(), __reversed__() implemented across all included
- container widgets
+ * New common container API: focus, focus_position, contents,
+ options(), get_focus_path(), set_focus_path(), __getitem__,
+ __iter__(), __reversed__() implemented across all included
+ container widgets
- A full description doesn't fit here, see the Container Widgets
- section in the manual for details
+ A full description doesn't fit here, see the Container Widgets
+ section in the manual for details
- * New Sphinx-based documentation now included in source:
- Tutorial rewritten, manual revised and new reference based
- on updated docstrings (by Marco Giusti, Patrick Totzke)
+ * New Sphinx-based documentation now included in source:
+ Tutorial rewritten, manual revised and new reference based
+ on updated docstrings (by Marco Giusti, Patrick Totzke)
- * New list walker SimpleFocusListWalker like SimpleListWalker but
- updates focus position as items are inserted or removed
+ * New list walker SimpleFocusListWalker like SimpleListWalker but
+ updates focus position as items are inserted or removed
- * New decoration widget WidgetDisable to disable interaction
- with the widgets it wraps
+ * New decoration widget WidgetDisable to disable interaction
+ with the widgets it wraps
- * SelectableIcon selectable text widget used by button widgets is
- now documented (available since 0.9.9)
+ * SelectableIcon selectable text widget used by button widgets is
+ now documented (available since 0.9.9)
- * Columns widget now tries to keep column in focus visible, hiding
- columns on the left when necessary
+ * Columns widget now tries to keep column in focus visible, hiding
+ columns on the left when necessary
- * Padding widget now defaults to ('relative', 100) instead of
- 'pack' so that left and right parameters are more useful and more
- child widgets are supported
+ * Padding widget now defaults to ('relative', 100) instead of
+ 'pack' so that left and right parameters are more useful and more
+ child widgets are supported
- * New list walker "API Version 2" that is simpler for many list
- walker uses; "API Version 1" will still continue to be supported
+ * New list walker "API Version 2" that is simpler for many list
+ walker uses; "API Version 1" will still continue to be supported
- * List walkers may now allow iteration from the absolute top or
- bottom of the list if they provide a positions() method
+ * List walkers may now allow iteration from the absolute top or
+ bottom of the list if they provide a positions() method
- * raw_display now erases to the end of the line with EL escape
- sequence to improve copy+paste behavior for some terminals
+ * raw_display now erases to the end of the line with EL escape
+ sequence to improve copy+paste behavior for some terminals
- * Filler now has top and bottom parameters like Padding's left and
- right parameters and accepts 'pack' instead of None as a height
- value for widgets that calculate their own number of rows
+ * Filler now has top and bottom parameters like Padding's left and
+ right parameters and accepts 'pack' instead of None as a height
+ value for widgets that calculate their own number of rows
- * Pile and Columns now accepts 'pack' instead of 'flow' for widgets
- that calculate their own number of rows or columns
+ * Pile and Columns now accepts 'pack' instead of 'flow' for widgets
+ that calculate their own number of rows or columns
- * Pile and Columns now accept 'given' instead of 'fixed' for
- cases where the number of rows or columns are specified by the
- container options
+ * Pile and Columns now accept 'given' instead of 'fixed' for
+ cases where the number of rows or columns are specified by the
+ container options
- * Pile and Columns widgets now accept any iterable to their
- __init__() methods
+ * Pile and Columns widgets now accept any iterable to their
+ __init__() methods
- * Widget now has a default focus_position property that raises
- an IndexError when read to be consistent with new common container
- API
+ * Widget now has a default focus_position property that raises
+ an IndexError when read to be consistent with new common container
+ API
- * GridFlow now supports multiple cell widths within the same widget
+ * GridFlow now supports multiple cell widths within the same widget
- * BoxWidget, FlowWidget and FixedWidget are deprecated, instead
- use the sizing() function or _sizing attribute to specify the
- supported sizing modes for your custom widgets
+ * BoxWidget, FlowWidget and FixedWidget are deprecated, instead
+ use the sizing() function or _sizing attribute to specify the
+ supported sizing modes for your custom widgets
- * Some new shift+arrow and numpad input sequences from RXVT and
- xterm are now recognized
+ * Some new shift+arrow and numpad input sequences from RXVT and
+ xterm are now recognized
- * Fix for alarms when used with a screen event loop (e.g.
- curses_display)
+ * Fix for alarms when used with a screen event loop (e.g.
+ curses_display)
- * Fix for raw_display when terminal width is 1 column
+ * Fix for raw_display when terminal width is 1 column
- * Fixes for a Columns.get_cursor_coords() regression and a
- SelectableIcon.get_cursor_coords() bug
+ * Fixes for a Columns.get_cursor_coords() regression and a
+ SelectableIcon.get_cursor_coords() bug
- * Fixes for incorrect handling of box columns in a number of
- Columns methods when that column is selectable
+ * Fixes for incorrect handling of box columns in a number of
+ Columns methods when that column is selectable
- * Fix for Terminal widget input handling with Python 3
+ * Fix for Terminal widget input handling with Python 3
Urwid 1.0.3
+===========
+
+2012-11-15
- * Fix for alarms when used with a screen event loop (e.g.
- curses_display)
+ * Fix for alarms when used with a screen event loop (e.g.
+ curses_display)
- * Fix for Overlay.get_cursor_coords()
+ * Fix for Overlay.get_cursor_coords()
Urwid 1.0.2
+===========
- * Fix for bug when entering Unicode text into Edit widget with
- bytes caption
+2012-07-13
- * Fix a regression when not running in UTF-8 mode
+ * Fix for bug when entering Unicode text into Edit widget with
+ bytes caption
- * Fix for a MainLoop.remove_watch_pipe() bug
+ * Fix a regression when not running in UTF-8 mode
- * Fix for a bug when packing empty Edit widgets
+ * Fix for a MainLoop.remove_watch_pipe() bug
- * Fix for a ListBox "contents too long" error with very large
- Edit widgets
+ * Fix for a bug when packing empty Edit widgets
- * Prevent ListBoxes from selecting 0-height selectable widgets
- when moving up or down
+ * Fix for a ListBox "contents too long" error with very large
+ Edit widgets
- * Fix a number of bugs caused by 0-height widgets in a ListBox
+ * Prevent ListBoxes from selecting 0-height selectable widgets
+ when moving up or down
+
+ * Fix a number of bugs caused by 0-height widgets in a ListBox
Urwid 1.0.1
+===========
+
+2011-11-28
- * Fix for Terminal widget in BSD/OSX
+ * Fix for Terminal widget in BSD/OSX
- * Fix for a Filler mouse_event() position bug
+ * Fix for a Filler mouse_event() position bug
- * Fix support for mouse positions up to x=255, y=255
+ * Fix support for mouse positions up to x=255, y=255
- * Fixes for a number of string encoding issues under Python 3
+ * Fixes for a number of string encoding issues under Python 3
- * Fix for a LineBox border __init__() parameters
+ * Fix for a LineBox border __init__() parameters
- * Fix input input of UTF-8 in tour.py example by converting captions
- to unicode
+ * Fix input input of UTF-8 in tour.py example by converting captions
+ to unicode
- * Fix tutorial examples' use of TextCanvas and switch to using
- unicode literals
+ * Fix tutorial examples' use of TextCanvas and switch to using
+ unicode literals
- * Prevent raw_display from calling tcseattr() or tcgetattr() on
- non-ttys
+ * Prevent raw_display from calling tcseattr() or tcgetattr() on
+ non-ttys
- * Disable curses_display external event loop support: screen resizing
- and gpm events are not properly supported
+ * Disable curses_display external event loop support: screen resizing
+ and gpm events are not properly supported
- * Mark PollingListWalker as deprecated
+ * Mark PollingListWalker as deprecated
Urwid 1.0.0
+===========
+
+2011-09-22
- * New support for Python 3.2 from the same 2.x code base,
- requires distribute instead of setuptools (by Kirk McDonald,
- Wendell, Marien Zwart) everything except TwistedEventLoop and
- GLibEventLoop is supported
+ * New support for Python 3.2 from the same 2.x code base,
+ requires distribute instead of setuptools (by Kirk McDonald,
+ Wendell, Marien Zwart) everything except TwistedEventLoop and
+ GLibEventLoop is supported
- * New experimental Terminal widget with xterm emulation and
- terminal.py example program (by aszlig)
+ * New experimental Terminal widget with xterm emulation and
+ terminal.py example program (by aszlig)
- * Edit widget now supports a mask (for passwords), has a
- insert_text_result() method for full-field validation and
- normalizes input text to Unicode or bytes based on the caption
- type used
+ * Edit widget now supports a mask (for passwords), has a
+ insert_text_result() method for full-field validation and
+ normalizes input text to Unicode or bytes based on the caption
+ type used
- * New TreeWidget, TreeNode, ParentNode, TreeWalker
- and TreeListBox classes for lazy expanding/collapsing tree
- views factored out of browse.py example program, with new
- treesample.py example program (by Rob Lanphier)
+ * New TreeWidget, TreeNode, ParentNode, TreeWalker
+ and TreeListBox classes for lazy expanding/collapsing tree
+ views factored out of browse.py example program, with new
+ treesample.py example program (by Rob Lanphier)
- * MainLoop now calls draw_screen() just before going idle, so extra
- calls to draw_screen() in user code may now be removed
+ * MainLoop now calls draw_screen() just before going idle, so extra
+ calls to draw_screen() in user code may now be removed
- * New MainLoop.watch_pipe() method for subprocess or threaded
- communication with the process/thread updating the UI, and new
- subproc.py example demonstrating its use
+ * New MainLoop.watch_pipe() method for subprocess or threaded
+ communication with the process/thread updating the UI, and new
+ subproc.py example demonstrating its use
- * New PopUpLauncher and PopUpTarget widgets and MainLoop option
- for creating pop-ups and drop-downs, and new pop_up.py example
- program
+ * New PopUpLauncher and PopUpTarget widgets and MainLoop option
+ for creating pop-ups and drop-downs, and new pop_up.py example
+ program
- * New twisted_serve_ssh.py example (by Ali Afshar) that serves
- multiple displays over ssh from the same application using
- Twisted and the TwistedEventLoop
+ * New twisted_serve_ssh.py example (by Ali Afshar) that serves
+ multiple displays over ssh from the same application using
+ Twisted and the TwistedEventLoop
- * ListBox now includes a get_cursor_coords() method, allowing
- nested ListBox widgets
+ * ListBox now includes a get_cursor_coords() method, allowing
+ nested ListBox widgets
- * Columns widget contents may now be marked to always be treated
- as flow widgets for mixing flow and box widgets more easily
+ * Columns widget contents may now be marked to always be treated
+ as flow widgets for mixing flow and box widgets more easily
- * New lcd_display module with support for CF635 USB LCD panel and
- lcd_cf635.py example program with menus, slider controls and a custom
- font
+ * New lcd_display module with support for CF635 USB LCD panel and
+ lcd_cf635.py example program with menus, slider controls and a custom
+ font
- * Shared command_map instance is now stored as Widget._command_map
- class attribute and may be overridden in subclasses or individual
- widgets for more control over special keystrokes
+ * Shared command_map instance is now stored as Widget._command_map
+ class attribute and may be overridden in subclasses or individual
+ widgets for more control over special keystrokes
- * Overlay widget parameters may now be adjusted after creation with
- set_overlay_parameters() method
+ * Overlay widget parameters may now be adjusted after creation with
+ set_overlay_parameters() method
- * New WidgetPlaceholder widget useful for swapping widgets without
- having to manipulate a container widget's contents
+ * New WidgetPlaceholder widget useful for swapping widgets without
+ having to manipulate a container widget's contents
- * LineBox widgets may now include title text
+ * LineBox widgets may now include title text
- * ProgressBar text content and alignment may now be overridden
+ * ProgressBar text content and alignment may now be overridden
- * Use reactor.stop() in TwistedEventLoop and document that Twisted's
- reactor is not designed to be stopped then restarted
+ * Use reactor.stop() in TwistedEventLoop and document that Twisted's
+ reactor is not designed to be stopped then restarted
- * curses_display now supports AttrSpec and external event loops
- (Twisted or GLib) just like raw_display
+ * curses_display now supports AttrSpec and external event loops
+ (Twisted or GLib) just like raw_display
- * raw_display and curses_display now support the IBMPC character
- set (currently only used by Terminal widget)
+ * raw_display and curses_display now support the IBMPC character
+ set (currently only used by Terminal widget)
- * Fix for a gpm_mev bug preventing user input when on the console
+ * Fix for a gpm_mev bug preventing user input when on the console
- * Fix for leaks of None objects in str_util extension
+ * Fix for leaks of None objects in str_util extension
- * Fix for WidgetWrap and AttrMap not working with fixed widgets
+ * Fix for WidgetWrap and AttrMap not working with fixed widgets
- * Fix for a lock up when attempting to wrap text containing wide
- characters into a single character column
+ * Fix for a lock up when attempting to wrap text containing wide
+ characters into a single character column
Urwid 0.9.9.2
+=============
- * Fix for an Overlay get_cursor_coords(), and Text top-widget bug
+2011-07-13
- * Fix for a Padding rows() bug when used with width=PACK
+ * Fix for an Overlay get_cursor_coords(), and Text top-widget bug
- * Fix for a bug with large flow widgets used in an Overlay
+ * Fix for a Padding rows() bug when used with width=PACK
- * Fix for a gpm_mev bug
+ * Fix for a bug with large flow widgets used in an Overlay
- * Fix for Pile and GraphVScale when rendered with no contents
+ * Fix for a gpm_mev bug
- * Fix for a Python 2.3 incompatibility (0.9.9 is the last release
- to claim support Python 2.3)
+ * Fix for Pile and GraphVScale when rendered with no contents
+
+ * Fix for a Python 2.3 incompatibility (0.9.9 is the last release
+ to claim support Python 2.3)
Urwid 0.9.9.1
+=============
+
+2010-01-25
- * Fix for ListBox snapping to selectable widgets taller than the
- ListBox itself
+ * Fix for ListBox snapping to selectable widgets taller than the
+ ListBox itself
- * raw_display switching to alternate buffer now works properly with
- Terminal.app
+ * raw_display switching to alternate buffer now works properly with
+ Terminal.app
- * Fix for BoxAdapter backwards incompatibility introduced in 0.9.9
+ * Fix for BoxAdapter backwards incompatibility introduced in 0.9.9
- * Fix for a doctest failure under powerpc
+ * Fix for a doctest failure under powerpc
- * Fix for systems with gpm_mev installed but not running gpm
+ * Fix for systems with gpm_mev installed but not running gpm
Urwid 0.9.9
+===========
+
+2009-11-15
- * New support for 256 and 88 color terminals with raw_display
- and html_fragment display modules
+ * New support for 256 and 88 color terminals with raw_display
+ and html_fragment display modules
- * New palette_test example program to demonstrate high color
- modes
+ * New palette_test example program to demonstrate high color
+ modes
- * New AttrSpec class for specifying specific colors instead of
- using attributes defined in the screen's palette
+ * New AttrSpec class for specifying specific colors instead of
+ using attributes defined in the screen's palette
- * New MainLoop class ties together widgets, user input, screen
- display and one of a number of new event loops, removing the
- need for tedious, error-prone boilerplate code
+ * New MainLoop class ties together widgets, user input, screen
+ display and one of a number of new event loops, removing the
+ need for tedious, error-prone boilerplate code
- * New GLibEventLoop allows running Urwid applications with GLib
- (makes D-Bus integration easier)
+ * New GLibEventLoop allows running Urwid applications with GLib
+ (makes D-Bus integration easier)
- * New TwistedEventLoop allows running Urwid with a Twisted reactor
+ * New TwistedEventLoop allows running Urwid with a Twisted reactor
- * Added new docstrings and doctests to many widget classes
+ * Added new docstrings and doctests to many widget classes
- * New AttrMap widget supports mapping any attribute to any other
- attribute, replaces AttrWrap widget
+ * New AttrMap widget supports mapping any attribute to any other
+ attribute, replaces AttrWrap widget
- * New WidgetDecoration base class for AttrMap, BoxAdapter, Padding,
- Filler and LineBox widgets creates a common method for accessing
- and updating their contained widgets
+ * New WidgetDecoration base class for AttrMap, BoxAdapter, Padding,
+ Filler and LineBox widgets creates a common method for accessing
+ and updating their contained widgets
- * New left and right values may be specified in Padding widgets
+ * New left and right values may be specified in Padding widgets
- * New command_map for specifying which keys cause actions such as
- clicking Button widgets and scrolling ListBox widgets
+ * New command_map for specifying which keys cause actions such as
+ clicking Button widgets and scrolling ListBox widgets
- * New tty_signal_keys() method of raw_display.Screen and
- curses_display.Screen allows changing or disabling the keys used
- to send signals to the application
+ * New tty_signal_keys() method of raw_display.Screen and
+ curses_display.Screen allows changing or disabling the keys used
+ to send signals to the application
- * Added helpful __repr__ for many widget classes
+ * Added helpful __repr__ for many widget classes
- * Updated all example programs to use MainLoop class
+ * Updated all example programs to use MainLoop class
- * Updated tutorial with MainLoop usage and improved examples
-
- * Renamed WidgetWrap.w to _w, indicating its intended use as a way
- to implement a widget with other widgets, not necessarily as
- a container for other widgets
+ * Updated tutorial with MainLoop usage and improved examples
- * Replaced all tabs with 4 spaces, code is now more aerodynamic
- (and PEP 8 compliant)
+ * Renamed WidgetWrap.w to _w, indicating its intended use as a way
+ to implement a widget with other widgets, not necessarily as
+ a container for other widgets
- * Added saving of stdin and stdout in raw_display module allowing
- the originals to be redirected
+ * Replaced all tabs with 4 spaces, code is now more aerodynamic
+ (and PEP 8 compliant)
- * Updated BigText widget's HalfBlock5x4Font
+ * Added saving of stdin and stdout in raw_display module allowing
+ the originals to be redirected
- * Fixed graph example CPU usage when animation is stopped
+ * Updated BigText widget's HalfBlock5x4Font
- * Fixed a memory leak related to objects listening for signals
+ * Fixed graph example CPU usage when animation is stopped
- * Fixed a Popen3 deprecation warning
+ * Fixed a memory leak related to objects listening for signals
+
+ * Fixed a Popen3 deprecation warning
Urwid 0.9.8.4
+=============
+
+2009-03-13
- * Fixed incompatibilities with Python 2.6 (by Friedrich Weber)
+ * Fixed incompatibilities with Python 2.6 (by Friedrich Weber)
- * Fixed a SimpleListWalker with emptied list bug (found by Walter
- Mundt)
-
- * Fixed a curses_display stop()/start() bug (found by Christian
- Scharkus)
+ * Fixed a SimpleListWalker with emptied list bug (found by Walter
+ Mundt)
- * Fixed an is_wide_character() segfault on bad input data bug
- (by Andrew Psaltis)
-
- * Fixed a CanvasCache with render() used in both a widget and its
- superclass bug (found by Andrew Psaltis)
+ * Fixed a curses_display stop()/start() bug (found by Christian
+ Scharkus)
- * Fixed a ListBox.ends_visible() on empty list bug (found by Marc
- Hartstein)
-
- * Fixed a tutorial example bug (found by Kurtis D. Rader)
+ * Fixed an is_wide_character() segfault on bad input data bug
+ (by Andrew Psaltis)
- * Fixed an Overlay.keypress() bug (found by Andreas Klöckner)
+ * Fixed a CanvasCache with render() used in both a widget and its
+ superclass bug (found by Andrew Psaltis)
- * Fixed setuptools configuration (by Andreas Klöckner)
+ * Fixed a ListBox.ends_visible() on empty list bug (found by Marc
+ Hartstein)
+
+ * Fixed a tutorial example bug (found by Kurtis D. Rader)
+
+ * Fixed an Overlay.keypress() bug (found by Andreas Klöckner)
+
+ * Fixed setuptools configuration (by Andreas Klöckner)
Urwid 0.9.8.3
+=============
- * Fixed a canvas cache memory leak affecting 0.9.8, 0.9.8.1 and
- 0.9.8.2 (found by John Goodfellow)
+2008-07-14
- * Fixed a canvas fill_attr() bug (found by Joern Koerner)
+ * Fixed a canvas cache memory leak affecting 0.9.8, 0.9.8.1 and
+ 0.9.8.2 (found by John Goodfellow)
+
+ * Fixed a canvas fill_attr() bug (found by Joern Koerner)
Urwid 0.9.8.2
+=============
+
+2008-05-19
- * Fixed incompatibilities with Python 2.3
+ * Fixed incompatibilities with Python 2.3
- * Fixed Pile cursor pref_col bug, WidgetWrap rows caching bug, Button
- mouse_event with no callback bug, Filler body bug triggered by the
- tutorial and a LineBox lline parameter typo.
+ * Fixed Pile cursor pref_col bug, WidgetWrap rows caching bug, Button
+ mouse_event with no callback bug, Filler body bug triggered by the
+ tutorial and a LineBox lline parameter typo.
Urwid 0.9.8.1
+=============
- * Fixed a Filler render() bug, a raw_display start()/stop() bug and a
- number of problems triggered by very small terminal window sizes.
+2007-06-21
+
+ * Fixed a Filler render() bug, a raw_display start()/stop() bug and a
+ number of problems triggered by very small terminal window sizes.
Urwid 0.9.8
+===========
+
+2007-03-23
- * Rendering is now significantly faster.
+ * Rendering is now significantly faster.
- * New Widget base class for all widgets. It includes automatic caching
- of rows() and render() methods. It also adds a new __super attribute
- for accessing methods in superclasses.
+ * New Widget base class for all widgets. It includes automatic caching
+ of rows() and render() methods. It also adds a new __super attribute
+ for accessing methods in superclasses.
- Widgets must now call self._invalidate() to notify the cache when
- their content has changed.
+ Widgets must now call self._invalidate() to notify the cache when
+ their content has changed.
- To disable caching in a widget set the class variable no_cache to a
- list that includes the string "render".
+ To disable caching in a widget set the class variable no_cache to a
+ list that includes the string "render".
- * Canvas classes have been reorganized: Canvas has been renamed to
- TextCanvas and Canvas is now the base class for all canvases. New
- canvas classes include BlankCanvas, SolidCanvas and CompositeCanvas.
+ * Canvas classes have been reorganized: Canvas has been renamed to
+ TextCanvas and Canvas is now the base class for all canvases. New
+ canvas classes include BlankCanvas, SolidCanvas and CompositeCanvas.
- * External event loops may now be used with the raw_display module. The
- new methods get_input_descriptors() and get_input_nonblocking()
- should be used instead of get_input() to allow input processing
- without blocking.
+ * External event loops may now be used with the raw_display module. The
+ new methods get_input_descriptors() and get_input_nonblocking()
+ should be used instead of get_input() to allow input processing
+ without blocking.
- * The Columns, Pile and ListBox widgets now choose their first
- selectable child widget as the focus widget by defaut.
+ * The Columns, Pile and ListBox widgets now choose their first
+ selectable child widget as the focus widget by defaut.
- * New ListWalker base class for list walker classes.
+ * New ListWalker base class for list walker classes.
- * New Signals class that will be used to improve the existing event
- callbacks. Currently it is used for ListWalker objects to notify
- their ListBox when their content has changed.
+ * New Signals class that will be used to improve the existing event
+ callbacks. Currently it is used for ListWalker objects to notify
+ their ListBox when their content has changed.
- * SimpleListWalker now behaves as a list and supports all list
- operations. This class now detects when changes are made to the list
- and notifies the ListBox object. New code should use this class to
- wrap lists of widgets before passing them to the ListBox
- constructor.
+ * SimpleListWalker now behaves as a list and supports all list
+ operations. This class now detects when changes are made to the list
+ and notifies the ListBox object. New code should use this class to
+ wrap lists of widgets before passing them to the ListBox
+ constructor.
- * New PollingListWalker class is now the default list walker that is
- used when passing a simple list to the ListBox constructor. This
- class is intended for backwards compatibility only. When this class
- is used the ListBox object is unable to cache its render() method.
+ * New PollingListWalker class is now the default list walker that is
+ used when passing a simple list to the ListBox constructor. This
+ class is intended for backwards compatibility only. When this class
+ is used the ListBox object is unable to cache its render() method.
- * The curses_display module can now draw in the lower-right corner of
- the screen.
+ * The curses_display module can now draw in the lower-right corner of
+ the screen.
- * All display modules now have start() and stop() methods that may be
- used instead of calling run_wrapper().
+ * All display modules now have start() and stop() methods that may be
+ used instead of calling run_wrapper().
- * The raw_display module now uses an alternate buffer so that the
- original screen can be restored on exit. The old behaviour is
- available by seting the alternate_buffer parameter of start() or
- run_wrapper() to False.
+ * The raw_display module now uses an alternate buffer so that the
+ original screen can be restored on exit. The old behaviour is
+ available by seting the alternate_buffer parameter of start() or
+ run_wrapper() to False.
- * Many internal string processing functions have been rewritten in C to
- improve their performance.
+ * Many internal string processing functions have been rewritten in C to
+ improve their performance.
- * Compatible with Python >= 2.2. Python 2.1 is no longer supported.
+ * Compatible with Python >= 2.2. Python 2.1 is no longer supported.
Urwid 0.9.7.2
+=============
+
+2007-01-03
- * Improved performance in UTF-8 mode when ASCII text is used.
+ * Improved performance in UTF-8 mode when ASCII text is used.
- * Fixed a UTF-8 input bug.
+ * Fixed a UTF-8 input bug.
- * Added a clear() function to the the display modules to force the
- screen to be repainted on the next draw_screen() call.
+ * Added a clear() function to the the display modules to force the
+ screen to be repainted on the next draw_screen() call.
Urwid 0.9.7.1
+=============
- * Fixed bugs in Padding and Overlay widgets introduced in 0.9.7.
+2006-10-03
+
+ * Fixed bugs in Padding and Overlay widgets introduced in 0.9.7.
Urwid 0.9.7
+===========
+
+2006-10-01
- * Added initial support for fixed widgets - widgets that have a fixed
- size on screen. Fixed widgets expect a size parameter equal to ().
- Fixed widgets must implement the pack(..) function to return their
- size.
+ * Added initial support for fixed widgets - widgets that have a fixed
+ size on screen. Fixed widgets expect a size parameter equal to ().
+ Fixed widgets must implement the pack(..) function to return their
+ size.
- * New BigText class that draws text with fonts made of grids of
- character cells. BigText is a fixed widget and doesn't do any
- alignment or wrapping. It is intended for banners and number readouts
- that need to stand out on the screen.
+ * New BigText class that draws text with fonts made of grids of
+ character cells. BigText is a fixed widget and doesn't do any
+ alignment or wrapping. It is intended for banners and number readouts
+ that need to stand out on the screen.
- Fonts: Thin3x3Font, Thin4x3Font, Thin6x6Font (full ascii)
+ Fonts: Thin3x3Font, Thin4x3Font, Thin6x6Font (full ascii)
- UTF-8 only fonts: HalfBlock5x4Font, HalfBlock6x5Font,
- HalfBlockHeavy6x5Font, HalfBlock7x7Font (full ascii)
+ UTF-8 only fonts: HalfBlock5x4Font, HalfBlock6x5Font,
+ HalfBlockHeavy6x5Font, HalfBlock7x7Font (full ascii)
- New function get_all_fonts() may be used to get a list of the
- available fonts.
+ New function get_all_fonts() may be used to get a list of the
+ available fonts.
- * New example program bigtext.py demonstrates use of BigText.
+ * New example program bigtext.py demonstrates use of BigText.
- * Padding class now has a clipping mode that pads or clips fixed
- widgets to make them behave as flow widgets.
+ * Padding class now has a clipping mode that pads or clips fixed
+ widgets to make them behave as flow widgets.
- * Overlay class can now accept a fixed widget as the widget to display
- "on top".
+ * Overlay class can now accept a fixed widget as the widget to display
+ "on top".
- * New Canvas functions: pad_trim() and pad_trim_left_right().
+ * New Canvas functions: pad_trim() and pad_trim_left_right().
- * Fixed a bug in Filler.get_cursor_coords() that causes a crash if the
- contained widget's get_cursor_coords() function returns None.
+ * Fixed a bug in Filler.get_cursor_coords() that causes a crash if the
+ contained widget's get_cursor_coords() function returns None.
- * Fixed a bug in Text.pack() that caused an infinite loop when the text
- contained a newline. This function is not currently used by Urwid.
+ * Fixed a bug in Text.pack() that caused an infinite loop when the text
+ contained a newline. This function is not currently used by Urwid.
- * Edit.__init__() now calls set_edit_text() to initialize its text.
+ * Edit.__init__() now calls set_edit_text() to initialize its text.
- * Overlay.calculate_padding_filler() and Padding.padding_values() now
- include focus parameters.
+ * Overlay.calculate_padding_filler() and Padding.padding_values() now
+ include focus parameters.
Urwid 0.9.6
+===========
- * Fixed Unicode conversion and locale issues when using Urwid with
- Python < 2.4. The graph.py example program should now work properly
- with older versions of Python.
+2006-08-22
- * The docgen_tutorial.py script can now write out the tutorial example
- programs as individual files.
+ * Fixed Unicode conversion and locale issues when using Urwid with
+ Python < 2.4. The graph.py example program should now work properly
+ with older versions of Python.
- * Updated reference documentation table of contents to show which
- widgets are flow and/or box widgets.
+ * The docgen_tutorial.py script can now write out the tutorial example
+ programs as individual files.
- * Columns.set_focus(..) will now accept an integer or a widget as its
- parameter.
+ * Updated reference documentation table of contents to show which
+ widgets are flow and/or box widgets.
- * Added detection for rxvt's HOME and END escape sequences.
+ * Columns.set_focus(..) will now accept an integer or a widget as its
+ parameter.
- * Added support for setuptools (improved distutils).
+ * Added detection for rxvt's HOME and END escape sequences.
+
+ * Added support for setuptools (improved distutils).
Urwid 0.9.5
+===========
+
+2006-06-14
- * Some Unicode characters are now converted to use the G1 alternate
- character set with DEC special and line drawing characters. These
- Unicode characters should now "just work" in almost all terminals and
- encodings.
+ * Some Unicode characters are now converted to use the G1 alternate
+ character set with DEC special and line drawing characters. These
+ Unicode characters should now "just work" in almost all terminals and
+ encodings.
- When Urwid is run with the UTF-8 encoding the characters are left as
- UTF-8 and not converted.
+ When Urwid is run with the UTF-8 encoding the characters are left as
+ UTF-8 and not converted.
- The characters converted are:
+ The characters converted are:
- \u00A3 (£), \u00B0 (°), \u00B1 (±), \u00B7 (·), \u03C0 (π),
- \u2260 (≠), \u2264 (≤), \u2265 (≥), \u23ba (⎺), \u23bb (⎻),
- \u23bc (⎼), \u23bd (⎽), \u2500 (─), \u2502 (│), \u250c (┌),
- \u2510 (┐), \u2514 (└), \u2518 (┘), \u251c (├), \u2524 (┤),
- \u252c (┬), \u2534 (┴), \u253c (┼), \u2592 (▒), \u25c6 (◆)
+ \u00A3 (£), \u00B0 (°), \u00B1 (±), \u00B7 (·), \u03C0 (π),
+ \u2260 (≠), \u2264 (≤), \u2265 (≥), \u23ba (⎺), \u23bb (⎻),
+ \u23bc (⎼), \u23bd (⎽), \u2500 (─), \u2502 (│), \u250c (┌),
+ \u2510 (┐), \u2514 (└), \u2518 (┘), \u251c (├), \u2524 (┤),
+ \u252c (┬), \u2534 (┴), \u253c (┼), \u2592 (▒), \u25c6 (◆)
- * New SolidFill class for filling an area with a single character.
+ * New SolidFill class for filling an area with a single character.
- * New LineBox class for wrapping widgets in a box made of line- drawing
- characters. May be used as a box widget or a flow widget.
+ * New LineBox class for wrapping widgets in a box made of line- drawing
+ characters. May be used as a box widget or a flow widget.
- * New example program graph.py demonstrates use of BarGraph, LineBox,
- ProgressBar and SolidFill.
+ * New example program graph.py demonstrates use of BarGraph, LineBox,
+ ProgressBar and SolidFill.
- * Pile class may now be used as a box widget and contain a mix of box
- and flow widgets.
+ * Pile class may now be used as a box widget and contain a mix of box
+ and flow widgets.
- * Columns class may now contain a mix of box and flow widgets. The box
- widgets will take their height from the maximum height of the flow
- widgets.
+ * Columns class may now contain a mix of box and flow widgets. The box
+ widgets will take their height from the maximum height of the flow
+ widgets.
- * Improved the smoothness of resizing with raw_display module. The
- module will now try to stop updating the screen when a resize event
- occurs during the update.
+ * Improved the smoothness of resizing with raw_display module. The
+ module will now try to stop updating the screen when a resize event
+ occurs during the update.
- * The Edit and IntEdit classes now use their set_edit_text() and
- set_edit_pos() functions when handling keypresses, so those functions
- may be overridden to catch text modification.
+ * The Edit and IntEdit classes now use their set_edit_text() and
+ set_edit_pos() functions when handling keypresses, so those functions
+ may be overridden to catch text modification.
- * The set_state() functions in the CheckBox and RadioButton classes now
- have a do_callback parameter that determines if the callback function
- registered will be called.
+ * The set_state() functions in the CheckBox and RadioButton classes now
+ have a do_callback parameter that determines if the callback function
+ registered will be called.
- * Fixed a newly introduced incompatibility with python < 2.3.
+ * Fixed a newly introduced incompatibility with python < 2.3.
- * Fixed a missing symbol in curses_display when python is linked
- against libcurses.
+ * Fixed a missing symbol in curses_display when python is linked
+ against libcurses.
- * Fixed mouse handling bugs in the Frame and Overlay classes.
+ * Fixed mouse handling bugs in the Frame and Overlay classes.
- * Fixed a Padding bug when the left or right has no padding.
+ * Fixed a Padding bug when the left or right has no padding.
Urwid 0.9.4
+===========
+
+2006-05-30
- * Enabled mouse handling across the Urwid library.
+ * Enabled mouse handling across the Urwid library.
- Added a new mouse_event() method to the Widget interface definition
- and to the following widgets: Edit, CheckBox, RadioButton, Button,
- GridFlow, Padding, Filler, Overlay, Frame, Pile, Columns, BoxAdapter
- and ListBox.
+ Added a new mouse_event() method to the Widget interface definition
+ and to the following widgets: Edit, CheckBox, RadioButton, Button,
+ GridFlow, Padding, Filler, Overlay, Frame, Pile, Columns, BoxAdapter
+ and ListBox.
- Updated example programs browse.py, calc.py, dialog.py, edit.py and
- tour.py to support mouse input.
+ Updated example programs browse.py, calc.py, dialog.py, edit.py and
+ tour.py to support mouse input.
- * Released the files used to generate the reference and tutorial
- documentation: docgen_reference.py, docgen_tutorial.py and
- tmpl_tutorial.html. The "docgen" scripts write the documentation to
- stdout. docgen_tutorial.py requires the Templayer HTML templating
- library to run: http://excess.org/templayer/
+ * Released the files used to generate the reference and tutorial
+ documentation: docgen_reference.py, docgen_tutorial.py and
+ tmpl_tutorial.html. The "docgen" scripts write the documentation to
+ stdout. docgen_tutorial.py requires the Templayer HTML templating
+ library to run: http://excess.org/templayer/
- * Improved Widget and List Walker interface documentation.
+ * Improved Widget and List Walker interface documentation.
- * Fixed a bug in the handling of invalid UTF-8 data. All invalid
- characters are now replaced with '?' characters when displayed.
+ * Fixed a bug in the handling of invalid UTF-8 data. All invalid
+ characters are now replaced with '?' characters when displayed.
Urwid 0.9.3
+===========
- * Improved mouse reporting.
+2006-05-14
- The raw_display module now detects gpm mouse events by reading
- /usr/bin/mev output. The curses_display module already supports gpm
- directly.
+ * Improved mouse reporting.
- Mouse drag events are now reported by raw_display in terminals that
- provide button event tracking and on the console with gpm. Note that
- gpm may report coordinates off the screen if the user drags the mouse
- off the edge.
+ The raw_display module now detects gpm mouse events by reading
+ /usr/bin/mev output. The curses_display module already supports gpm
+ directly.
- Button release events now report which button was released if that
- information is available, currently only on the console with gpm.
+ Mouse drag events are now reported by raw_display in terminals that
+ provide button event tracking and on the console with gpm. Note that
+ gpm may report coordinates off the screen if the user drags the mouse
+ off the edge.
- * Added display of raw keycodes to the input_test.py example program.
+ Button release events now report which button was released if that
+ information is available, currently only on the console with gpm.
- * Fixed a text layout bug affecting clipped text with blank lines, and
- another related to wrapped text starting with a space character.
+ * Added display of raw keycodes to the input_test.py example program.
- * Fixed a Frame.keypress() bug that caused it to call keypress on
- unselectable widgets.
+ * Fixed a text layout bug affecting clipped text with blank lines, and
+ another related to wrapped text starting with a space character.
+
+ * Fixed a Frame.keypress() bug that caused it to call keypress on
+ unselectable widgets.
Urwid 0.9.2
+===========
+
+2006-03-18
- * Preliminary mouse support was added to the raw_display and
- curses_display modules. A new Screen.set_mouse_tracking() method was
- added to enable mouse tracking. Mouse events are returned alongside
- keystrokes from the Screen.get_input() method.
+ * Preliminary mouse support was added to the raw_display and
+ curses_display modules. A new Screen.set_mouse_tracking() method was
+ added to enable mouse tracking. Mouse events are returned alongside
+ keystrokes from the Screen.get_input() method.
- The widget interface does not yet include mouse handling. This will
- be addressed in the next release.
+ The widget interface does not yet include mouse handling. This will
+ be addressed in the next release.
- * A new convenience function is_mouse_event() was added to help in
- separating mouse events from keystrokes.
+ * A new convenience function is_mouse_event() was added to help in
+ separating mouse events from keystrokes.
- * Added a new example program input_test.py. This program displays the
- keyboard and mouse input it receives. It may be run as a CGI script
- or from the command line. On the command line it defaults to using
- the curses_display module, use input_test.py raw to use the
- raw_display module instead.
+ * Added a new example program input_test.py. This program displays the
+ keyboard and mouse input it receives. It may be run as a CGI script
+ or from the command line. On the command line it defaults to using
+ the curses_display module, use input_test.py raw to use the
+ raw_display module instead.
- * Fixed an Edit.render() bug that caused it to render the cursor in a
- different location than that reported by Edit.get_cursor_coords() in
- some circumstances.
+ * Fixed an Edit.render() bug that caused it to render the cursor in a
+ different location than that reported by Edit.get_cursor_coords() in
+ some circumstances.
- * Fixed a bug preventing use of UTF-8 characters with Divider widgets.
+ * Fixed a bug preventing use of UTF-8 characters with Divider widgets.
Urwid 0.9.1
+===========
+
+2006-03-06
- * BarGraph and ProgressBar can now display data more accurately by
- using the UTF-8 vertical and horizontal eighth characters. This
- behavior will be enabled when the UTF-8 encoding is detected and
- "smoothed" attributes are passed to the BarGraph or ProgressBar
- constructors.
+ * BarGraph and ProgressBar can now display data more accurately by
+ using the UTF-8 vertical and horizontal eighth characters. This
+ behavior will be enabled when the UTF-8 encoding is detected and
+ "smoothed" attributes are passed to the BarGraph or ProgressBar
+ constructors.
- * New get_encoding_mode() function to determine how Urwid will treat
- raw string data.
+ * New get_encoding_mode() function to determine how Urwid will treat
+ raw string data.
- * New raw_display.signal_init() and raw_display.signal_restore()
- methods that may be overridden by threaded applications that need to
- call signal.signal() from their main thread.
+ * New raw_display.signal_init() and raw_display.signal_restore()
+ methods that may be overridden by threaded applications that need to
+ call signal.signal() from their main thread.
- * Fixed a bug that prevented the use of UTF-8 strings in text markup.
+ * Fixed a bug that prevented the use of UTF-8 strings in text markup.
- * Removed some forgotten asserts that broke 8-bit and CJK input.
+ * Removed some forgotten asserts that broke 8-bit and CJK input.
Urwid 0.9.0
+===========
- * New support for UTF-8 encoding including input, display and editing
- of narrow and wide (CJK) characters.
+2006-02-18
- Preliminary combining (zero-width) character support is included, but
- full support will require terminal behavior detection.
+ * New support for UTF-8 encoding including input, display and editing
+ of narrow and wide (CJK) characters.
- Right-to-Left input and display are not implemented.
+ Preliminary combining (zero-width) character support is included, but
+ full support will require terminal behavior detection.
- * New raw_display module that handles console display without relying
- on external libraries. This module was written as a work around for
- the lack of UTF-8 support in the standard version of ncurses.
+ Right-to-Left input and display are not implemented.
- Eliminates "dead corner" in the bottom right of the screen.
+ * New raw_display module that handles console display without relying
+ on external libraries. This module was written as a work around for
+ the lack of UTF-8 support in the standard version of ncurses.
- Avoids use of bold text in xterm and gnome-terminal for improved
- text legibility.
+ Eliminates "dead corner" in the bottom right of the screen.
- * Fixed Overlay bug related to UTF-8 handling.
+ Avoids use of bold text in xterm and gnome-terminal for improved
+ text legibility.
- * Fixed Edit.move_cursor_to_coords(..) bug related to wide characters
- in UTF-8 encoding.
+ * Fixed Overlay bug related to UTF-8 handling.
+
+ * Fixed Edit.move_cursor_to_coords(..) bug related to wide characters
+ in UTF-8 encoding.
Urwid 0.9.0-pre3
+================
+
+2006-02-13
- * Fixed Canvas attribute padding bug related to -pre1 changes.
+ * Fixed Canvas attribute padding bug related to -pre1 changes.
Urwid 0.9.0-pre2
+================
+
+2006-02-10
- * Replaced the custom align and wrap modes in example program calc.py
- with a new layout class.
+ * Replaced the custom align and wrap modes in example program calc.py
+ with a new layout class.
- * Fixed Overlay class call to Canvas.overlay() broken by -pre1 changes.
+ * Fixed Overlay class call to Canvas.overlay() broken by -pre1 changes.
- * Fixed Padding bug related to Canvas -pre1 changes.
+ * Fixed Padding bug related to Canvas -pre1 changes.
Urwid 0.9.0-pre1
+================
- * New support for UTF-8 encoding. Unicode strings may be used and will
- be converted to the current encoding when output. Regular strings in
- the current encoding may still be used.
+2006-02-08
- PLEASE NOTE: There are issues related to displaying UTF-8 characters
- with the curses_display module that have not yet been resolved.
+ * New support for UTF-8 encoding. Unicode strings may be used and will
+ be converted to the current encoding when output. Regular strings in
+ the current encoding may still be used.
- * New set_encoding() function replaces util.set_double_byte_encoding().
+ PLEASE NOTE: There are issues related to displaying UTF-8 characters
+ with the curses_display module that have not yet been resolved.
- * New supports_unicode() function to query if unicode strings with
- characters outside the ascii range may be used with the current
- encoding.
+ * New set_encoding() function replaces util.set_double_byte_encoding().
- * New TextLayout and StandardTextLayout classes to perform text
- wrapping and alignment. Text widgets now have a layout parameter to
- allow use of custom TextLayout objects.
+ * New supports_unicode() function to query if unicode strings with
+ characters outside the ascii range may be used with the current
+ encoding.
- * New layout structure replaces line translation structure. Layout
- structure now allows arbitrary reordering/positioning of text
- segments, inclusion of UTF-8 characters and insertion of text not
- found in the original text string.
+ * New TextLayout and StandardTextLayout classes to perform text
+ wrapping and alignment. Text widgets now have a layout parameter to
+ allow use of custom TextLayout objects.
- * Removed util.register_align_mode() and util.register_wrap_mode().
- Their functionality has been replaced by the new layout classes.
+ * New layout structure replaces line translation structure. Layout
+ structure now allows arbitrary reordering/positioning of text
+ segments, inclusion of UTF-8 characters and insertion of text not
+ found in the original text string.
+
+ * Removed util.register_align_mode() and util.register_wrap_mode().
+ Their functionality has been replaced by the new layout classes.
Urwid 0.8.10
+============
+
+2005-11-27
- * Expanded tutorial to cover advanced ListBox usage, custom widget
- classes and the Pile, BoxAdapter, Columns, GridFlow and Overlay
- classes.
+ * Expanded tutorial to cover advanced ListBox usage, custom widget
+ classes and the Pile, BoxAdapter, Columns, GridFlow and Overlay
+ classes.
- * Added escape sequence for "shift tab" to curses_display.
+ * Added escape sequence for "shift tab" to curses_display.
- * Added ListBox.set_focus_valign() to allow positioning of the focus
- widget within the ListBox.
+ * Added ListBox.set_focus_valign() to allow positioning of the focus
+ widget within the ListBox.
- * Added WidgetWrap class for extending existing widgets without
- inheriting their complete namespace.
+ * Added WidgetWrap class for extending existing widgets without
+ inheriting their complete namespace.
- * Fixed web_display/mozilla breakage from 0.8.9. Fixed crash on invalid
- locale setting. Fixed ListBox slide-back bug. Fixed improper space
- trimming in calculate_alignment(). Fixed browse.py example program
- rows bug. Fixed sum definition, use of long ints for python2.1. Fixed
- warnings with python2.1. Fixed Padding.get_pref_col() bug. Fixed
- Overlay splitting CJK characters bug.
+ * Fixed web_display/mozilla breakage from 0.8.9. Fixed crash on invalid
+ locale setting. Fixed ListBox slide-back bug. Fixed improper space
+ trimming in calculate_alignment(). Fixed browse.py example program
+ rows bug. Fixed sum definition, use of long ints for python2.1. Fixed
+ warnings with python2.1. Fixed Padding.get_pref_col() bug. Fixed
+ Overlay splitting CJK characters bug.
Urwid 0.8.9
+===========
- * New Overlay class for drawing widgets that obscure parts of other
- widgets. May be used for drop down menus, combo boxes, overlapping
- "windows", caption text etc.
+2005-10-21
- * New BarGraph, GraphVScale and ProgressBar classes for graphical
- display of data in Urwid applications.
+ * New Overlay class for drawing widgets that obscure parts of other
+ widgets. May be used for drop down menus, combo boxes, overlapping
+ "windows", caption text etc.
- * New method for configuring keyboard input timeouts and delays:
- curses_display.Screen.set_input_timeouts().
+ * New BarGraph, GraphVScale and ProgressBar classes for graphical
+ display of data in Urwid applications.
- * Fixed a ListBox.set_focus() bug.
+ * New method for configuring keyboard input timeouts and delays:
+ curses_display.Screen.set_input_timeouts().
+
+ * Fixed a ListBox.set_focus() bug.
Urwid 0.8.8
+===========
+
+2005-06-13
- * New web_display module that emulates a console display within a web
- browser window. Application must be run as a CGI script under Apache.
+ * New web_display module that emulates a console display within a web
+ browser window. Application must be run as a CGI script under Apache.
- Supports font/window resizing, keepalive for long-lived connections,
- limiting maximum concurrent connections, polling and connected update
- methods. Tested with Mozilla Firefox and Internet Explorer.
+ Supports font/window resizing, keepalive for long-lived connections,
+ limiting maximum concurrent connections, polling and connected update
+ methods. Tested with Mozilla Firefox and Internet Explorer.
- * New BoxAdapter class for using box widgets in places that usually
- expect flow widgets.
+ * New BoxAdapter class for using box widgets in places that usually
+ expect flow widgets.
- * New curses_display input handling with better ESC key detection and
- broader escape code support.
+ * New curses_display input handling with better ESC key detection and
+ broader escape code support.
- * Shortened resize timeout on gradual resize to improve responsiveness.
+ * Shortened resize timeout on gradual resize to improve responsiveness.
Urwid 0.8.7
+===========
+
+2005-05-21
- * New widget classes: Button, RadioButton, CheckBox.
+ * New widget classes: Button, RadioButton, CheckBox.
- * New layout widget classes: Padding, GridFlow.
+ * New layout widget classes: Padding, GridFlow.
- * New dialog.py example program that behaves like dialog(1) command.
+ * New dialog.py example program that behaves like dialog(1) command.
- * Pile widgets now support selectable items, focus changing with up and
- down keys and setting the cursor position.
+ * Pile widgets now support selectable items, focus changing with up and
+ down keys and setting the cursor position.
- * Frame widgets now support selectable items in the header and footer.
+ * Frame widgets now support selectable items in the header and footer.
- * Columns widgets now support fixed width and relative width columns, a
- minimum width for all columns, selectable items within columns
- containing flow widgets (already supported for box widgets), focus
- changing with left and right keys and setting the cursor position.
+ * Columns widgets now support fixed width and relative width columns, a
+ minimum width for all columns, selectable items within columns
+ containing flow widgets (already supported for box widgets), focus
+ changing with left and right keys and setting the cursor position.
- * Filler widgets may now wrap box widgets and have more alignment options.
+ * Filler widgets may now wrap box widgets and have more alignment options.
- * Updated tour.py example program to show new widget types and
- features.
+ * Updated tour.py example program to show new widget types and
+ features.
- * Avoid hogging cpu on gradual window resize and fix for slow resize
- with cygwin's broken curses implementation.
+ * Avoid hogging cpu on gradual window resize and fix for slow resize
+ with cygwin's broken curses implementation.
- * Fixed minor CJK problem and curs_set() crash under MacOSX and Cygwin.
+ * Fixed minor CJK problem and curs_set() crash under MacOSX and Cygwin.
- * Fixed crash when deleting cells in calc.py example program.
+ * Fixed crash when deleting cells in calc.py example program.
Urwid 0.8.6
+===========
- * Improved support for CJK double-byte encodings: BIG5, UHC, GBK,
- GB2312, CN-GB, EUC-KR, EUC-CN, EUC-JP (JISX 0208 only) and EUC-TW
- (CNS 11643 plain 1 only)
+2005-01-03
- * Added support for ncurses' use_default_colors() function to
- curses_display module (Python >= 2.4).
+ * Improved support for CJK double-byte encodings: BIG5, UHC, GBK,
+ GB2312, CN-GB, EUC-KR, EUC-CN, EUC-JP (JISX 0208 only) and EUC-TW
+ (CNS 11643 plain 1 only)
- register_palette() and register_palette_entry() now accept "default"
- as foreground and/or background. If the terminal's default attributes
- cannot be detected black on light gray will be used to accomodate
- terminals with always-black cursors.
+ * Added support for ncurses' use_default_colors() function to
+ curses_display module (Python >= 2.4).
- "default" is now the default for text with no attributes. This means
- that areas with no attributes will change from light grey on black
- (curses default) to black on light gray or the terminal's default.
+ register_palette() and register_palette_entry() now accept "default"
+ as foreground and/or background. If the terminal's default attributes
+ cannot be detected black on light gray will be used to accomodate
+ terminals with always-black cursors.
- * Modified examples to not use black as background of Edit widgets.
+ "default" is now the default for text with no attributes. This means
+ that areas with no attributes will change from light grey on black
+ (curses default) to black on light gray or the terminal's default.
- * Fixed curses_display curs_set() call so that cursor is hidden when
- widget in focus has no cursor position.
+ * Modified examples to not use black as background of Edit widgets.
+
+ * Fixed curses_display curs_set() call so that cursor is hidden when
+ widget in focus has no cursor position.
Urwid 0.8.5
+===========
+
+2004-12-15
- * New tutorial covering basic operation of: curses_display.Screen,
- Canvas, Text, FlowWidget, Filler, BoxWidget, AttrWrap, Edit, ListBox
- and Frame classes
+ * New tutorial covering basic operation of: curses_display.Screen,
+ Canvas, Text, FlowWidget, Filler, BoxWidget, AttrWrap, Edit, ListBox
+ and Frame classes
- * New widget class: Filler
+ * New widget class: Filler
- * New ListBox functions: get_focus(), set_focus()
+ * New ListBox functions: get_focus(), set_focus()
- * Debian packages for Python 2.4.
+ * Debian packages for Python 2.4.
- * Fixed curses_display bug affecting text with no attributes.
+ * Fixed curses_display bug affecting text with no attributes.
Urwid 0.8.4
+===========
- * Improved support for Cyrillic and other simple 8-bit encodings.
+2004-11-20
- * Added new functions to simplify taking screenshots:
- html_fragment.screenshot_init() and
- html_fragment.screenshot_collect()
+ * Improved support for Cyrillic and other simple 8-bit encodings.
- * Improved urwid/curses_display.py input debugging
+ * Added new functions to simplify taking screenshots:
+ html_fragment.screenshot_init() and
+ html_fragment.screenshot_collect()
- * Fixed cursor in screenshots of CJK text. Fixed "end" key in Edit
- boxes with CJK text.
+ * Improved urwid/curses_display.py input debugging
+
+ * Fixed cursor in screenshots of CJK text. Fixed "end" key in Edit
+ boxes with CJK text.
Urwid 0.8.3
+===========
+
+2004-11-15
- * Added support for CJK double-byte encodings.
+ * Added support for CJK double-byte encodings.
- Word wrapping mode "space" will wrap on edges of double width
- characters. Wrapping and clipping will not split double width
- characters.
+ Word wrapping mode "space" will wrap on edges of double width
+ characters. Wrapping and clipping will not split double width
+ characters.
- curses_display.Screen.get_input() may now return double width
- characters. Text and Edit classes will work with a mix of regular and
- double width characters.
+ curses_display.Screen.get_input() may now return double width
+ characters. Text and Edit classes will work with a mix of regular and
+ double width characters.
- * Use new method Edit.set_edit_text() instead of Edit.update_text().
+ * Use new method Edit.set_edit_text() instead of Edit.update_text().
- * Minor improvements to edit.py example program.
+ * Minor improvements to edit.py example program.
Urwid 0.8.2
+===========
+
+2004-11-08
- * Re-released under GNU Lesser General Public License.
+ * Re-released under GNU Lesser General Public License.
Urwid 0.8.1
+===========
- * Added support for monochrome terminals. see
- curses_display.Screen.register_palette_entry() and example programs.
- set TERM=xterm-mono to test programs in monochrome mode.
+2004-10-29
- * Added unit testing code test_urwid.py to the examples.
+ * Added support for monochrome terminals. see
+ curses_display.Screen.register_palette_entry() and example programs.
+ set TERM=xterm-mono to test programs in monochrome mode.
- * Can now run urwid/curses_display.py to test your terminal's input and
- colour rendering.
+ * Added unit testing code test_urwid.py to the examples.
- * Fixed an OSX browse.py compatibility issue. Added some OSX keycodes.
+ * Can now run urwid/curses_display.py to test your terminal's input and
+ colour rendering.
+
+ * Fixed an OSX browse.py compatibility issue. Added some OSX keycodes.
Urwid 0.8.0
+===========
+
+2004-10-17
- * Initial Release
+ * Initial Release
diff --git a/docs/index.rst b/docs/index.rst
index b4fc213..31df758 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -4,7 +4,7 @@ Urwid |release| Documentation
.. toctree::
+ changelog
tutorial/index
manual/index
reference/index
- changelog