Correct/update comment.
[claws.git] / doc / src / maintainer_guide.txt
index 80dee32..605c2a4 100644 (file)
-1. Files
+Contents:
 
-about.c is the about dialog
-account.c is the accounts list dialog
-addressbook.c is the address book dialog
-addr_compl.c is the address completion process
-base64.c handles the base64 conversion
-compose.c is the compose dialog
-esmtp.c handles the esmtp protocol with authentification
-filesel.c is a file selection dialog
-filter.c handles the filtering process
-folder.c handles the folder structure (left panel) without any gtk
-foldersel.c / folderview.c is the left panel gtk implementation
-gtksctree.c ********* NO DESCRIPTION *************
-gtkshruler.c ********* NO DESCRIPTION *************
-gtkutils ********* NO DESCRIPTION *************
-headerview.c is the little header viewer between the list of mails and
-            the mail viewer.
-headerwin.c is the displaying of the all the header in a window
-           (show all headers option)
-html.c is an HTML parser
-imageview.c is the image viewer
-imap.c is the handling of the IMAP4 procotol
-import.c import from mbox dialog
-inc.c ********* NO DESCRIPTION *************
-inputdialog.c is a dialog where you can enter texts
-logwindow.c is the log window (tool menu / log window)
-main.c ********* NO DESCRIPTION *************
-mainwindow.c is the 3-paned main window
-manage_window.c ********* NO DESCRIPTION *************
-manual.c ********* NO DESCRIPTION *************
-mbox.c is the mbox importer/exporter
-md5.c / md5ify.c is the md5 processing
-md5ify.c
-menu.c
-messageview.c is the mail viewer part of the main window
-mh.c handles mh folders
-mimeview.c is the displaying of the list of the MIME part of the mail
-          (at the top of the mail viewer when it is displayed)
-news.c is the news session handling (it uses the nntp protocol)
-nntp.c is the handling of the NNTP procotol
-passphrase.c is the dialog box to enter a password
-pop.c is the handling of the POP3 protocol
-prefs.c is a preference file parser and somes function that
-       set values from the state of a gtk component.
-prefs_account.c is preferences for account dialog
-prefs_common.c is the preference dialog
-prefs_filter.c is preferences for filter dialog
-procheader.c is the RFC822 headers parser.
-procmime.c is a MIME parser.
-procmsg.c handle the list of message files.
-progressdialog.c is a dialog box with a progress bar
-recv.c ********* NO DESCRIPTION *************
-rfc2015.c ********* NO DESCRIPTION *************
-rfc822.c ********* NO DESCRIPTION *************
-select-keys.c ********* NO DESCRIPTION *************
-send.c is the message sender (SMTP only).
-session.c ********* NO DESCRIPTION *************
-setup.c ********* NO DESCRIPTION *************
-smtp.c is the handling of the SMTP protocol.
-socket.c is some function to make it easier to use TCP/unix socket.
-sourcewindow.c ********* NO DESCRIPTION *************
-statusbar.c ********* NO DESCRIPTION *************
-summaryview.c is the displaying of list of the mail in a folder
+  1. Files in src/
+  2. Files in src/common/
+  3. Files in src/gtk/
+  4. Hooks summary
+
+
+------------------------------------------------------------------------------
+1. Files in src/
+
+account.c
+   is the accounts list dialog
+action.c
+   dialog and functions for external actions
+addr_compl.c
+   is the address completion process
+addrbook.c
+   management of address book
+addrcache.c
+   functions to maintain address cache
+addrcindex.c
+   functions to maintain address completion index
+addrclip.c
+   contains address clipboard objects and related functions
+addressadd.c
+   add address to address book dialog
+addressbook.c
+   is the address book dialog
+addrgather.c
+   dialog for gathering EMail addresses from mail folder
+addrharvest.c
+   functions for an E-Mail address harvester
+addrindex.c
+   general functions for accessing address index file
+addritem.c
+   general primitive address item objects
+addrselect.c
+   address list item selection objects
+alertpanel.c
+   dialog displaying warnings and notifications
+codeconv.c
+   conversion of charset encodings
+compose.c
+   is the compose dialog
+crash.c
+   collect gdb backtrace info on crashes
+customheader.c
+   function to parse custom headers configuration file
+displayheader.c
+   function to parse headers display configuration file
+editaddress.c
+   editing single addressbook entries
+editbook.c
+   editing addressbooks
+editgroup.c
+   editing addressbook groups
+editjpilot.c
+   edit JPilot address book data
+editldap.c
+   edit LDAP address book data
+editldap_basedn.c
+   LDAP Base DN selection dialog
+editvcard.c
+   edit vCard address book data
+enriched.c
+   parses text/enriched mime type
+exphtmldlg.c
+   export address book to HTML file (GUI)
+expldifdlg.c
+   export address book to LDIF file (GUI)
+export.c
+   exports MH folders to MBOX
+exporthtml.c
+   export address book to HTML file
+exportldif.c
+   export address book to LDIF file
+filtering.c
+   handles the filtering process and function for filtering data structure
+folder.c
+   handles the folder structure (left panel) without any gtk
+folder_item_prefs.c
+   folder property functions (load, save, copy, ...)
+foldersel.c
+   dialog for selecting mail folders
+folderview.c
+   is the left panel gtk implementation
+grouplistdialog.c
+   this is the newsgroup selection dialog box
+headerview.c
+   is the little header viewer between the list of mails and
+   the mail viewer.html.c
+imap.c
+   is the handling of the IMAP4 procotol
+import.c
+   import from mbox dialog
+importldif.c
+   import LDIF address book data
+importmutt.c
+   import Mutt address book data
+importpine.c
+   import Pine address book data
+inc.c
+   retrievement of POP3 or mbox accounts
+inputdialog.c
+   this is a dialog for the user to type something.
+jpilot.c
+   functions necessary to access JPilot database files
+ldapctrl.c
+   functions for LDAP control data
+ldapquery.c
+   functions necessary to define and perform LDAP queries
+ldapserver.c
+   functions necessary to access LDAP servers
+ldaputil.c
+   some utility functions to access LDAP servers
+ldif.c
+   functions necessary to access LDIF files (LDAP Data Interchange Format
+   files)
+logwindow.c
+   is the log window (tool menu / log window)
+main.c
+   is the main program entry of Sylpheed
+mainwindow.c
+   is the 3-paned main window
+manual.c
+   help menu: links to manual and FAQ
+matcher.c
+   this is some function to match the messages, to handle data structure
+   of matcher/filtering/scoring system or to convert data structures
+   to string.
+matcher_parser_lex.l
+   this is the lexer used in the parse operation of the configuration files
+   of the matcher/filtering/scoring system.
+matcher_parser_parse.y
+   this is the parser of the configuration files of
+   the matcher/filtering/scoring system.
+mbox.c
+   is the mbox importer/exporter
+mbox_folder.c
+   is the mbox folder support
+message_search.c
+   dialog for searching current message
+messageview.c
+   is the mail viewer part of the main window
+mh.c
+   handles mh folders
+mimeview.c
+   is the displaying of the list of the MIME part of the mail
+   (at the top of the mail viewer when it is displayed)
+msgcache.c
+   handles cached message infos
+mutt.c
+   functions necessary to access MUTT address book file
+news.c
+   is the news session handling (it uses the nntp protocol)
+noticeview.c
+   *********** NO DESCRIPTION *********
+passphrase.c
+   *********** NO DESCRIPTION *********
+pine.c
+   functions necessary to access Pine address book file
+pop.c
+   functions for POP3 sessions
+prefs_account.c
+   is preferences for account dialog
+prefs_actions.c
+   is preferences for action dialog
+prefs_common.c
+   is the preferences dialog
+prefs_customheader.c
+   is the preferences dialog for custom headers
+prefs_display_header.c
+   is the preferences dialog for headers display
+prefs_filtering.c
+   is preferences for filtering system dialog
+prefs_filtering_action.c
+   let the user define the actions for a filtering rule
+prefs_folder_item.c
+   is the preference dialog for a folder item
+prefs_gtk.c
+   common functions for handling config windows
+prefs_matcher.c
+   let the user define the condition for a filtering rule or a scoring rule
+prefs_scoring.c
+   is preferences for scoring system dialog
+prefs_summary_column.c
+   dialog for selecting items to display in summaryview
+prefs_template.c
+   dialog for editing templates
+prefs_toolbar.c
+   dialog for customizing toolbars
+procheader.c
+   is the RFC822 headers parser.
+procmime.c
+   is a MIME parser.
+procmsg.c
+   handle the list of message files.
+progressdialog.c
+   is a dialog box with a progress bar
+quote_fmt.c
+   is the quotation system for forward or reply
+quote_fmt_lex.l
+   is the lexer for the configuration of the quotation system
+quote_fmt_parse.y
+   is the parser for the configuration of the quotation system
+recv.c
+   this will receive some data from a file descriptor and write
+   them to a file.
+rfc2015.c
+   GPG support
+scoring.c
+   handles the scoring process and function for scoring data structure
+select-keys.c
+   dialog for selecting gpg keys
+send_message.c
+   message sending to SMTP or through sendmail command.
+setup.c
+   functions for first run (select mailbox dialog) 
+sigstatus.c
+   dialog for gpg signature check
+sourcewindow.c
+   displays the source of the messages.
+ssl_manager.c
+   dialog for handling SSL certificates
+statusbar.c
+   functions for handling statusbar output
+stock_pixmap.c
+   handle the pixmaps including pixmap theming
+string_match.c
+   regexp pattern matching utilities
+summary_search.c
+   dialog for searching folders
+summaryview.c
+   is the displaying of list of the mail in a folder
              (up/right in the main window).
-textview.c is the mail (without MIME part) displaying of the
-          mail viewer.
-unmime.c ********* NO DESCRIPTION *************
-utils.c ********* NO DESCRIPTION *************
-uuencode.c ********* NO DESCRIPTION *************
-xml.c ********* NO DESCRIPTION *************
+syldap.c
+   functions necessary to access LDAP servers
+textview.c
+   is the mail (without MIME part) displaying of the
+   mail viewer.
+toolbar.c
+   functions for handling toolbars
+undo.c
+   undo functions for message editor
+unmime.c
+   decodes headers based on RFC2045 and RFC2047
+vcard.c
+   functions necessary to access vCard files
+
+
+------------------------------------------------------------------------------
+2. Files in src/common/
+
+hooks.c
+   functions for handling hooks
+log.c
+   functions for logging (stdout, file, hook)
+md5.c
+   This is MD5 calculation
+mgutils.c
+   common tools for string and list handling
+nntp.c
+  is the handling of the NNTP procotol
+passcrypt.c
+  encoding of the password in the configuration files.
+plugin.c
+   functions for plugin handling
+prefs.c
+   is a preference file parser.
+quoted-printable.c
+   handle quoted-printable conversion
+session.c
+   This is network connection.
+smtp.c
+   handles the SMTP and ESMTP protocol with authentification
+socket.c
+   is some function to make it easier to use TCP/unix socket.
+ssl.c
+   SSL init and cleanup functions
+ssl_certificate.c
+   functions for checking SSL certificates
+stringtable.c
+   functions for handling hashed string tables
+sylpheed.c
+   application init and cleanup functions
+template.c
+   functions for loading and saving templates
+utils.c
+   common tool functions
+uuencode.c
+   UU encoder
+xml.c
+   XML parser
+xmlprops.c
+   *********** NO DESCRIPTION *********
+
+
+------------------------------------------------------------------------------
+3. Files in src/gtk/
+
+about.c
+   this is the about dialog
+colorlabel.c
+   dialog for setting message color
+description_window.c
+   dialog for showing descriptions (e.g. action syntax)
+filesel.c
+   This is a file selection dialog
+gtkaspell.c
+   spellchecking widget
+gtksctree.c
+   This is a modified GtkCTree.
+gtkshruler.c
+   ruler widget (shown in message editor)
+gtkstext.c
+   This is a modified GtkText.
+gtkutils.c
+   common tools for gtk widgets (e.g. ctree)
+gtkvscrollbutton.c
+   composite widget to provide vertical scrolling
+manage_window.c
+   *********** NO DESCRIPTION *********
+menu.c
+   functions for handling menus
+pluginwindow.c
+   dialog for loading and unloading plugins
+prefswindow.c
+   treeview based preferences dialog
+sslcertwindow.c
+   dialog to display, change or add SSL certificates
+
+
+------------------------------------------------------------------------------
+4. Hooks summary
+
+FOLDER_ITEM_UPDATE_HOOKLIST
+  invocation   after folder content has changed
+  definition   folder.h
+  usage                folder.c, trayicon plugin
+  source       FolderItemUpdateData
+  return       /
+FOLDER_UPDATE_HOOKLIST
+  invocation   after folder content has changed
+  definition   folder.h
+  usage                folder.c
+  source       FolderUpdateData
+  return       /
+LOG_APPEND_TEXT_HOOKLIST
+  invocation   after appending LogText to logfiles
+  definition   common/log.h
+  usage                logwindow.c, demo plugin
+  source       LogText
+  return       /
+MAIL_FILTERING_HOOKLIST
+  invocation   before applying filtering rules
+  definition   procmsg.h
+  usage                spamassassin plugin, clamav plugin.
+  source       MailFilteringData
+  return       TRUE stops further processing of current message
+MAIL_RECEIVE_HOOKLIST
+  invocation   after mail retrieval (before filtering)
+  definition   pop.h
+  usage                fetchinfo plugin
+  source       MailFilteringData
+  return       TRUE stops further processing of this message
+MSGINFO_UPDATE_HOOKLIST
+  invocation   when msginfo has changed
+  definition   procmsg.h
+  usage                summaryview.c
+  source       MsginfoUpdate
+  return       /
+PROGRESSINDICATOR_HOOKLIST
+  invocation   starts/stops/sets progressbar
+  definition   common/progressindicator.h
+  usage                mainwindow.c
+  source       ProgressData
+  data         MainWindow
+  return       /
+SSLCERT_ASK_HOOKLIST
+  invocation   asks for accepting new or modified SSL sertificates
+  definition   common/ssl_certificate.h
+  usage                ssl_certificate.c
+  source       SSLCertHookData
+  return       /
+