Hi Leena and others, Not meant to be rude. But welcome to the real world of coding! One really don't get proper design documentation in Open Source world because resources are scare and hackers don't really get much times to talk about design documentation. A working program spoke much louder than tens of pages of design document. A few bit of advice to help you make progress : - ldd /usr/bin/evince shows you all the libraries that evince linked against - look at the Makefile.am in each of the directories, it tells you what each binaries containing the code of. - backends, in GNOME context, this is generally run-time loadable modules. So you should concentrate on the one that you need to look at, since plug-in modules are often very domain specific and very few people have knowledge of all the backends. - Build debug version of evince and try to step through them if you don't know how the program flow. - Get a good book or search for some online tutorial on understand glib, gobject. If needs to get a book to learn about C. I am not a developer for Evince though occasionally I need to fix bugs in it. I find evince code is reasonably well structured and fairly clean. You want to see some code that pull you hairs out, look at http://git.gnome.org/browse/libgnomeprint/ or http://git.gnome.org/browse/libgnomeprintui they are now deprecated for good reasons. All the best! -Ghee On 04/ 9/10 09:52 AM, leena chourey wrote: Dear Evince Developers, |