[Pipet Devel] [Fwd: Development]

J.W. Bizzaro bizzaro at bc.edu
Mon Jan 4 15:45:45 EST 1999

> Hmm - right now I feel I have time to get familiar with python ... so maybe I
> am going to try to build a sequence editor ... any suggestions ?


The sequence vis/edit locus should be closely tied to the sequence comparison
locus: I think users may open up various sequences (using the file/document
translation locus) into the sequence comparison locus and then double-click on a
sequence to see it in the vis/edit tool.

Users may also load a sequence directly into the vis/edit locus, bypassing the
comparison locus.

Once in the vis/edit locus, sequences should be treated like an image in the
GIMP or Photoshop:  Users should be able to click-drag-select segments of a
sequence just like an area in an image.  I imagine the background of the
selected segment would transition from white to black...or maybe a dashed-line
box will surround the segment...I'd prefer the former.

Once selected, the segments can be cut (^X) copied (^C) pasted (^V) or deleted
(^D).  The user should also be able to zoom in and out on the sequence...zooming
in to the resolution of one residue.  The mouse pointer can point out where
selections or insertions occur.  I'd also like to see a box on the side that
shows the start and stop positions of selections, in numerical values.  The menu
bar should contain a file menu with open, close and exit...and an edit menu with
copy, cut, paste and delete...maybe even undo...these are obvious standards.

I can't recall exactly how your Tcl/Tk editor works.  I may have described much
of it already.  I think this is a fun tool to be working on.

Also. take a look at the graphics on this Web site:


It is a chromosome map comparison tool (which may be a part of what you're going
to do...or another tool?), but I like the graphics.  With the gnome-canvas
widget (see below) we will be able to make anti-aliased shapes like this.

> I don't know anything about pythons way to handle classes - is there any
> reason for me to code the sequence classes in C++ ? - or would it be enough
> to let  python handle the basic sequence object and code the heavy number
> crunching part in C++/C ?

>From my experience, Python may be better at handling this sort of thing than
even C++, but Konrad is the best person to answer this question right now.  By
the way, C should be used for number crunching rather than C++.  We discussed
the "problems" with C++ before you came aboard, and we feel that C is more
portable and more directly linked with Python and GTK.  So the Tulip core
distribution should be all Python and ANSI-C.  Third party add-ons can be
whatever...we just want the core to be consistent.

> I think I allready know from my Tcl/Tk sequence editor what
> solutions/ways I definitely should avoid :-)
> - anybody else with tips/hints/critics ?
> If not, I am going to bugger my printer with ... some ... pages of python
> and GTK manuals/references.

I'm sure you got my message about PyG Tools, but again, you may want to start at
my page:


The first widget binding I think you'll want to get familiar with is the
gnome-canvas (part of PyGNOME).  It is supposed to be similar to the Tk canvas.

J.W. Bizzaro                  Phone: 617-552-3905
Boston College                mailto:bizzaro at bc.edu
Department of Chemistry       http://www.uml.edu/Dept/Chem/Bizzaro/

More information about the Pipet-Devel mailing list