[Python-Dev] Adding a new class to the library?

Eric S. Raymond esr@snark.thyrsus.com
Sun, 6 Aug 2000 19:18:35 -0400


I have a candidate for admission to the Python class library.  It's a
framework class for writing things like menu trees and object
browsers.  What's the correct approval procedure for such things?

In more detail, it supports manipulating a stack of sequence objects.
Each sequence object has an associated selection point (the cirrently
selected sequence member) and an associated viewport around it (a
range of indices or sequence members that are considered `visible'.

There are methods to manipulate the object stack.  More importantly,
there are functions which move the selection point in the current
object around, and drag the viewport with it.  (This sort of
thing sounds simple, but is tricky for the same reason BitBlt is
tricky -- lots of funky boundary cases.)

I've used this as the framework for implementing the curses menu
interface for CML2.  It is well-tested and stable.  It might also
be useful for implementing other kinds of data browsers in any
situation where the concept of limited visibility around a selection
point makes sense.  Symbolic debuggers is an example that leaps to mind.

I am, of course, willing to fully document it.
-- 
		<a href="http://www.tuxedo.org/~esr">Eric S. Raymond</a>

"One of the ordinary modes, by which tyrants accomplish their purposes
without resistance, is, by disarming the people, and making it an
offense to keep arms."
        -- Constitutional scholar and Supreme Court Justice Joseph Story, 1840