/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- * * Copyright (C) 2000 Ximian, Inc. * * Authors: Michael Zucchi * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public License * as published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with the Gnome Library; see the file COPYING.LIB. If not, * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ #ifndef _INDEX_H #define _INDEX_H /* an indexing 'class' maps a key to 1 piece of info */ /*#define INDEX_STAT*/ struct _IBEXCursor { struct _IBEXCursorClass *klass; struct _IBEXIndex *index; }; struct _IBEXCursorClass { void (*close)(struct _IBEXCursor *); guint32 (*next)(struct _IBEXCursor *); char *(*next_key)(struct _IBEXCursor *, int *keylenptr); }; struct _IBEXIndex { struct _IBEXIndexClass *klass; struct _memcache *blocks; blockid_t root; /* root block of ondisk index data */ #ifdef INDEX_STAT int lookups; /* how many lookups */ int lookup_total; /* how many blocks loaded for all lookups (hash chain depth) */ #endif }; struct _IBEXIndexClass { struct _IBEXIndex *(*create)(struct _memcache *bc, int size); struct _IBEXIndex *(*open)(struct _memcache *bc, blockid_t root); int (*sync)(struct _IBEXIndex *); int (*close)(struct _IBEXIndex *); /* lookup a key in the index, returns the keyid of this item, or 0 if not found */ guint32 (*find)(struct _IBEXIndex *, const char *key, int keylen); /* remove a key from the index */ void (*remove)(struct _IBEXIndex *, const char *key, int keylen); /* insert a new key into the index, the keyid is returned */ guint32 (*insert)(struct _IBEXIndex *, const char *key, int keylen); /* get the key contents/key length from the keyid */ char *(*get_key)(struct _IBEXIndex *, guint32 keyid, int *keylenptr); /* set the key contents based on the keyid */ void (*set_data)(struct _IBEXIndex *, guint32 keyid, blockid_t datablock, blockid_t tail); /* get the key contents based on the keyid */ blockid_t (*get_data)(struct _IBEXIndex *, guint32 keyid, blockid_t *tail); /* get a cursor for iterating over all contents */ struct _IBEXCursor *(*get_cursor)(struct _IBEXIndex *); }; /* a storage class, stores lists of lists of id's */ struct _IBEXStore { struct _IBEXStoreClass *klass; struct _memcache *blocks; }; struct _IBEXStoreClass { struct _IBEXStore *(*create)(struct _memcache *bc); int (*sync)(struct _IBEXStore *store); int (*close)(struct _IBEXStore *store); blockid_t (*add)(struct _IBEXStore *store, blockid_t *head, blockid_t *tail, nameid_t data); blockid_t (*add_list)(struct _IBEXStore *store, blockid_t *head, blockid_t *tail, GArray *data); blockid_t (*remove)(struct _IBEXStore *store, blockid_t *head, blockid_t *tail, nameid_t data); void (*free)(struct _IBEXStore *store, blockid_t head, blockid_t tail); gboolean (*find)(struct _IBEXStore *store, blockid_t head, blockid_t tail, nameid_t data); GArray *(*get)(struct _IBEXStore *store, blockid_t head, blockid_t tail); }; #endif 4/cgit/gsoc2013-evolution/log/composer?h=GTKHTML_1_0_4&id=582fc0c4cfc52958b98bf7ccd03fcb28bc89fe91&showmsg=1'>Expand)AuthorAgeFilesLines * (Fix Bug #1083: Composer IDLs not getting installed)Jason Leach2001-01-132-0/+9 * Oops. Make sure to attach the item to the menu ;-)Jeffrey Stedfast2001-01-132-0/+6 * Call set_from_account which means we no longer have to do all the crapJeffrey Stedfast2001-01-135-69/+168 * Update .cvsignoreMiguel de Icaza2001-01-121-0/+1 * Small moniker updateMiguel de Icaza2001-01-121-1/+1 * Only attach to "changed" if the widget is an EEntry. The HEADER_COMBOBOXMiguel de Icaza2001-01-125-59/+31 * Only set the popdown strings if we have anything to popdown.Miguel de Icaza2001-01-122-2/+8 * Add an ItemContainer Bonobo interface to allow client applications toMiguel de Icaza2001-01-124-3/+86 * New callback to save draft. Fixes bug #1045.Jeffrey Stedfast2001-01-112-0/+19 * Removed more UNSAFE stuff. Maybe we should kill this macro, and haveMiguel de Icaza2001-01-102-10/+16 * Updated for new config code - this time it works!Jeffrey Stedfast2001-01-092-11/+18 * Reverted back to old config code temporarily until I get the new configJeffrey Stedfast2001-01-092-13/+17 * reenabled magic indentationRadek Doulik2001-01-081-2/+2 * Updated to reflect changes to the mail-config API.Jeffrey Stedfast2001-01-082-11/+18 * disable indenting for now, it crashes editorRadek Doulik2001-01-062-2/+7 * If the headers have changed, then continue with the prompt else justJeffrey Stedfast2001-01-044-17/+44 * Use header_content_type_simple, not header_content_type_format.Dan Winship2001-01-033-5/+10 * Call e_utf8_to_gtk_string on the combobox strings.Dan Winship2001-01-022-2/+9 * Use CamelContentType instead of GMimeContentField.Dan Winship2000-12-294-23/+28 * New function to get whether or not to encrypt the message.Jeffrey Stedfast2000-12-163-3/+116 * Made it so that carriage return doesn't insert a newline in the subjectChristopher James Lahey2000-12-152-0/+6 * Don't convert the utf-8 string to a gtkstring because the widget expectsJeffrey Stedfast2000-12-133-10/+13 * Add $(IDLS). (From campd.)Dan Winship2000-12-132-0/+5 * psstRadek Doulik2000-12-081-4/+4 * added warnings (prepare_engine): updated toRadek Doulik2000-12-086-68/+81 * Use camel to construct the list of recipients rather than justJeffrey Stedfast2000-12-062-0/+33 * return NULL if we can't create a view.Michael Meeks2000-12-053-5/+5 * debug printfRadek Doulik2000-11-221-0/+3 * Big patch. Evolution-services rewrite, services updated for new system,Iain Holmes2000-11-222-26/+65 * update namespaceRadek Doulik2000-11-162-1/+3 * updates for HTMLEditor API changesRadek Doulik2000-11-165-54/+60 * e_msg_composer_guess_mime_type renamed and movedRadek Doulik2000-11-154-5/+35 * rename command to runCommandRadek Doulik2000-11-142-5/+7 * updated to HTMLEditor API changesRadek Doulik2000-11-143-5/+11 * extracted function, does reply indentation, use updated editor engine apiRadek Doulik2000-11-142-5/+24 * Clear the rdate and exrule lists from the component if we are setting aFederico Mena Quintero2000-11-131-3/+3 * A very, long, very tedious IDL API rename and re-scoping;Michael Meeks2000-11-116-44/+51 * set the HTML charset to utf-8 for all the html message parts.Larry Ewing2000-11-112-10/+26 * (get_signature): added in_html arg, it tells if we should use HTMLRadek Doulik2000-11-093-23/+44 * new function (destroy): use e_msg_composer_clear_inlined_table, destroyRadek Doulik2000-11-088-87/+149 * Changed for message api changes. Use camel_address_unformat to convert theNot Zed2000-11-072-78/+46 * looks like I missed this the last time.Larry Ewing2000-11-071-0/+8 * Two segfault fixesPeter Williams2000-11-072-2/+7 * set the content type on the plain part of outgoing messages.Larry Ewing2000-11-071-6/+36 * Added #include <config.h> s/_HAVE_CONFIG_H/HAVE_CONFIG_H for working i18n.Kjartan Maraas2000-11-073-1/+8 * fix test for regular file to !S_ISREG (statbuf.st_mode)Radek Doulik2000-11-042-1/+4 * use inline images hash tableRadek Doulik2000-11-0410-85/+126 * oops, return NULL not voidJeffrey Stedfast2000-11-041-2/+2 * Don't allow attaching anything but regular files.Jeffrey Stedfast2000-11-042-15/+25 * Clean the idl-generated files properly.Federico Mena Quintero2000-11-042-0/+7 * The big api rename ...Michael Meeks2000-11-022-8/+8 * Don't create the To, Cc, and Bcc lists based only on the address, use bothJeffrey Stedfast2000-11-022-9/+33 * Fix the CTE kludge, calculate the best mime transfer encoding for the mimeJeffrey Stedfast2000-11-022-15/+65 * modified or added a bunch of .cvsignore to ignore generated files, whichGediminas Paulauskas2000-11-011-0/+4 * better reply editing, uses new HTMLEditor::Engine,Listener interfacesRadek Doulik2000-11-018-15/+386 * builddir != srcdir fun.Ettore Perazzoli2000-10-282-1/+6 * Fixed my not-quite-right logic so that we don't accidently set the bodyJeffrey Stedfast2000-10-282-25/+89 * Populate the composer with any attachments.Jeffrey Stedfast2000-10-262-122/+187 * Summary is back in :DIain Holmes2000-10-262-0/+8 * Attach send/postpone signal handlers to the EMsgComposer.Dan Winship2000-10-263-2/+21 * lots of i18n fixesDan Winship2000-10-243-5/+8 * Old cruft. Remove.Dan Winship2000-10-2410-1584/+12 * Include Composer.h instead of volution-Addressbook-SelectNames.hAriel Rios2000-10-242-1/+6 * No, don't ignore Evolution-Addressbook-SelectNames*. They're not supposedDan Winship2000-10-232-4/+5 * Pull the fix to the "attach-twice-and-crash" problem up to HEAD.Ettore Perazzoli2000-10-232-41/+15 * Ignore Evolution-Addressbook-SelectNames*Jeffrey Stedfast2000-10-212-0/+8 * oops. save first, then commitDan Winship2000-10-211-2/+3 * Evolution::Composer interface. So entirely not tested.Dan Winship2000-10-218-92/+499 * Build fixes from Jacob, same as the other branch.Ettore Perazzoli2000-10-202-2/+11 * kill. (create_toolbar): die. (setup_ui): impl. (e_msg_composer_construct):Michael Meeks2000-10-194-203/+96 * Don't need the ID anymore.Iain Holmes2000-10-182-9/+6 * If the body text was NULL, then don't bother turning it into HTMLJeffrey Stedfast2000-10-182-10/+17 * Move a bunch of CPPFLAGS defs into INCLUDES so they doesn't overrideDan Winship2000-10-162-3/+6 * If the entry widget is NULL, obviously we can't set any text on it.Jeffrey Stedfast2000-10-152-12/+7 * Only allow one select-names dialog for each composer.Iain Holmes2000-10-142-2/+17 * stop using format_text, gtkhtml handles this now. (format_text): functionLarry Ewing2000-10-132-84/+18 * Handle missing icons better.Iain Holmes2000-10-113-3/+29 * check to make sure we get a valid response from when calling get_text andLarry Ewing2000-10-111-2/+14 * If the body of the message has 8-bit chars, set theJeffrey Stedfast2000-10-032-16/+33 * fix #include of gnome-canvas-pixbuf.hDan Winship2000-10-032-1/+5 * If the description of an attachment is a blank string, revert toIain Holmes2000-10-024-4/+74 * The big eye-candy commit.Iain Holmes2000-10-019-42/+3042 * Check to see if the body has 8bit chars, if so - set theJeffrey Stedfast2000-09-292-1/+26 * fix typo in tooltip. fix accelerator for "Save as" to be different fromDan Winship2000-09-263-2/+9 * Updated to handle FIFO streams.Jeffrey Stedfast2000-09-252-31/+23 * Don't g_error out if the html-editor-control fails. (create_composer): NewDan Winship2000-09-193-64/+70 * Use gnome_vfs_get_file_info.Dan Winship2000-09-193-12/+36 * Added check for gnome-app-lib. Removed directories that have been moved toChristopher James Lahey2000-09-187-7/+18 * The Commit from hell that breaks all UI related stuff;Michael Meeks2000-09-143-9/+15 * add a make sure the attachment isn't NULL. A more complete fix comingLarry Ewing2000-09-132-0/+7 * Thou shalt add a space after `-I' when invoking `orbit-idl'.Ettore Perazzoli2000-09-132-1/+5 * Fix the accelerator for the "Format" menu so that it doesn't conflictEttore Perazzoli2000-09-062-1/+7 * Applied Jesse's patch that sets the composer's sig_fileJeffrey Stedfast2000-09-042-25/+32 * A bit more e_utf8 wrappers here and thereLauris Kaplinski2000-09-022-3/+11 * This needs to return a const char * and not a char *, because we're notJeffrey Stedfast2000-09-024-66/+86 * This needs to return a const char * and not a char *, because we're notJeffrey Stedfast2000-09-023-2/+8 * Always request to import the HTML version if at all possible so that weJeffrey Stedfast2000-08-293-5/+9 * Set the "From" address in the CamelMimeMessage. Also updated to useJeffrey Stedfast2000-08-294-45/+74 * More UTF-8 handlingLauris Kaplinski2000-08-254-20/+62 * Fix GDK_THREADS_entering and leaving, hopefully once and for all. Genericify ...Peter Williams2000-08-252-0/+6 * many fixes to make it compile with strange prefixes...Mathieu Lacage2000-08-211-1/+3 * kill using_oaf assertion.Michael Meeks2000-08-122-1/+5 * Check nrow, not srow.JP Rosevear2000-08-122-3/+6 * Remove unneeded e-setup.h includeDan Winship2000-08-112-1/+4 * Made asyncJeffrey Stedfast2000-08-112-57/+86 * Workaround Zucchi's new append_messagePeter Williams2000-08-112-4/+40 * Merge with camel-async.Peter Williams2000-08-114-13/+15 * Return the text in GtkCombo->entryJeffrey Stedfast2000-08-102-1/+6 * Fixed the GList identity stuff, should now display all configuredJeffrey Stedfast2000-08-102-9/+11 * Fixed some warnings.Christopher James Lahey2000-08-104-18/+35 * Modified to allow dropdown entry-boxes as well (for headers like From:)Jeffrey Stedfast2000-08-104-32/+153 * Fix build by allowing includes for e-table dirJP Rosevear2000-08-082-0/+6 * s/strcasecmp/g_strcasecmpJeffrey Stedfast2000-08-082-2/+5 * s/strncasecmp/g_strncasecmp - this will help later with building onJeffrey Stedfast2000-08-082-6/+11 * Added code to set the body text based on the CamelMimeMessage.Jeffrey Stedfast2000-08-072-23/+38 * Prompt the user to save their composition in Drafts. (set_editor_text):Jeffrey Stedfast2000-08-073-12/+149 * Constify paramJP Rosevear2000-08-023-4/+12 * Typo fixPeter Williams2000-08-012-1/+6 * Fix changelog email address.JP Rosevear2000-07-291-1/+1 * New function to create composer with sig file set.JP Rosevear2000-07-293-10/+84 * add textual exception printout. (set_editor_text): close pre tags & checkMichael Meeks2000-07-262-3/+14 * Update the insert text file command. Still waiting on GtkHtml.Peter Williams2000-07-252-41/+45 * Remove GOAD support. (create_editor): Try to give a more helpful errorDan Winship2000-07-252-5/+7 * Add a "Send HTML mail" toggle in the message composer.Ettore Perazzoli2000-07-233-73/+172 * Change the message composer to use BonoboUIHandler directly instead ofEttore Perazzoli2000-07-232-178/+182 * Fix bug #345: Command to show/hide attachments in the composerPeter Williams2000-07-132-4/+190 * Make the wm close button in the message composer work the same asEttore Perazzoli2000-07-112-14/+45 * Don't load "" into the editor, because it will cause the editor componentDan Winship2000-07-102-1/+9 * Removed the extra frame here.Christopher James Lahey2000-07-092-14/+5 * Create an empty "Edit" menu for the editor control to insert itself into.Dan Winship2000-07-092-0/+10 * Ignore dynamically created source filesJeffrey Stedfast2000-07-092-0/+9 * Added code for initializing the values of the fields in the messageEttore Perazzoli2000-07-083-20/+67 * Use the new controls implemented in the addressbook in the messageEttore Perazzoli2000-07-083-25/+216 * changed "Exit" to "Close" in the File menuJeffrey Stedfast2000-07-012-11/+7 * Changed "Exit" to "Close" in the File menu. This is a little moreJeffrey Stedfast2000-06-302-9/+9 * Calculate height including if clip_height is set to -1.Christopher James Lahey2000-06-272-1/+7 * Implement "Save"/"Save As...".Ettore Perazzoli2000-06-272-10/+81 * I18N the message composer's title bar. Don't install header files.Ettore Perazzoli2000-06-178-67/+408 * keep the GtkFileSelection around between calls so we start up in the sameDan Winship2000-06-142-15/+29 * Don't line-wrap lines that start with ">".Dan Winship2000-06-142-2/+8 * implemented a temp hack for the imap fetch by uid codeJeffrey Stedfast2000-06-131-18/+8 * If a paragraph starts with TABs, indent the whole paragraph to that tabDan Winship2000-06-132-12/+33 * Make the message composer use a EScrollFrame for the attachment barEttore Perazzoli2000-06-133-17/+26 * Don't break on non-breaking spaces, don't keep non-breaking spaces thatDan Winship2000-06-132-5/+26 * New convenience function.Dan Winship2000-06-069-408/+301 * Added the ability to save plain text mail.Christopher James Lahey2000-06-032-25/+79 * add a "format" argument so we can fetch different kinds of text.Dan Winship2000-05-302-27/+86 * #include <errno.h>Dan Winship2000-05-292-0/+5 * Fix 'make dist' errors.Ross Golder2000-05-281-1/+3 * routine to read the user's signature file. (set_editor_text): If the userDan Winship2000-05-262-1/+75 * Update for CamelMultipart changes.Dan Winship2000-05-262-0/+4 * Update for PersistStream changesDan Winship2000-05-262-2/+7 * Use camel_data_wrapper_new instead of camel_simple_data_wrapper_new.Not Zed2000-05-262-1/+6 * Use camel_simple_data_wrapper_new rather than camel_data_wrapper_new.Dan Winship2000-05-182-1/+6 * Saved translatable strings. Added files to POTFILES.in.Valek Frob2000-05-135-2/+41 * NUL-terminate the data extracted from the BonoboStream.Dan Winship2000-05-132-1/+10 * deal with Content-Transfer-Encoding a little bit at least.Dan Winship2000-05-112-2/+16 * make it really work with oaf. I need to recompile everyhting now.. shitMathieu Lacage2000-05-081-1/+1 * uhMathieu Lacage2000-05-081-1/+1 * make the composer work with oafMathieu Lacage2000-05-082-3/+14 * unref content, etc. after attaching it to message.Dan Winship2000-05-083-0/+13 * Turned off focus in the To, Cc, and Bcc buttons.Christopher James Lahey2000-05-072-0/+6 * Set G_LOG_DOMAIN in following files.Matthew Loper2000-05-032-1/+6 * update for Camel recipient changes. (Just to make it build, not to takeDan Winship2000-04-292-2/+10 * New routine, to process mailto URLs.Dan Winship2000-04-283-0/+131 * Oops. Fix previous commit so we don't get a mime part nested directlyDan Winship2000-04-271-5/+15 * Only generate a multipart message if there are attachments. OtherwiseDan Winship2000-04-272-9/+15 * Remove. We weren't using the fields that made this different fromDan Winship2000-04-274-15/+16 * Update for camel_mime_part_set_content.Dan Winship2000-04-273-25/+27 * add a s/SIMPLE_// that notzed missed remove a now-unused variableDan Winship2000-04-263-2/+7 * Use camel_mime_part_set_text() to set the text rather than messing withNotZed2000-04-263-9/+15 * fix menu problem in composer windowRadek Doulik2000-04-262-7/+10 * build libcomposer static and don't install it.Dan Winship2000-04-243-10/+33 * new function to make the composer record additional headers it shouldDan Winship2000-04-233-1/+56 * Connect "Exit" menu item finally.Dan Winship2000-04-222-1/+22 * new functionsDan Winship2000-04-227-9/+99 * new functions to get and set the contents of the HTML editor viaDan Winship2000-04-212-4/+84 * Remove the "session" field from CamelMimeMessage. Nothing uses it, aboutDan Winship2000-04-182-1/+6 * Get the menubar to work.Bertrand Guiheneuf2000-03-172-2/+7 * Modified to make the composer into a library, to be used by the mailMatthew Loper2000-03-132-12/+19 * Further work.Ettore Perazzoli2000-03-082-9/+23 * Bonobization of the message composer, part 1.Ettore Perazzoli2000-03-025-35/+187 * Don't use libglade for menus and toolbars in the message composerEttore Perazzoli2000-03-025-679/+17 * New header with the typedefs for all camel classes. Now the class headersDan Winship2000-02-191-0/+1 * misc autoconf/automake fixes.Bertrand Guiheneuf2000-02-111-1/+1 * more cvs shutup.Mathieu Lacage2000-01-251-0/+1 * remove non updated tests from the build process.bertrand2000-01-132-1/+8 * Work with builddir != srcdirElliot Lee2000-01-071-0/+2 * Make `make distcheck' work.Ettore Perazzoli1999-11-171-0/+1 * More work:Ettore Perazzoli1999-11-17