Giter Club home page Giter Club logo

objectlistview2's Introduction

ObjectListView2

This is an upload of olv 1.3.2 from https://bitbucket.org/wbruhin/objectlistview/src/default/

An ObjectListView is a wrapper around the wx.ListCtrl that makes the list control easier to use. It also provides some useful extra functionality.

Larry Wall, the author of Perl, once wrote that the three essential character flaws of any good programmer were sloth, impatience and hubris. Good programmers want to do the minimum amount of work (sloth). They want their programs to run quickly (impatience). They take inordinate pride in what they have written (hubris).

ObjectListView encourages the vices of sloth and hubris, by allowing programmers to do far less work but still produce great looking results.

Without wasting my time, just tell me what it does!

OK, here's the bullet point feature list:

  • Automatically transforms a collection of model objects into a fully functional wx.ListCtrl.
  • Automatically sorts rows.
  • Easily edits the cell values.
  • Supports all ListCtrl views (report, list, large and small icons).
  • Columns can be fixed-width, have a minimum and/or maximum width, or be space-filling.
  • Displays a "list is empty" message when the list is empty (obviously).
  • Supports checkboxes in any column
  • Supports alternate rows background colors.
  • Supports custom formatting of rows.
  • Supports searching (by typing) on any column, even on massive lists.
  • Supports custom sorting
  • The FastObjectListView version can build a list of 10,000 objects in less than 0.1 seconds.
  • The VirtualObjectListView version supports millions of rows through ListCtrl's virtual mode.
  • The GroupListView version supports arranging rows into collapsible groups.
  • Effortlessly produce professional-looking reports using a ListCtrlPrinter.

Seriously, after using an ObjectListView, you will never go back to using a plain wx.ListCtrl.

OK, I'm interested. What do I do next?

As Phillip has not updated the Python version for a long time I created this fork as I want to use it with wxPython 2.9+ and wxPython 3.x Phoenix on both Python 2.x and 3.x.

To install this version clone the repo or download it and then run setup.py install.

Cloning using ssh::

hg clone ssh://[email protected]/wbruhin/objectlistview

Cloning using https::

hg clone https://[email protected]/wbruhin/objectlistview

The original project was hosted on SourceForge <https://sourceforge.net/project/showfiles.php?group_id=225207&package_id=280564>_.

TODO: Update readme

objectlistview2's People

Contributors

eriknystrom avatar

Stargazers

Ruslan Iskov avatar Waylan Limberg avatar  avatar Raymond Yee avatar svenk avatar Dillon Brown avatar  avatar Violet avatar

Watchers

 avatar Dillon Brown avatar

objectlistview2's Issues

CellEditor.py references long type for all Python versions

CellEditor.py references long type for all versions.

When editing cells, attempting to save the value results in going through the CellEditor and hitting a couple functions that reference long, which no longer exists in Python 3. Needs to know when to and when not to use long type.

Error
Traceback (most recent call last):
  File "C:\Python\Python37-32\lib\unittest\case.py", line 59, in testPartExecutor
    yield
  File "C:\Python\Python37-32\lib\unittest\case.py", line 615, in run
    testMethod()
  File "C:\Users\erik.nystrom\olv\objectlistview\test\test_CellEditors.py", line 55, in testBasics
    self.editor.SetValue(0)
  File "C:\Users\erik.nystrom\olv\objectlistview\ObjectListView2\CellEditor.py", line 273, in SetValue
    number_types = (int, long, float)
NameError: name 'long' is not defined

Update?

Hello,
Is OLV still under development?
I would love to see drag and drop re-arranging of the list...
Thanks for all the hard work.
Andy.

testNoAlternateColours fails unittest

Test fails with following exception

Error
Traceback (most recent call last):
  File "C:\Python\Python37-32\lib\unittest\case.py", line 59, in testPartExecutor
    yield
  File "C:\Python\Python37-32\lib\unittest\case.py", line 615, in run
    testMethod()
  File "C:\Users\erik.nystrom\olv\objectlistview\test\test_ObjectListView.py", line 320, in testNoAlternateColours
    self.objectListView.oddRowsBackColor in set(bkgdColours))
TypeError: unhashable type: 'Colour'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.