First an apology: I know I haven't really contributed anything to loci except a lot of hot air, but I've been busy, and for a while I thought I had bitten off more than I could chew with this project. I hope to contribute some real programs soon, I'm learning to use python (with Tkinter for now) and am starting to learn to use pygnome to write image viewers with the gtk canvas and imlib. As I said, for a while, I thought I had bitten off more than I could chew with this project. What I wanted to do was develop a working gui shell for the free sequence analysis apps, like GCG, or gde, or SeqPup. gnome-python seemed like a good fit, so I was happy when I found tulip. When I start reading the mailing list, I'm appaled to find out that we need to have network aware apps, and workflow, and Gateways and Hubs, and PAOS, and lion and tigers and bears, oh my! The things we've discussed make for a huge system. Paos and the locid in particular look nasty. This is where I almost turned back and decided to write my own simple shell using unix pipes and simple stuff like that. Now, just so you grok where I'm coming from, I don't much like gnome, it seems big and slow and bloated, even compared to KDE. I've mainly heard bad things about CORBA too, even from the gnome developers, who scrapped MICO in favor of ORBit because it was too big and slow. Having said that, a lot of other biowidget groups are into CORBA in a big way, as are the KDE and gnome developers. I think we should give it serious consideration for loci too, heres why: I'm quoting liberally from the Gnome Component white paper: http://www.gnome.org/white-papers/Components/Components/gnome-corba.html "CORBA is used in GNOME to export the internal engine of an application to the rest of the system. Any CORBA client (GNOME compliant applications, regular Unix applications, remote clients running on a different operating system) can use the services that these application provides." Sounds like loci right? "In addition to exporting the API, GNOME is generating a list of standard interfaces that other applications can be written to. For example, the interface Desktop::Editor defines an interface to an editor. This means that an application (such as a Mail client or an IDE program) that is developed using these interfaces can decouple itself from a specific implemenation of the interface." This solves the problem of how to register a locus, Locus::MultisequenceEditor specifies a generic interface, which GST or any other locus can export, the user can then choose which loci to use to handle a request for a Locus::MultisequenceEditor. "CORBA provides a standard, and easy to use Remote Procedure Call (RPC) system that allows different applications to communicate with each other." Just like we want to in loci. "Bonobo is the GNOME Document model. It lets document-based applications embed themselves in each other. Its design is influenced heavily on OLE2 and Active X by Microsoft and has a similar functionality. It is currently in Alpha state, and should be used only by developers, but has been used successfully to embed a Guppi graph within Gnumeric. For those unfamiliar with OLE2, it provides a framework for applications to embed themselves within the same GUI framework. This facilitates, for example, a graph to be embedded in a word-processing document, or a spell checker to be embedded in a plotting program. Bonobo also provides the ability to wrap GTK-style objects around a component, allowing an application developer to use one in his application. A more technical description is available in the BONOBO cvs repository." Damn, they've done it again. This is just how we want the figure builder to work. We could reinvent the wheel in developing loci, but it's best if we at least know what everyone else's wheels look like first. We've got most of the hard parts of loci done, let's try building loci over the top of the gnome CORBA layer, and if it's too slow then consider (a fixing ORBit, or b rewriting just the parts of CORBA we need). -- Humberto Ortiz Zuazaga Bioinformatics Specialist Institute of Neurobiology hortiz at neurobio.upr.clu.edu