[Pipet Devel] What about viewers?

Humberto Ortiz Zuazaga hortiz at neurobio.upr.clu.edu
Tue Apr 13 11:59:32 EDT 1999

> > I was a little confused about the WorkBench.  I thought figures were displayed
> > in the Benchtop.
> I think you mean "Workspace".  Workspace = Benchtop + FigBuilder (+ maybe any
> GUI locus like viewers and editors)

OK, I sit down at the Workspace, and use the Benchtop to guide the analysis, 
using PAOS to control the actions of loci, both GUI loci and analysis loci.  
The ultimate product of an analysis workflow is a figure, displayed in the 
FigBuilder.  Intermediate results were presented by GUI loci (either in their 
own windows or in the "Viewer"), for review or editing.

> I think you mean Viewer == FigBuilder (Browser is part of the Viewer).  As I
> mentioned above, they will both display figures, but the Viewers will display
> one figure.  The FigBuilder will display many and be a place to put text
> comments, etc., like a vector drawing program.
> I also want viewers to be transient (they will pop up and disappear along the
> workpath).  The FigBuilder can stay open so that the final product (the figure)
> can be worked on all the way through the workpath of the user's project.

An alternative is that selecting a figure in the FigBuilder enables editing 
and control of that particular figure. Instead of viewers opening and 
disapearing, all interaction with the user is through the FigBuilder.

> > Since the benchtop must have some way of controling a locus interactively, we
> > can use this same mechanism to script a locus.
> Do you mean script the workflow?  That's right.  And PAOS is "the mechanism".

So I'm dense: I'll admit I still don't get paos.  I read the english 
translation of the article at


but I thought PAOS was just a mechanism for persistent object storage in 
Python. I'll go do some more homework. So if I set a slider on the Benchtop to 
ktup=6, PAOS can communicate with the analysis locus and set the appropriate 
variable to the value I've chosen? What I want to be able to do is compose a 
new viewer or widget by taking an existing viewer or widget, and wrapping it 
up in some code to present a dialog in the benchtop, and pass control options 
back to the original widget perhaps after some preprocessing. Like subclassing 
a viewer.

Humberto Ortiz Zuazaga
Bioinformatics Specialist
Institute of Neurobiology
hortiz at neurobio.upr.clu.edu

More information about the Pipet-Devel mailing list