Package wxPython :: Package lib :: Package mixins :: Module listctrl :: Class wxListCtrlAutoWidthMixin
[show private | hide private]
[frames | no frames]

Class wxListCtrlAutoWidthMixin

Known Subclasses:
GpmThumbFileView

A mix-in class that automatically resizes the last column to take up
the remaining width of the wxListCtrl.

This causes the wxListCtrl to automatically take up the full width of
the list, without either a horizontal scroll bar (unless absolutely
necessary) or empty space to the right of the last column.

NOTE:    This only works for report-style lists.

WARNING: If you override the EVT_SIZE event in your wxListCtrl, make
         sure you call event.Skip() to ensure that the mixin's
         _OnResize method is called.

This mix-in class was written by Erik Westra <ewestra@wave.co.nz>

Method Summary
  __init__(self)
Standard initialiser.
  resizeLastColumn(self, minWidth)
Resize the last column appropriately.
  _doResize(self)
Resize the last column as appropriate.
  _onResize(self, event)
Respond to the wxListCtrl being resized.

Method Details

__init__(self)
(Constructor)

Standard initialiser.

resizeLastColumn(self, minWidth)

Resize the last column appropriately.

If the list's columns are too wide to fit within the window, we use a horizontal scrollbar. Otherwise, we expand the right-most column to take up the remaining free space in the list.

This method is called automatically when the wxListCtrl is resized; you can also call it yourself whenever you want the last column to be resized appropriately (eg, when adding, removing or resizing columns).

'minWidth' is the preferred minimum width for the last column.

_doResize(self)

Resize the last column as appropriate.

If the list's columns are too wide to fit within the window, we use a horizontal scrollbar. Otherwise, we expand the right-most column to take up the remaining free space in the list.

We remember the current size of the last column, before resizing, as the preferred minimum width if we haven't previously been given or calculated a minimum width. This ensure that repeated calls to _doResize() don't cause the last column to size itself too large.

_onResize(self, event)

Respond to the wxListCtrl being resized.

We automatically resize the last column in the list.

Generated by Epydoc 2.0 on Thu Dec 25 10:59:57 2003 http://epydoc.sf.net