On Aug 24, 2010, at 6:57 AM, Arun Prasad Pandurangan wrote:

Dear Chimera Developers Team,

Would like to know whether its possible to develop a custom application
that can be added as a plug-in inside Chimera (For example like the
recent program Ringer)? If so, is there any expert advice or tutorials
available to develop such a custom application that depends on Chimera? 

Dear Arun,
Definitely it is possible -- one of our design goals was to allow people to do this, and here are some examples of "outside" extensions (developed by others and distributed separately):

http://www.cgl.ucsf.edu/chimera/plugins/plugins.html

As Darren mentioned in his reply, there is a Chimera Programmer's Guide:

http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/index.html

The two most pertinent examples there are "Working with the Chimera Extension Manager" and "Adding Command-line Commands".  Basically, you organize your extension as a Python module (a folder/directory-based module, not a single file).  In the module you need to have a special Python file named ChimeraExtension.py, which Chimera will read at startup and from which you can add your extension as an entry in the Tools menu, a button in the Model Panel, and/or as command-line commands.  Almost all the entries in the tools menu are organized this way, so if you look in your Chimera installation* there are many, many ChimeraExtension.py files to use as examples (Aniso/ChimeraExtension.py is one that adds a Tools menu entry and a command-line command in a relatively straightforward fashion; you would still need to look at the basic programmer's examples to know what was going on in that file though).
Also, you don't have to put your extension in the Chimera installation itself (which is handy when you upgrade to a new release).  You can use Favorites->Add to Favorites/Toolbar... to specify additional directories for Chimera to look in for plugins at startup.

* on Windows, look in <your Chimera app>\share; on Linux in <your Chimera app>/share; on Mac in <Chimera.app>/Contents/Resources/share [use Terminal.app to get there or right-click on Chimera.app in the Finder and choose "Show Package Contents"]

--Eric

                        Eric Pettersen

                        UCSF Computer Graphics Lab

                        http://www.cgl.ucsf.edu