[chimera-dev] Query about writing extensions in Chimera
Eric Pettersen
pett at cgl.ucsf.edu
Tue Aug 24 15:29:17 PDT 2010
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-dev/attachments/20100824/31e55647/attachment.html>
More information about the Chimera-dev
mailing list