Xyhthyx - 2009-01-31

I do not plan on adding additional shortcut keys. The hotkeys that are in place are in thanks to some old Tomboy code when it was written in C (GPLv2).

The program structure is fairly simple and is commented just about everywhere. First, main() does the check to see if stuff was piped in or if it has to parse options (options are parsed in utils.c), then it inits parcellite with init_parcellite() where it connects signals to the status icon, reads history and connects hotkeys (keybinder.c). Then it just sits and runs item_check() every 500 miliseconds running various tests on the clipboard/primary contents to see if it gets added to the history or not.

History is kept in a GSList, singly-linked list. History-related functions kept in history.c: read, write, truncate, etc.

Read the comments above the lines, they explain when the functions are called.

GTK+ and Glib API Docs at http://library.gnome.org/devel/references. My best advice for GTK+ development is to install Glade and construct windows with it to understand how the toolkit behaves.